Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168759
Image: ubuntu2004

This function tests local conditions. The inputs are: a number field A, a finite place p, a uniformizer u for p, an element a of A, and a prime integer l. The output is a list of two booleans: the first is true when a is Mordell-Weil, and the second is true when a is transverse.

def local_conditions(A, p, u, a, l): F=A.residue_field(p) vp=a.valuation(p) b=F(a/u^vp) unramified=(vp%l==0) transverse=(b.nth_root(l, all=True)!=[]) return [unramified, transverse]

One random example.

A.<i>=NumberField(x^2+1); A
Number Field in i with defining polynomial x^2 + 1
p=A.ideal(3*i+8); p
Fractional ideal (3*i + 8)
F=A.residue_field(p); F
Residue field of Fractional ideal (3*i + 8)
a=A(18); a
18
u=A.uniformizer(p); u
i + 27
local_conditions(A, p, u, a, 3)
[True, False]
LJ.<u>=NumberField( x^8 - 1134*x^4 - 18225*x^2 - 107163 )
LJ
Number Field in u with defining polynomial x^8 - 1134*x^4 - 18225*x^2 - 107163
a = 1/3402*(-78194096813332063817*u^7 - 226120053042379143270*u^6 + 370356230483142417591*u^5 + 3146670160662562282161*u^4 + 91124428396873011166719*u^3 + 228045575974541486007357*u^2 + 921614535402170900230413*u + 684196453833522406049448)
a.norm().factor()
-1 * 7^6 * 11^27
proof.number_field(False)
LJ.ideal(11).factor()[0]
(Fractional ideal (4/1701*u^7 - 1/54*u^6 + 10/81*u^5 - 41/54*u^4 + 37/18*u^3 - 55/6*u^2 + 149/14*u - 73/2), 1)
P11=LJ.ideal(11).factor()[0][0]
local_conditions(LJ, P11, 11, a, 3)
[True, True]