DeRhamComputation/sage/drafty/draft2.sage

44 lines
1.1 KiB
Python
Raw Normal View History

p = 3
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^7)
f2 = superelliptic_function(C_super, x^4)
AS = as_cover(C_super, [f1, f2], prec=1000)
print(AS.uniformizer())
def rep_jumps(AS, threshold = 30):
ile = 1
i = 1
result = []
flag = 0
while(flag == 0):
if len(AS.at_most_poles(i, threshold = threshold)) > ile:
ile = len(AS.at_most_poles(i, threshold = threshold))
result += [i]
if i%p != 0:
flag = 1
i+=1
return result
#print(rep_jumps(AS, threshold = 30))
def uniformizer(AS, threshold = 30):
p = AS.characteristic
n = AS.height
variable_names = 'x, y'
for i in range(n):
variable_names += ', z' + str(i)
Rxyz = PolynomialRing(F, n+2, variable_names)
x, y = Rxyz.gens()[:2]
z = Rxyz.gens()[2:]
zmag = AS.magical_element()[0]
v_x = as_function(AS, x).expansion_at_infty().valuation()
dprim = AS.exponent_of_different_prim()
d, a, b = xgcd(v_x, -dprim)
return as_function(AS, x^a*zmag.function^b)