Re: Re: simplification

• To: mathgroup at smc.vnet.net
• Subject: [mg121947] Re: Re: simplification
• From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
• Date: Fri, 7 Oct 2011 04:46:08 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <j6e693\$kef\$1@smc.vnet.net> <201110050801.EAA07025@smc.vnet.net>

```On 5 Oct 2011, at 10:01, Peter Pein wrote:

> Am 04.10.2011 07:40, schrieb dimitris:
>> Hello.
>>
>> Let
>>
>> o1 = 1 + Sqrt[15 + 2*Sqrt[35] + 2*Sqrt[6*(6 + Sqrt[35])]];
>> o2 = 1 + Sqrt[3] + Sqrt[5] + Sqrt[7];
>>
>> o1 is equal to o2.
>>
>> o1 == o2 // FullSimplify
>> True
>>
>> The question is how to make Mathematica to simplify o1 to o2.
>>
>> Thanks
>> Dimitris
>>
>
> With a lot of luck:
>
> In[1]:= o1 = 1 + Sqrt[15 + 2*Sqrt[35] + 2*Sqrt[6*(6 + Sqrt[35])]];
>  ext = Block[{x, poly = RootReduce[o1][[1]]},
>   Sqrt[Cases[Union @@ Divisors[Abs[CoefficientList[poly[x], x]]],
>     1 | _?PrimeQ, 1]]]
>  o2 = ((Rest[#1] / First[#1]) . ext & )[
>        FindIntegerNullVector[Prepend[ext, -o1]]]
>
> Out[3]= {1, Sqrt[2], Sqrt[3], Sqrt[5], Sqrt[7], Sqrt[19], Sqrt[31]}
>
> Out[4]= 1 + Sqrt[3] + Sqrt[5] + Sqrt[7]
>
> :-)
>

Neat, but from the Mathematical point of view the question was posed
"the wrong way round" in that o1 is mathematically "simpler" than 1 +
Sqrt[3] + Sqrt[5] + Sqrt[7], since it is already expressed in terms of
its minimal polynomial. Hence this is the "natural" or "easy" way to go:

ToRadicals[RootReduce[1 + Sqrt[3] + Sqrt[5] + Sqrt[7]]]

1 + Sqrt[15 + 2*Sqrt[35] + 2*Sqrt[6*(6 + Sqrt[35])]]

in other words, the algebraic "simplification" in this case is exactly
the opposite of, what might be called, the visual one.

There is no natural or unique way to "decompose" algebraic numbers that
are already reduced into sums etc, of "simpler" summands or factors etc.
Of course, if we already know an integer basis for an algebraic number
field containing an algebraic number, than there are ways of expressing
it in terms of this basis - and this method is an example.

Andrzej Kozlowski

```

• Prev by Date: Re: Table NDSolve Plot
• Next by Date: Re: Table NDSolve Plot
• Previous by thread: Re: Re: simplification
• Next by thread: Re: Re: simplification