Many functions, usuallly those involving integration, take a GenerateConditions
option which often defaults to False
, or at least it does for Expectation
and and the Fourier transform related functions.
In what situations should the default be changed? What are the pros and cons?
-
3$\begingroup$ Ther is some info in the article here. sigsam.org/bulletin/articles/175/lichtblau.pdf $\endgroup$– Daniel LichtblauCommented Apr 20, 2014 at 19:22
-
1$\begingroup$ See also mathematica.stackexchange.com/a/13458 $\endgroup$– Michael E2Commented Jul 2, 2014 at 17:50
1 Answer
The False
setting can be useful when one wants an integral that is classically divergent. Or when one wants a result without provisos. A downside is greater chance of an incorrect result. A True
setting is thus useful for the opposite, e.g. avoidance of finite results for divergent integrals. It can also be useful for more careful checking in multivariate integration, since the default Automatic
setting only behaves as True
for the final integration.
--- edit ---
Many functions, notably transforms such as FourierTransform
, work with generalized functions. The first approach to them involves table lookup. If that fails, a next attempt might use the classical definition via definite integral. Since many of these do not classically converge, Integrate
will (by default) be called with GenerateConditions -> False
.
In a better world, singular integrals with finite interpretations would be handled with an option different from the one that determines whether or not to issue provisos. Maybe some day...
--- end edit ---
-
1$\begingroup$ According to the documentation, the default setting is False rather than Automatic for most of the functions I have looked at. Any idea why that might be? $\endgroup$ Commented Apr 21, 2014 at 1:17
-
$\begingroup$ Re
False
default setting, see edit $\endgroup$ Commented Apr 21, 2014 at 14:35