Bill Allombert on Wed, 22 Jan 2020 10:53:52 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: Fastest way to determine whether a simple extension is Galois, starting from a polynomial |
On Tue, Jan 21, 2020 at 08:32:49PM +0100, Ricardo Buring wrote: > Dear pari-users, > > I notice that running e.g. > > length(nfgaloisconj(x^29 - 10*x + 13)) == 29 > > is much faster than > > length(nfgaloisconj(nfinit(x^29 - 10*x + 13))) == 29 > > Are both of these valid ways to discover that Q[x]/(x^29 - 10*x + 13) > is not Galois? And do these two tests give the same result general? > The documentation of nfgaloisconj only states that passing a > polynomial is allowed; does it also mean that the answer to both > questions is yes? > > I am asking because SageMath uses the latter (slower) test for degrees >= 13. I want to add that this method is not optimal. What one should do instead is -- call numberofconjugates(pol, 2) to get an upperbound on the number of automorphisms -- If the upperbound is < deg(pol) return "not Galois" -- otherwise check it is actually Galois with nfgaloisconj. What length(nfgaloisconj(pol)) do is: -- call numberofconjugates(pol, 2) to get an upperbound on the number of automorphisms -- If the upperbound is == 1 return "not Galois" -- otherwise compute the exact number of automorphisms. which is much slower when the upperbound is > 1 but < degpol. Cheers, Bill