 CoCalc Public FilesMCLF / test / keypolys.sagews
Author: Stefan Wewers
Views : 42
Description: Strange error in explicit example
Compute Environment: Ubuntu 18.04 (Deprecated)

We create the number field $K = \QQ[\zeta_3,i]$ and the unique $3$-adic valuation $v_K$ on $K$. We normalize $v_K$ such that $v_K(\pi_K)=1$.

K.<zeta,ii> = NumberField([x^2+x+1,x^2+1])
v_3 = QQ.valuation(3)
vK = 2*v_3.extension(K)  # vK is normalized
piK = vK.uniformizer()
piK
vK(piK)

zeta + 2 1

We create the extension $M_1/K$ by adjoining a $3$rd root of $4=1+3$ and the unique extension $v_{M_1}$ of $v_K$.

R.<x> = K[]
M1.<alpha> = K.extension(x^3-4)
vM1 = vK.extension(M1)
piM1 = vM1.uniformizer()
vM1(piM1)

1/3

We check that $M_1/K$ has ramification jump $1$, which means that $v_{M_1}(\pi_{M_1}-\sigma(\pi_{M_1}))=2/3$.

roots = piM1.minpoly().roots(M1,multiplicities=False)
vM1(roots-roots)
vM1(roots-roots)
vM1(roots-roots)

2/3 2/3 2/3

We create the extension $M/K$ by adjoining a $3$rd root of $1+\pi_K$ and the unique extension $v_M$ of $v_K$.

We check that $M/K$ has ramification jump $2$, which means that $v_M(\pi_M-\tau(\pi_M))=1$.

f = x^3-(1+piK)
M.<alpha1> = K.extension(f)
vM = vK.extension(M)
piM = vM.uniformizer()
vM(piM)

1/3
roots = piM.minpoly().roots(M,multiplicities=False)
vM(roots-roots)
vM(roots-roots)
vM(roots-roots)

1 1 1

We create the extension $L=MM_1/M$ and the unique extension $v_L$ of $v_M$.

L.<beta> = M.extension(x^3-4)
vL = vM.extension(L)
piL = vL.uniformizer()
vL(piL)

1/9

We check that the extension $L/M$ has ramification jump $1$, which means that $v_L(\sigma(\pi_L)-\pi_L)=2/9$.

from sage.geometry.newton_polygon import NewtonPolygon
F = piL.minpoly()(x+piL)
NP = NewtonPolygon([(i,vL(F[i])) for i in range(4)])
NP.slopes(False)
NP.vertices()

[-2/9] [(1, 4/9), (3, 0)]

We check that the extension $L/K$ has ramification jumps $1$ and $4$. This means that (in addition to the calculation in the previous cell) $v_L(\tau(\pi_L)-\pi_L) = 5/9$. To check this, we compute the Newton polygon of $f(x+\pi_L)$, where $f$ is the minimal polynomial of $\pi_L$ over $K$.

f = piL.absolute_minpoly().change_ring(K).factor() # compute the *absolute* minimal polynomial and factor it over K. Choose one  factor.
f(piL)  # check that f is the correct factor
F = f(x+piL)
NP = NewtonPolygon([(i,vL(F[i])) for i in range(10)])
NP.slopes(False)

0 [-5/9, -2/9]

We define the element $\xi= \pi_M+i\cdot\pi_M^2\pi_L^2\in L$. It has valuation $v_L(\xi)=1/3$.

xi = piM+ii*piM^2*piL^2
vL(xi)

1/3

We compute the minimal polynomial $h$ of $\xi$ over $K$.

h = xi.absolute_minpoly().change_ring(K).factor()
h(xi) # check that h is the correct factor

0

We compute the slopes of the Newton polygon of $h(\xi+x)$, which should give the two values $v_L(\sigma(\xi)-\xi)$ and $v_L(\tau(\xi)-\xi)$.

F = h(x+xi)
NP = NewtonPolygon([(i,vL(F[i])) for i in range(10)])
NP.slopes(False)
NP.vertices()

[-1] [(1, 8), (9, 0)]
roots = h.roots(L,multiplicities=False)
len(roots)
[vL(roots-roots[i]) for i in range(9)]

9 [+Infinity, 1, 1, 1, 1, 1, 1, 1, 1]



So, indeed, the roots of $h$ are equidistant. We now find the inductive description of the valuation $v$ corresponding to the smallest closed discoid containing all the roots of $h$. In particular, $v(h)=9$.



v_2 = vK.mac_lane_approximants(h)
v_2

[ Gauss valuation induced by 2 * 3-adic valuation, v(x) = 1/3, v(x^3 + ((3*ii + 6)*zeta + 3*ii + 6)*x^2 + (6*zeta + 6)*x + 2*zeta + 4) = 26/9 ]
v = v_2.augmentation(h, 9)
v

[ Gauss valuation induced by 2 * 3-adic valuation, v(x) = 1/3, v(x^3 + ((3*ii + 6)*zeta + 3*ii + 6)*x^2 + (6*zeta + 6)*x + 2*zeta + 4) = 26/9, v(x^9 + (74602670811792/3512479453921*ii*zeta + 146986584778983/3512479453921*ii - 18)*x^8 + ((-1222485266930784/3512479453921*ii - 4008186705411751344596199936/12337511914217166362274241)*zeta - 2557856643579120/3512479453921*ii - 964597146359375724085346292/12337511914217166362274241)*x^7 + ((-21583298674312903018973205448573812418944/43335257111193343900365036083324748961*ii + 71719289159882035280184405789/12337511914217166362274241)*zeta + 273824864118563533833252260482968200143572/43335257111193343900365036083324748961*ii + 43049777314608595284840071247/12337511914217166362274241)*x^6 + ((1705352989934099596738405413442366201406418/43335257111193343900365036083324748961*ii - 1225968286958867252774624274003320181932508/43335257111193343900365036083324748961)*zeta - 1196505810197375269482325978716962855898810/43335257111193343900365036083324748961*ii - 1147153372683541514766635380728115120032006/43335257111193343900365036083324748961)*x^5 + ((-11928490296651303171673786573971897643001940/43335257111193343900365036083324748961*ii - 1854761985118034365823143199659123546079367/43335257111193343900365036083324748961)*zeta + 2491733677171895696235393815215943774812230/43335257111193343900365036083324748961*ii + 2664337064789362976442801515047708464278175/43335257111193343900365036083324748961)*x^4 + ((32040266800632365447338743594500379468557076/43335257111193343900365036083324748961*ii + 34980109525673272202253315061246446899535975/43335257111193343900365036083324748961)*zeta - 4369276508883843456080979560040077865194292/43335257111193343900365036083324748961*ii + 7383399832555383620416670802245096344860732/43335257111193343900365036083324748961)*x^3 + ((-22478848747486807782641038124155003319901957/43335257111193343900365036083324748961*ii - 113589465707005692375468274592162219742579903/43335257111193343900365036083324748961)*zeta + 18378184432679757733572537139534812833805732/43335257111193343900365036083324748961*ii - 52436384011971244056800117557923480424365255/43335257111193343900365036083324748961)*x^2 + ((-40222932846171372341535168224480352480220458/43335257111193343900365036083324748961*ii + 135812887152645474910221339921134204672546427/43335257111193343900365036083324748961)*zeta - 47375643405570773544668000986580882342882826/43335257111193343900365036083324748961*ii + 99445203029101904779168036802713697007629517/43335257111193343900365036083324748961)*x + (52565441391170988315281193378144505924561815/43335257111193343900365036083324748961*ii - 33972292363890387895228582376360723971923921/43335257111193343900365036083324748961)*zeta + 41243915434968400554917375560900055419255659/43335257111193343900365036083324748961*ii - 61479708860330861057788774767469482819700920/43335257111193343900365036083324748961) = 9 ]

As expected, $v$ is of the form $v=[v_0,v_1(x)=1/3, v_2(phi_2)=26/9, v(h)=9]$.

We check that the minimal polynomial of $\pi_M$ cannot take the role of $\phi_2$.

g = piM.minpoly()
g
v(g)

x^3 - 6*x^2 + 12*x - zeta - 11 8/3
g = v_2.phi()
g
v(g)

x^3 + ((3*ii + 6)*zeta + 3*ii + 6)*x^2 + (6*zeta + 6)*x + 2*zeta + 4 26/9
G = g(x+xi)
NP = NewtonPolygon([(i,vL(G[i])) for i in range(4)])
NP.slopes(False)
NP.vertices()

[-26/27] [(0, 26/9), (3, 0)]