

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer

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?

share|improve this question
Ther is some info in the article here. – Daniel Lichtblau Apr 20 '14 at 19:22
See also – Michael E2 Jul 2 '14 at 17:50
up vote 12 down vote accepted

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 ---

share|improve this answer
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? – Daniel Mahler Apr 21 '14 at 1:17
Re False default setting, see edit – Daniel Lichtblau Apr 21 '14 at 14:35

Your Answer


