Re: writting an expression

• To: mathgroup at smc.vnet.net
• Subject: [mg75320] Re: [mg75291] writting an expression
• From: Daniel Lichtblau <danl at wolfram.com>
• Date: Wed, 25 Apr 2007 05:34:01 -0400 (EDT)
• References: <200704240722.DAA27356@smc.vnet.net>

dimitris wrote:
> Hello.
>
> I have the expression
>
> In[193]:=
> ee = 1/(1 + o^4);
>
> and I want to write in the form
>
> Out[194]=
> (-Sqrt[2] + o)/(2*Sqrt[2]*(-1 + Sqrt[2]*o - o^2)) + (Sqrt[2] + o)/
> (2*Sqrt[2]*(1 + Sqrt[2]*o + o^2))
>
> Currently I can think something like
>
> In[237]:=
> 1 + o^4 == (a + b*o + o^2)*(c + d*o + o^2) + O[o]^5
> LogicalExpand[%]
> ({ToRules[#1]} & )[(Reduce[#1, {a, b, c, d}] & )[Reduce[% && a < b,
> Reals]]]
> Apart[1/((a + b*o + o^2)*(c + d*o + o^2) /. %[[1]])]
>
> Out[237]=
> 1 + o^4 == SeriesData[o, 0, {a*c, b*c + a*d, a + c + b*d, b + d, 1},
> 0, 5, 1]
>
> Out[238]=
> -1 + a*c == 0 && b + d == 0 && b*c + a*d == 0 && a + c + b*d == 0
>
> Out[239]=
> {{a -> 1, b -> Sqrt[2], c -> 1, d -> -Sqrt[2]}}
>
> Out[240]=
> (-Sqrt[2] + o)/(2*Sqrt[2]*(-1 + Sqrt[2]*o - o^2)) + (Sqrt[2] + o)/
> (2*Sqrt[2]*(1 + Sqrt[2]*o + o^2))
>
> Any other ideas?
>
> Thanks.
> Dimitris
>

Factor denominator over Q[Sqrt[2]], then do Apart of 1/result.

In[42]:= InputForm[Apart[1/Factor[1+o^4,Extension->Sqrt[2]],o]]

Out[42]//InputForm=
(-Sqrt[2] + o)/(2*Sqrt[2]*(-1 + Sqrt[2]*o - o^2)) +
(Sqrt[2] + o)/(2*Sqrt[2]*(1 + Sqrt[2]*o + o^2))

Daniel Lichtblau
Wolfram Research

• Prev by Date: Re: Outputting to file with fixed decimal digits
• Next by Date: Re: strange behavior of Integrate
• Previous by thread: writting an expression
• Next by thread: FourierTransform and removable singularities