Re: a suprising result from Integrate (Null appeared in the result!)
- To: mathgroup at smc.vnet.net
- Subject: [mg74518] Re: a suprising result from Integrate (Null appeared in the result!)
- From: dh <dh at metrohm.ch>
- Date: Fri, 23 Mar 2007 19:18:07 -0500 (EST)
- Organization: hispeed.ch
- References: <ett79b$hhh$1@smc.vnet.net>
Hallo Dimitri,
Wolfram seems to have a problem here and should take note.
The code for indefinite integrals seems to have a programming bug as the
following shows:
Integrate[(1 - Sin[x])^(1/4),x] gives:
-4*(1 - Sin[x])^(1/4) - (4*Null*Sqrt[1 - Sin[x]])/
(Cos[x/2] - Sin[x/2])
Note that the term with Null is actually a constant, therefore, it would
not harm if the Null were not there. But the rest is not an antiderivative.
Daniel
dimitris wrote:
> Hello to all.
>
> I discover (I think) a serious bug in Integrate.
>
> The results are (at least!) surprisingly so I checked many times
> before
> I post anything!
>
> Quit
>
> $Version
> 5.2 for Microsoft Windows (June 20, 2005)
>
> Consider the integral
>
> f = HoldForm[Integrate[(1 - Sin[x])^(y/4), {x, 0, 4}]]
>
> Then
>
> ReleaseHold[f /. y -> 1]
> 4 + Null*(-4 - (4*Sqrt[1 - Sin[4]])/(Cos[2] - Sin[2])) - 4*(1 -
> Sin[4])^(1/4)
>
> I believe you noticed immediately the appearance of Null!
>
> Information[Null]
>
> "Null is a symbol used to indicate the absence of an expression or a
> result. When it appears as an output expression, no output is
> printed."
> Attributes[Null] = {Protected}
>
> Note also
>
> DeleteCases[4 + Null*(-4 - (4*Sqrt[1 - Sin[4]])/(Cos[2] - Sin[2])) -
> 4*(1 - Sin[4])^(1/4), Null, Infinity]
> N[%]
> ReleaseHold[f /. y -> 1 /. Integrate[x___] :> NIntegrate[x,
> MaxRecursion -> 12]]
>
> -4*(1 - Sin[4])^(1/4) - (4*Sqrt[1 - Sin[4]])/(Cos[2] - Sin[2])
> -0.6051176113064889
> 3.0908946898699625
>
> Note also that Null appears also for other values of y
>
> (ReleaseHold[f /. y -> #1] & ) /@ Range[2, 5]
> {-2 + 4*Sqrt[2] + (2*(Cos[2] + Sin[2])*Sqrt[1 - Sin[4]])/(Cos[2] -
> Sin[2]),
> (2/3)*(-2 + (2*2^(1/4)*Pi^(3/2))/Gamma[3/4]^2 -
> 2^(3/4)*Hypergeometric2F1[1/2, 3/4, 3/2, -1] +
> (Cos[4]*(2^(1/4)*Hypergeometric2F1[1/2, 3/4, 3/2, Cos[2 - Pi/4]^2]
> + 2*(1 - Sin[4])^(1/4)))/Sqrt[1 - Sin[4]]), 3 + Cos[4],
> (4*((Cos[2] - Sin[2])*(5 + (-6 + Cos[4])*(1 - Sin[4])^(1/4)) -
> 6*Null*(Cos[2] - Sin[2] + Sqrt[1 - Sin[4]])))/
> (5*(Cos[2] - Sin[2]))}
>
> It appears for y=5 and when it appears the result is wrong
>
> DeleteCases[%, Null, Infinity]
> N[%]
>
> {-2 + 4*Sqrt[2] + (2*(Cos[2] + Sin[2])*Sqrt[1 - Sin[4]])/(Cos[2] -
> Sin[2]),
> (2/3)*(-2 + (2*2^(1/4)*Pi^(3/2))/Gamma[3/4]^2 -
> 2^(3/4)*Hypergeometric2F1[1/2, 3/4, 3/2, -1] +
> (Cos[4]*(2^(1/4)*Hypergeometric2F1[1/2, 3/4, 3/2, Cos[2 - Pi/4]^2]
> + 2*(1 - Sin[4])^(1/4)))/Sqrt[1 - Sin[4]]), 3 + Cos[4],
> (4*((Cos[2] - Sin[2])*(5 + (-6 + Cos[4])*(1 - Sin[4])^(1/4)) -
> 6*(Cos[2] - Sin[2] + Sqrt[1 - Sin[4]])))/(5*(Cos[2] - Sin[2]))}
> {2.670553068935302, 2.454058460511143, 2.346356379136388,
> -2.128162283559219}
>
> (ReleaseHold[f /. y -> #1 /. Integrate[x___] :> NIntegrate[x,
> MaxRecursion -> 12]] & ) /@ Range[2, 5]
> {2.6705535326036554, 2.4540619799501173, 2.3463563791363886,
> 2.3070526406806264}
>
> So Null took the place of something?
>
> BTW, Here are plots of the integrands
>
> (Plot[(1 - Sin[x])^(#1/4), {x, 0, 4}] & ) /@ Range[5]
>
> Even the following setting does not fix the situation
>
> Integrate[(1 - Sin[x])^(1/4), {x, 0, Pi/2, 4}]
> 4 + Null*(-4 - (4*Sqrt[1 - Sin[4]])/(Cos[2] - Sin[2])) - 4*(1 -
> Sin[4])^(1/4)
>
> The next is funnier!
>
> Integrate[(1 - Sin[x])^(1/4), {x, 0, 1, Pi/2, 2, 4}]
> Simplify[%]
>
> Null*(-4 + (4*Sqrt[1 - Sin[1]])/(Cos[1/2] - Sin[1/2])) +
> 4*(1 + Null - (1 - Sin[1])^(1/4) - (Null*Sqrt[1 - Sin[1]])/(Cos[1/2]
> - Sin[1/2])) + 4*(1 - Sin[1])^(1/4) +
> Null*(-4 - (4*Sqrt[1 - Sin[2]])/(Cos[1] - Sin[1])) - 4*(1 -
> Sin[2])^(1/4) +
> 4*((1 - Sin[2])^(1/4) + (Null*Sqrt[1 - Sin[2]])/(Cos[1] - Sin[1]) -
> (1 - Sin[4])^(1/4) -
> (Null*Sqrt[1 - Sin[4]])/(Cos[2] - Sin[2]))
> -((4*((Cos[2] - Sin[2])*(-1 + (1 - Sin[4])^(1/4)) + Null*(Cos[2] -
> Sin[2] + Sqrt[1 - Sin[4]])))/(Cos[2] - Sin[2]))
>
> What about indefinite integrals?
>
> Integrate[(1 - Sin[x])^(1/4), x]
> -4*(1 - Sin[x])^(1/4) - (4*Null*Sqrt[1 - Sin[x]])/(Cos[x/2] - Sin[x/
> 2])
>
> Integrate[(1 - Sin[x])^(1/5), x]
> -5*(1 - Sin[x])^(1/5) - (4*Null*Sqrt[1 - Sin[x]])/(Cos[x/2] - Sin[x/
> 2])
>
> Trying also the setting
>
> (Integrate[(1 - Sin[x])^(1/4), {x, #1[[1]], #1[[2]]}] & ) /@
> Partition[{0, Pi/2, 4}, 2, 1]
> {4, Null*(-4 - (4*Sqrt[1 - Sin[4]])/(Cos[2] - Sin[2])) - 4*(1 -
> Sin[4])^(1/4)}
>
> Of course you can get for Mathematica the correct answer by working as
> follows
>
> Integrate[(1 - Sin[x])^a, {x, 0, 4}, Assumptions -> a > 0]
> % /. a -> 1/4
> N[%]
>
> 2^a*(-2*Hypergeometric2F1[1/2, 1 + a, 3/2, -1] +
> (2*Pi^(3/2)*Sec[a*Pi])/(Gamma[1/2 - a]*Gamma[1 + a]) +
> Cos[4]*Hypergeometric2F1[1/2, 1/2 - a, 3/2, Cos[2 - Pi/4]^2]*Sqrt[2/
> (1 - Sin[4])])
> 2^(1/4)*((2*Sqrt[2]*Pi^(3/2))/(Gamma[1/4]*Gamma[5/4]) -
> 2*Hypergeometric2F1[1/2, 5/4, 3/2, -1] +
> Cos[4]*Hypergeometric2F1[1/2, 1/4, 3/2, Cos[2 - Pi/4]^2]*Sqrt[2/(1
> - Sin[4])])
> 3.0908948436614616
>
> But I believe the appearance of Null is a matter of headache for the
> developers!
>
> Dimitris
>
>