[GAP Forum] computing with square roots

Bill Allombert Bill.Allombert at math.u-bordeaux1.fr
Sat Jan 14 16:35:30 GMT 2012


On Fri, Jan 13, 2012 at 05:04:09PM +0800, Asst. Prof. Dmitrii (Dima) Pasechnik wrote:
> Dear all,
> 
> I need to compute with matrices involving Sqrt(2+Sqrt).
> However, GAP does not know how to deal with these.
> gap> a:=Sqrt(Sqrt(2)+2);
> Error, no method found! For debugging hints type ?Recovery from NoMethodFound
> ...
> Is there a good workaround?

You can use the identity:

Sqrt(Sqrt(2)+2) = E(16)^7-E(16)

which you can check in gap:
gap> (E(16)^7-E(16))^2 = 2+Sqrt(2);
true

You can use Alnuth to find such identity:

gap> x:=Indeterminate(Rationals,"x");;
gap> G:=FieldByPolynomial(x^8+1);
<algebraic extension over the Rationals of degree 8>
gap> FactorsPolynomialAlgExt( G, (x^2-2)^2-2 );
[ x_1+(-a^5+a^3), x_1+(a^5-a^3), x_1+(-a^7+a), x_1+(a^7-a) ]

So up to conjugacy, by taking x_1=E(16) and a = Sqrt(Sqrt(2)+2),
you get four solutions.

Cheers,
Bill.



More information about the Forum mailing list