corrected tests; small corrections - algebraic closure
This commit is contained in:
parent
02a78921b3
commit
29118d0783
@ -97,6 +97,7 @@ class as_form:
|
||||
RxyzQ, Rxyz, x, y, z = C.fct_field
|
||||
# We need to have only polynomials to use monomial_coefficients in linear_representation_polynomials,
|
||||
# and sometimes basis elements have denominators. Thus we multiply by them.
|
||||
print([denominator(omega.form) for omega in basis])
|
||||
denom = LCM([denominator(omega.form) for omega in basis])
|
||||
basis = [denom*omega for omega in basis]
|
||||
self_with_no_denominator = denom*self
|
||||
|
@ -1,14 +1,16 @@
|
||||
p = 5
|
||||
m = 2
|
||||
Rx.<x> = PolynomialRing(GF(p))
|
||||
F = GF(p^2, 'a')
|
||||
a = F.gens()[0]
|
||||
Rx.<x> = PolynomialRing(F)
|
||||
f = x^3 + x^2 + 1
|
||||
C_super = superelliptic(f, m)
|
||||
Rxy.<x, y> = PolynomialRing(GF(p), 2)
|
||||
fArS1 = superelliptic_function(C_super, y*x)
|
||||
fArS2 = superelliptic_function(C_super, y*x^2)
|
||||
fArS3 = superelliptic_function(C_super, y)
|
||||
AS1 = as_cover(C_super, [fArS1, fArS2, fArS3], prec=500)
|
||||
AS2 = as_cover(C_super, [fArS2, fArS3, fArS1], prec=500)
|
||||
fArS3 = superelliptic_function(C_super, y + x)
|
||||
AS1 = as_cover(C_super, [fArS1, fArS2, fArS3], prec=150)
|
||||
AS2 = as_cover(C_super, [fArS2, fArS3, fArS1], prec=150)
|
||||
print(AS1.genus() == AS2.genus())
|
||||
##################
|
||||
p = 5
|
||||
@ -19,7 +21,6 @@ C_super = superelliptic(f, m)
|
||||
Rxy.<x, y> = PolynomialRing(GF(p), 2)
|
||||
fArS1 = superelliptic_function(C_super, y*x)
|
||||
fArS2 = superelliptic_function(C_super, y*x^2)
|
||||
fArS3 = superelliptic_function(C_super, y)
|
||||
AS1 = as_cover(C_super, [fArS1, fArS2, fArS3], prec=1000)
|
||||
AS1 = as_cover(C_super, [fArS1, fArS2], prec=1000)
|
||||
omega = as_form(AS1, 1/y)
|
||||
print(omega.expansion_at_infty().valuation() == AS1.exponent_of_different())
|
||||
print(omega.expansion_at_infty().valuation()==AS1.exponent_of_different())
|
@ -1,7 +0,0 @@
|
||||
p = 5
|
||||
F = GF(p).algebraic_closure('t')
|
||||
#F1 = F.algebraic_closure('t')
|
||||
a = F.gen(2)
|
||||
R.<x> = PolynomialRing(F)
|
||||
P1 = superelliptic(x, 1)
|
||||
AS = as_cover(P1, [P1.x^2, a*P1.x^2])
|
@ -27,4 +27,11 @@ load('auxilliaries/hensel.sage')
|
||||
load('auxilliaries/linear_combination_polynomials.sage')
|
||||
load('auxilliaries/laurent_analytic_part.sage')
|
||||
##############
|
||||
##############
|
||||
##############
|
||||
def init(lista, tests = False, init=True):
|
||||
if init:
|
||||
load('init.sage')
|
||||
for i in lista:
|
||||
load('drafty/draft'+str(i)+'.sage')
|
||||
if tests:
|
||||
load('tests.sage')
|
@ -264,8 +264,9 @@ def reduction(C, g):
|
||||
G = coff(g, d)
|
||||
i = floor(d/m)
|
||||
g = g - G*y1^d + Rx(f(x=x1)^i) * y1^(d%m) *G
|
||||
|
||||
return(Fxy(g(x1=x, y1 = y)))
|
||||
x, y = Fxy.gens()
|
||||
h = Fxy(g(x1 = x, y1 = y))
|
||||
return(h)
|
||||
|
||||
def reduction_form(C, g):
|
||||
'''Auxilliary. Given a superelliptic curve C : y^m = f(x) and a polynomial g(x, y)
|
||||
@ -287,8 +288,8 @@ def reduction_form(C, g):
|
||||
g = FxRy(g(x = x1, y=y1))
|
||||
for j in range(0, m):
|
||||
if j==0:
|
||||
G = coff(g, 0)
|
||||
g1 += FxRy(G(x=x1))
|
||||
G = Rx(coff(g, 0))
|
||||
g1 += FxRy(G)
|
||||
else:
|
||||
G = coff(g, j)
|
||||
g1 += y1^(j-m)*FxRy(f(x=x1)*G)
|
||||
|
@ -106,9 +106,7 @@ class superelliptic_form:
|
||||
Rx.<x> = PolynomialRing(F)
|
||||
Fx = FractionField(Rx)
|
||||
FxRy.<y1> = PolynomialRing(Fx, 1)
|
||||
print('a')
|
||||
g = FxRy(g(x = x, y = y1))
|
||||
print('b')
|
||||
if j == 0:
|
||||
return g.monomial_coefficient(y1^(0))/C.polynomial
|
||||
return g.monomial_coefficient(y1^(m-j))
|
||||
|
@ -8,4 +8,8 @@ g = (C.x)^5 * (C.y)^2 + 2*(C.x)^2 * (C.y)^3
|
||||
g = g^p
|
||||
print(g.pth_root()==(C.x)^5 * (C.y)^2 + 2*(C.x)^2 * (C.y)^3)
|
||||
g = C.x
|
||||
print(g.pth_root())
|
||||
try:
|
||||
print(g.pth_root())
|
||||
print("False")
|
||||
except ValueError:
|
||||
print("True")
|
40
tests.sage
40
tests.sage
@ -9,23 +9,23 @@ load('superelliptic/tests/pth_root_test.sage')
|
||||
#load('superelliptic/tests/p_rank_test.sage')
|
||||
print("a-number test:")
|
||||
load('superelliptic/tests/a_number_test.sage')
|
||||
print("as_cover_test:")
|
||||
load('as_covers/tests/as_cover_test.sage')
|
||||
#print("group_action_matrices_test:")
|
||||
#load('as_covers/tests/group_action_matrices_test.sage')
|
||||
#print("dual_element_test:")
|
||||
#load('as_covers/tests/dual_element_test.sage')
|
||||
#print("ith_component_test:")
|
||||
#load('as_covers/tests/ith_component_test.sage')
|
||||
#print("ith ramification group test:")
|
||||
#load('as_covers/tests/ith_ramification_gp_test.sage')
|
||||
#print("uniformizer test:")
|
||||
#load('as_covers/tests/uniformizer_test.sage')
|
||||
#print("ramification jumps test:")
|
||||
#load('as_covers/tests/ramification_jumps_test.sage')
|
||||
#print("diffn_test:")
|
||||
#load('as_covers/tests/diffn_test.sage')
|
||||
#print("Cartier test:")
|
||||
#load('as_covers/tests/cartier_test.sage')
|
||||
#print("Decomposition into g0, g8/ omega0, omega8 test:")
|
||||
#load('superelliptic_drw/tests/decomposition_into_g0_g8_tests.sage')
|
||||
#print("as_cover_test:")
|
||||
#load('as_covers/tests/as_cover_test.sage')
|
||||
print("group_action_matrices_test:")
|
||||
load('as_covers/tests/group_action_matrices_test.sage')
|
||||
print("dual_element_test:")
|
||||
load('as_covers/tests/dual_element_test.sage')
|
||||
print("ith_component_test:")
|
||||
load('as_covers/tests/ith_component_test.sage')
|
||||
print("ith ramification group test:")
|
||||
load('as_covers/tests/ith_ramification_gp_test.sage')
|
||||
print("uniformizer test:")
|
||||
load('as_covers/tests/uniformizer_test.sage')
|
||||
print("ramification jumps test:")
|
||||
load('as_covers/tests/ramification_jumps_test.sage')
|
||||
print("diffn_test:")
|
||||
load('as_covers/tests/diffn_test.sage')
|
||||
print("Cartier test:")
|
||||
load('as_covers/tests/cartier_test.sage')
|
||||
print("Decomposition into g0, g8/ omega0, omega8 test:")
|
||||
load('superelliptic_drw/tests/decomposition_into_g0_g8_tests.sage')
|
Loading…
Reference in New Issue
Block a user