Можете ли вы объяснить это поведение Mathematica $Assumptions?

Рассмотрим следующие три строки кода Mathematica и обратите внимание, что строки ввода 1 и 3 являются точно такими же (это самый маленький фрагмент кода, который я нашел, чтобы продемонстрировать это поведение).

>> Integrate[Exp[-a^2] Sin[2 p] ((a^2 + b^2) + b*Cos[p] + a*Sin[p]), {p, 0, 2 \[Pi]}]
0

>> $Assumptions = {t > 0};
>> Integrate[Exp[-a^2] Sin[2 p] ((a^2 + b^2) + b*Cos[p] + a*Sin[p]), {p, 0, 2 \[Pi]}]

8/3 Sqrt[a^2+b^2] E^-a^2

Заметим, что интеграл должен давать 0, как в первом ответе Mathematica. Предположение, которое я вхожу, не имеет ничего общего с интеграцией. Является ли это ошибкой (я использую Mathematica 8.0)?

Даже незнакомец, если я разбиваю интеграл на сумму 2 или 3 интеграла, каждый из них дает 0. То же самое, если я беру части из интеграла, которые не зависят от р.

Для меня это похоже на ошибку, но если есть что-то, чего я не хватает, сообщите мне.

Ответ 1

В Mathematica 7.0.1 результат равен 0, а в 8.0.4 получаем

8/3 Sqrt[a^2+b^2] E^-a^2

Таким образом, это должно быть ошибкой, тем более, что это ошибка. К счастью, легко проверить результат без компьютера, но в случае более сложного интеграла это будет серьезной проблемой.

Ответ 2

Это, кажется, было решено. В версии 9.0 обе дают результаты 0.