Pull to refresh

Comments 21

Спасибо. Я тоже хотел ответить на ту статью, но поленился.
Хорошим примером могут служит корни алгебраических уравнений.
Есть несколько методов отделения корней и их уточнения. Так вот, если посчитать в корне значение полинома, то для полинома 20 степени значение в корне может быть 10^12 или даже выше.
А ларчик открывается просто. При операциях с плавающей точкой (по европейски или по русски с запятой) операция сложения коммутативна, но не ассоциативна. Ассоциативность гораздо более сильно свойство, чем коммутативность.
Т.е. может быть так (a + b )+ c ≠ a + (b + c)
Действительно, операции с плавающей точкой не являются ассоциативными. Однако, если принять, что каждое число x представлено в вычислительной технике интервалом [x(1-ε), x(1+ε)], где ε — машинная точность (10-16 для двойной точности), то формально ассоциативность возвращается. Например, Wolfram Mathematica, когда работает с плавающей запятой произвольной точности, отслеживает число верных знаков. Но такая оценка, как правило, сильно огрублена. Например, метод Ньютона, после десятка итераций может не содержать ни одного верного знака (формально с точки зрения WM).
GMP работает, Reduce работает, Maxima работает, Maple работает и еще с десяток работает. Но ассоциативность не возвращается. Вы писали про интервальные вычисления, но там нужны специальные алгоритмы, в лоб не получится. Это дефект математического образования в России. Вместо того, чтобы специалистам по вычислительной математики читать алгебру в них пихают матанализ. Извините за резкость.
UFO just landed and posted this here
Просто приведите пример. Полугрупп полно. Пример?
Мультипликативная группа невырожденных матриц?
Множество квадратных невырожденных матриц одного порядка с вещественными элементами образует группу относительно умножения. Эта группа коммутативной уже не является.
Но есть ассоциативность. Приведите пример чтобы была коммутативность, но не было ассоциативности.
А. Ну группу/полугруппу я вам просто по определению такую привести не смогу, но не вижу проблемы в том, чтобы сочинить коммутативную неассоциативную операцию. Взять хотя бы m * n = (m + n) max {m, n}.
Вы утверждали, что «Ассоциативность гораздо более сильно свойство, чем коммутативность». Вам привели пример, когда ассоциативность есть, а коммутативности нет. Теперь вы требуете противоположный пример. Сами себе противоречите.

Среднее арифметическое коммутативно, но не ассоциативно.
Хорошее дополнение к моему топику. То, что мной было упущено из виду или просто опущено, здесь раскрыто.
Кстати, обращение матриц можно также делать с использованием теоремы Гамильтона-Кэли.
Что вообще такое матричная экспонента и кому она нужна

Матричная экспонента возникает при рассмотрении задачи Коши для линейной системы обыкновенных дифференциальных уравнений с постоянными коэффициентами:

Неужели Вы всерьёз думаете, что этим предложением реально закрыли вопрос, вынесенный в заголовок? Прямо б написали, «Это такая штука, которая зачем-то нужна программирующим математикам, уже знающим что такое задача Коши, линейная система дифференциальных уравнений, что такое необыкновенные дифференциальные уравнения и чем они отличаются от обыкновенных, но не очень понимающим, что такое накопление ошибки округления в операциях с числами, хранящимися в ЭВМ в формате с плавающей запятой».
Есть жесткие системы (и в этом они необыкновенны) или будем уподобляться филологам, которые говорят что не по русски написано «некорректные задачи» или «теория катастроф». Есть термины и их названия оправданы. Автор по любому прав, поскольку тема важная и неоднозначная. Из математика можно сделать программиста, а вот наоборот я случаев не знаю.
Вы ответили вообще не в тему (
Если вы не знаете, что такое задача Коши, восполнить эти пробелы в предисловии к топику всё равно не удастся. Но есть на Хабре люди, которые знают, вот эти детали для них.
То есть, Вам действительно было интересно, что это такое (название раздела удачно), и предложенный автором ответ Вам действительно всё прямо объяснил (ответ сформулирован адекватно и недоумения не вызвает)?
Ну, я знал, что это такое и зачем, и предложенный автором ответ меня вполне устроил, я бы и сам дал такой же (опять-таки, нет смысла писать подробнее: люди, знакомые с диффурами, всё поняли, незнакомые — и не поймут). Сама статья показалась мне очень интересной и качественной. Особенно интересно было узнать реальное положение дел в свете низкопробной статьи на эту тему, которая была несколькими днями ранее.
вот, знал.
так я и знал. нерепрезентативен.

Извиняюсь, что не очень в тему... Ищу удобное выражение для представления вектора вида
y = [exp(0 j x), exp(1 j x), ..., exp(N j x)].
Матричная экспонента определяется обычно не как поэлементная операция. То есть
y ≠ exp(j x)^[0, 1, 2, ..., N].
Может известен, так сказать, элегантный способ записи? Возможно, с использованием вектора натуральных степеней и тензорных операторов?

Если ничего не напутал, то можно записать так:

y=e^{jxA}B,

где A=\mbox{diag}{[0,1,2,\ldots,N]}, B=[1,1,\ldots,1]'.

Вы абсолютно правы, большое спасибо!
Проверил численно в matlab-е:

x = pi/6;
n = [0; 1; 2];
a = exp(1)^(1i * x * diag(n)) * ones(size(n)); % Через матричную экспоненту
b = exp(1i * x * n); % Через поэлементное возведение в степень
a - b % Смотрим разницу

ans =
     0
     0
     0

Безусловно, посмотрю, что из этого получится на практике...

Sign up to leave a comment.

Articles