Karim Belabas on Fri, 17 Jun 2005 18:39:09 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: Galois test |
* Igor Schein [2005-06-17 17:47]: > 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)] ) > > 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) 1) This returns the wrong answer if the Galois group is not weakly super solvable (it's OK in degree < 36, then...). 2) Why do you need #Set(gal) instead of #gal ? Karim. -- Karim Belabas Tel: (+33) (0)1 69 15 57 48 Dep. de Mathematiques, Bat. 425 Fax: (+33) (0)1 69 15 60 19 Universite Paris-Sud http://www.math.u-psud.fr/~belabas/ F-91405 Orsay (France) http://pari.math.u-bordeaux.fr/ [PARI/GP]