Having worked out that the Galois group of $$p(a)=a^{4} \left(16 t^{4} + 16 t^{2}\right) - 64 a^{3} t^{3} + a^{2} \left(- 8 t^{4} + 24 t^{2}\right) + 16 a t + t^{4} + 5 t^{2} - 4$$ over $\mathbb Q[t=\tan\pi/14]$ is $D_4$ with $8$ elements, and knowing that $t$'s minimal polynomial $7t^6-35t^4+21t^2-1$ has cyclic ($C_6$) Galois group, I want to compute the Galois group of $$q(a)=16777216 a^{24} - 50331648 a^{22} + 10485760 a^{20} - 380633088 a^{18} + 2575761408 a^{16} - 6611664896 a^{14} + 8637038592 a^{12} - 5108785152 a^{10} + 1280876288 a^{8} - 162842368 a^{6} + 19536544 a^{4} - 1857904 a^{2} + 1849$$ over $\mathbb Q$; note that $q$ splits into six quartic factors over $\mathbb Q[t]$ and one of the factors is $p$ (the others, of course, can be obtained by replacing $t$ by an algebraic conjugate).
$\operatorname{Gal}_{\mathbb Q}(q)$ is too big for GAP to compute directly, but since I have an explicit formula for all $24$ roots of $q$: $$t\text{ any root of }7t^6-35t^4+21t^2-1\qquad u=\pm\sqrt{-21t^4+98t^2+71}$$ $$z_1=\pm2\sqrt{14(31t^5u-20t^4-154t^3u+104t^2+87tu-68)}\qquad z_2=7t(t^2-3)^2-4u$$ $$a=\frac{z_1+z_2}{64}$$ it seemed a simple matter to compute the group from how each change of $t,u,z_1$ – corresponding to the actions generating the group – permutes the roots. ($z\mapsto\frac72z^5-\frac{35}2z^3+10z$ acts like $C_6$ on the roots of $7t^6-35t^4+21t^2-1$.)
#!/usr/bin/env python3
from mpmath import *
def getroot(i, action=None):
with extradps(20):
n, n1 = divmod(i, 6)
n3, n2 = divmod(n, 2)
t = polyroots([7, 0, -35, 0, 21, 0, -1])[n1]
if action == "t":
t = polyval([7/2, 0, -35/2, 0, 10, 0], t)
u = sqrt(polyval([-21, 98, 71], tt)) (2n2-1)
if action == "u":
u = -u
z1 = 2sqrt(14polyval([31u, -20, -154u, 104, 87u, -68], t)) * (2n3-1)
if action == "z1":
z1 = -z1
z2 = 7t(tt-3)*2 - 4u
return (z1 + z2) / 64
roots = {i: [getroot(i)] for i in range(24)}
for i in roots:
for action in ("t", "u", "z1"):
rua = getroot(i, action) # "root under action"
maproot = min(range(24), key=lambda j: abs(rua-roots[j][0]))
roots[i].append(maproot)
for (k, v) in roots.items():
print(k, v[0], v[1:])
for a in range(1, 4):
mid = ", ".join(str(roots[i][a]+1) for i in range(24))
print(f"a{a} := PermList([ {mid} ]);")
print("G := Group(a1, a2, a3);\nIdGroup(G);")
Like in my linked answer, the last lines of this program's output are the input to another programming language, this time GAP. The output of the GAP code is $[24,15]$, corresponding to $C_6×C_2^2$ or 24T3. But this is not what I expected; since $D_4$ has order $8$ and $C_6$ has order $6$, I was expecting the Galois group to have order $8×6=48$, not $24$ as obtained here. From this I have two related questions:
- Is my code producing the right answer? If it is, how can $\operatorname{Gal}_{\mathbb Q[t]}(p)$ be of order $8$ yet $\operatorname{Gal}_{\mathbb Q}(q)$ be of order only $24$?
- In any case, is it possible to adapt my code to find the Galois group of $$q_1(a)=68719476736 a^{36} - 532575944704 a^{34} + 1975684956160 a^{32} - 4512936886272 a^{30} + 7013413158912 a^{28} - 8394446471168 a^{26} + 8723128909824 a^{24} - 7969139851264 a^{22} + 6247085506560 a^{20} - 4187786313728 a^{18} + 2514551767040 a^{16} - 1412168695808 a^{14} + 697307058176 a^{12} - 259585758208 a^{10} + 65704151296 a^{8} - 10689048384 a^{6} + 1029214816 a^{4} - 48560176 a^{2} + 790321$$ over $\mathbb Q$, knowing that $q'$ splits over $\mathbb Q[t=\tan\pi/7]$ into six sextic factors, one of which is $$p_1(a)=256 a^{6} + a^{5} \left(16 t^{5} - 320 t^{3} + 304 t\right) + a^{4} \left(- 16 t^{2} - 144\right) + a^{3} \left(- 32 t^{5} + 656 t^{3} - 912 t\right) + a^{2} \left(- 4 t^{4} + 112 t^{2} - 188\right) + a \left(7 t^{5} - 136 t^{3} + 57 t\right) - t^{4} + 13 t^{2} + 14$$ with $p_1$'s Galois group over $\mathbb Q[t]$ being $S_6$? ($p'$ is the original polynomial I asked about in my question.) If not, how else can I find the group?
p := a^4*(16*t^4 + 16*t^2) - 64*a^3*t^3 + a^2*(-8*t^4 + 24*t^2) + 16*a*t + t^4 + 5*t^2 - 4;
q := 16777216*a^24 - 50331648*a^22 + 10485760*a^20 - 380633088*a^18 + 2575761408*a^16 - 6611664896*a^14 + 8637038592*a^12 - 5108785152*a^10 + 1280876288*a^8 - 162842368*a^6 + 19536544*a^4 - 1857904*a^2 + 1849;
p1 := 256*a^6 + a^5*(16*t^5 - 320*t^3 + 304*t) + a^4*(-16*t^2 - 144) + a^3*(-32*t^5 + 656*t^3 - 912*t) + a^2*(-4*t^4 + 112*t^2 - 188) + a*(7*t^5 - 136*t^3 + 57*t) - t^4 + 13*t^2 + 14;
q1 := 68719476736*a^36 - 532575944704*a^34 + 1975684956160*a^32 - 4512936886272*a^30 + 7013413158912*a^28 - 8394446471168*a^26 + 8723128909824*a^24 - 7969139851264*a^22 + 6247085506560*a^20 - 4187786313728*a^18 + 2514551767040*a^16 - 1412168695808*a^14 + 697307058176*a^12 - 259585758208*a^10 + 65704151296*a^8 - 10689048384*a^6 + 1029214816*a^4 - 48560176*a^2 + 790321;