Igor Schein on Fri, 17 Jun 2005 17:41:54 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Galois test


On Fri, Jun 17, 2005 at 03:38:56PM +0200, Karim Belabas wrote:
> * Ariel Pacetti [2005-06-17 13:56]:
> > Is there a routine for checking wether a number field extension is Galois? 
> > I couldn´t find one, but probably there is some "naive" way to do that 
> > like:
> > 
> > nffactor(nfinit(P),P)
> > 
> > and check wether all the factors have degree one or not. Is there a better 
> > (or faster) way? (like no using nfinit which takes too long if the 
> > polynomial is big enough).
> 
> There's no built-in routine.  You may
> 
> -- check factorisation pattern mod a few primes first, which quickly
>    weeds out (most) non-Galois fields.
> 
> -- use nfroots instead of nffactor (smaller bounds used).
> 
> -- possibly use factornf when you want to skip the 'nfinit' part.
> 
> -- still use nfinit _but_ read
> 
>      http://www.math.u-psud.fr/~belabas/pari/doc/faq.html#nfpartialfact
> 
>    first. In particular the following hack is often helpful:
> 
>         nfinitpartial(P) = nfinit( [P, nfbasis(P,1)] )
> 
> Hope this helps,

I am using the following function:

isgalois(pol, gal) = if(polisirreducible(pol),if(!gal,gal=nfgaloisconj(pol,4));if(#Set(gal)==poldegree(pol),return(1)));return(0)

Igor