Generic and Non-Generic Cases
This gives a result for the integral of
that is valid for almost all values of
For the special case of
, however, the correct result is different.
The overall goal of symbolic computation is typically to get formulas that are valid for many possible values of the variables that appear in them. It is however often not practical to try to get formulas that are valid for absolutely every possible value of each variable.
is equal to 0, however, then the true result is not 0.
This construct treats both cases, but would be quite unwieldy to use.
If Mathematica did not automatically replace by 0, then few symbolic computations would get very far. But you should realize that the practical necessity of making such replacements can cause misleading results to be obtained when exceptional values of parameters are used.
The basic operations of Mathematica are nevertheless carefully set up so that whenever possible the results obtained will be valid for almost all values of each variable.
is not automatically replaced by
If it were, then the result here would be
, which is incorrect.
This makes the assumption that
is a positive real variable, and does the replacement.