macsyma on Sun, 04 Aug 2019 03:54:31 +0200


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

Re: nfgaloisconj


Thank you, Bill.

> Bill Allombert on Sat, 03 Aug 2019 00:44:27 +0200
> I created a git branch 'bill-nfsplitting' that implement this.
> This adds a flag to nfpslitting to also get the embedding:

To compute G the Galois group of a polynomial,
I used nfsplitting, nfisincl after preparing the order of G (by GAP library, etc), 
but this improvement makes the work unnecessary.

Here are some timing data.

? tst(n)=if(Mod(n,8),1,1/2)*eulerphi(n)*n;
? for(n=2,37,printf([n,tst(n)]));
[2,2][3,6][4,8][5,20][6,12][7,42][8,16][9,54][10,40]
[11,110][12,48][13,156][14,84][15,120][16,64][17,272][18,108][19,342][20,160]
[21,252][22,220][23,506][24,96][25,500][26,312][27,486][28,336][29,812][30,240]
[31,930][32,256][33,660][34,544][35,840][36,432][37,1332]

? for(n=2,37,f=x^n-2;nfisincl(f,nfsplitting(f)));
time = 24min, 27,362 ms.

? for(n=2,37,f=x^n-2;nfisincl(f,nfsplitting(f,tst(n))));
time = 15min, 30,959 ms.

? for(n=2,37,nfsplitting(x^n-2,,1));
time = 15min, 45,167 ms.

? for(n=2,37,nfsplitting(x^n-2,tst(n),1));
time = 15min, 46,036 ms.

By the way, nfsplitting(linear,,1) seems to return a polynomial not a list.

> Bill Allombert on Sat, 03 Aug 2019 23:06:23 +0200
> K=matinverseimage(matconcat([Colrev(r,d)|r<-R]),Colrev(x,d));

Thank you for your coefficients method.

To tell the truth, 
the algorithm of G12 was published on my blog (in Japanese) about a month ago.
http://ehito.hatenablog.com/entry/2019/06/23/150150
I posted to this forum to find a better way than this,
with your suggestions some improvements have been made, I am very grateful.

macsyma