Question about Integrate and If
- To: mathgroup at smc.vnet.net
- Subject: [mg46615] Question about Integrate and If
- From: "Antonio González" <SPAMgonferNO at esi.us.es>
- Date: Wed, 25 Feb 2004 13:07:08 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Setting the trivial integral
Integrate[1/x,{x,a,2a}]
I obtain, in Mathematica 4.1 the simple result
-Log[a] + Log[2a]
that upon simplification gives Log[2].
However, If I ask the same integral to Mathematica 5.0,
I obtain
If[a == 0, Log[2], Integrate[1/x, {x, a, 2*a}, Assumptions -> a != 0]]
which is really stupid, as it is saying that if a==0,
the integral (that would be singular in that case) is Log[2],
but if a!=0 (which is the logical assumption) instead of
giving the correct answer lets the question unanswered.
In this case, the answer is trivial, but I have found the
same behavior in more complicated integrals.
The situation is still more complicated if I try to use
assumptions. Making a copy and paste and asking
Integrate[1/x, {x, a, 2*a}, Assumptions -> a != 0]
the result is
If[Im[a] != 0 || Re[a] != 0, Log[2], Integrate[x^(-1), {x, a, 2*a},
Assumptions -> a != 0 && Im[a] == 0 && Re[a] == 0]]
that is even worse, as if I assume that a!=0, it is
obvious that Im[a] != 0 || Re[a] != 0 (how could it be
that a != 0 && Im[a] == 0 && Re[a] == 0 ?)
Can anybody explain this strange behavior? Why does not give
the answer
If[a!= 0, Log[2],Indeterminate]
or something like that?
Antonio