Re: FullSimplify with Pi
- To: mathgroup at smc.vnet.net
- Subject: [mg84146] Re: FullSimplify with Pi
- From: "David W.Cantrell" <DWCantrell at sigmaxi.net>
- Date: Tue, 11 Dec 2007 15:29:19 -0500 (EST)
- References: <200712110320.WAA26066@smc.vnet.net> <fjlrie$9ot$1@smc.vnet.net>
Andrzej Kozlowski <akoz at mimuw.edu.pl> wrote: > On 11 Dec 2007, at 12:20, Uberkermit wrote: > > > Greetings, > > > > I would like to simplify an expression involving Pi. Actually, > > simplifying the expression isn't hard, getting Mathematica to > > recognize the simplification is the hard part. Consider: > > > > Assuming[Element[x, Reals], > > FullSimplify[Log[1/Sqrt[2 Pi] Exp[x]]]] > > > > Mathematica doesn't do anything to simplify this. However, replacing > > the symbol Pi with any other variable in the above leads to the > > trivial substitutions. > > > > By trivial, I mean: > > Log[Exp[x]] = x, and Log[a/b] = Log[a] - Log[b]. > > > > Why does Pi confuse Mathematica so?? > > > > Thanks, > > -Chris > > > > Well, how to put it, everything is the other way round. According to > Mathematica's default ComplexityFunction (which is very close to > LeafCount) the expression that you get when you use Pi is simpler: > > p = Assuming[Element[x, Reals], > FullSimplify[Log[E^x/Sqrt[2*a]]]] > x - Log[a]/2 - Log[2]/2 > > q = Assuming[Element[x, Reals], > Simplify[Log[E^x/Sqrt[2*Pi]]]] > > x - (1/2)*Log[2*Pi] [snip] It seems that neither you nor Carl understood the point Chris was making. Your last output above is what I think Chris _wanted_. Note that he said "Assuming[Element[x, Reals], FullSimplify[Log[1/Sqrt[2 Pi] Exp[x]]]] Mathematica doesn't do anything to simplify this." So I must assume that you and Carl are using version 6 while Chris is using some prior version. In version 5.2, what Chris said is certainly true: In[1]:= Assuming[Element[x, Reals], FullSimplify[Log[(1/Sqrt[2*Pi])*Exp[x]]]] Out[1]= Log[E^x/Sqrt[2*Pi]] that is, virtually no simplification occurred. Contrast that with the simplification obtained in version 5.2 when we use a variable rather than Pi: In[7]:= FullSimplify[Log[(1/Sqrt[2*a])*Exp[x]], Element[x, Reals]] Out[7]= x - Log[2]/2 - Log[a]/2 And from that, we can then get the result which I suppose Chris wanted: In[8]:= % /. a -> Pi Out[8]= x - Log[2]/2 - Log[Pi]/2 In[9]:= FulSimplify[%] Out[9]= x - (1/2)*Log[2*Pi] So there are two morals to this story. 1) There are improvements in version 6. 2) Posters to this newsgroup who are using a previous version should normally give an indication of that in their post. David
- References:
- FullSimplify with Pi
- From: Uberkermit <chris.r.sims@gmail.com>
- FullSimplify with Pi