25 lines
531 B
Python
25 lines
531 B
Python
|
p = 5
|
||
|
m = 1
|
||
|
F = GF(p)
|
||
|
Rx.<x> = PolynomialRing(F)
|
||
|
f = x
|
||
|
C_super = superelliptic(f, m)
|
||
|
|
||
|
Rxy.<x, y> = PolynomialRing(F, 2)
|
||
|
f1 = superelliptic_function(C_super, x^2)
|
||
|
f2 = superelliptic_function(C_super, x^3)
|
||
|
AS = as_cover(C_super, [f1, f2], prec=500)
|
||
|
m = AS.jumps[0]
|
||
|
m1 = m[0]
|
||
|
m2 = m[1]
|
||
|
#We compute jumps from jumps in the tower of two Z/p-covers.
|
||
|
if m1 >= m2:
|
||
|
M1 = m2
|
||
|
M2 = m2 + p*(m1 - m2)
|
||
|
else:
|
||
|
M1 = m1
|
||
|
M2 = m2
|
||
|
|
||
|
theoretical_jumps = [M1, M2]
|
||
|
theoretical_jumps.sort()
|
||
|
print(theoretical_jumps == AS.ramification_jumps())
|