przed dodaniem ekspansji w dowolnym punkcie
This commit is contained in:
parent
7e8546b2c3
commit
b79484be4f
File diff suppressed because one or more lines are too long
@ -15,14 +15,14 @@ class as_form:
|
|||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "(" + str(self.form)+") * dx"
|
return "(" + str(self.form)+") * dx"
|
||||||
|
|
||||||
def expansion_at_infty(self, i = 0):
|
def expansion_at_infty(self, place = 0):
|
||||||
C = self.curve
|
C = self.curve
|
||||||
delta = C.nb_of_pts_at_infty
|
delta = C.nb_of_pts_at_infty
|
||||||
F = C.base_ring
|
F = C.base_ring
|
||||||
x_series = C.x_series[i]
|
x_series = C.x_series[place]
|
||||||
y_series = C.y_series[i]
|
y_series = C.y_series[place]
|
||||||
z_series = C.z_series[i]
|
z_series = C.z_series[place]
|
||||||
dx_series = C.dx_series[i]
|
dx_series = C.dx_series[place]
|
||||||
n = C.height
|
n = C.height
|
||||||
variable_names = 'x, y'
|
variable_names = 'x, y'
|
||||||
for j in range(n):
|
for j in range(n):
|
||||||
@ -98,10 +98,10 @@ class as_form:
|
|||||||
return superelliptic_form(C_super, Qxy(result))
|
return superelliptic_form(C_super, Qxy(result))
|
||||||
|
|
||||||
def residue(self, place=0):
|
def residue(self, place=0):
|
||||||
return self.expansion_at_infty(i = place).residue()
|
return self.expansion_at_infty(place = place).residue()
|
||||||
|
|
||||||
def valuation(self, place=0):
|
def valuation(self, place=0):
|
||||||
return self.expansion_at_infty(i = place).valuation()
|
return self.expansion_at_infty(place = place).valuation()
|
||||||
|
|
||||||
def serre_duality_pairing(self, fct):
|
def serre_duality_pairing(self, fct):
|
||||||
AS = self.curve
|
AS = self.curve
|
||||||
|
@ -5,4 +5,10 @@ Rx.<x> = PolynomialRing(F)
|
|||||||
f = x^3 - x + 1
|
f = x^3 - x + 1
|
||||||
C = superelliptic(f, m)
|
C = superelliptic(f, m)
|
||||||
C1 = patch(C)
|
C1 = patch(C)
|
||||||
print(C1.crystalline_cohomology_basis())
|
#print(C1.crystalline_cohomology_basis())
|
||||||
|
g1 = C1.polynomial
|
||||||
|
g_AS = g1(x^p - x)
|
||||||
|
C2 = superelliptic(g_AS, 2)
|
||||||
|
print(convert_super_into_AS(C2))
|
||||||
|
converted = (C2.x)^4 - (C2.x)^2
|
||||||
|
print(convert_super_fct_into_AS(converted))
|
@ -347,7 +347,8 @@ def de_rham_witt_lift(cech_class, prec = 50):
|
|||||||
aux_h2 = decom_aux_h2[0]
|
aux_h2 = decom_aux_h2[0]
|
||||||
aux_f = decom_aux_h2[2]
|
aux_f = decom_aux_h2[2]
|
||||||
aux_omega0 = decomposition_omega0_omega8(aux.omega, prec=prec)[0]
|
aux_omega0 = decomposition_omega0_omega8(aux.omega, prec=prec)[0]
|
||||||
return superelliptic_drw_cech(omega0_lift + aux_h2.verschiebung().diffn() + aux_omega0.verschiebung(), fct.teichmuller() + aux_f.verschiebung())
|
result = superelliptic_drw_cech(omega0_lift + aux_h2.verschiebung().diffn() + aux_omega0.verschiebung(), fct.teichmuller() + aux_f.verschiebung())
|
||||||
|
return result.reduce()
|
||||||
|
|
||||||
def crystalline_cohomology_basis(self, prec = 50):
|
def crystalline_cohomology_basis(self, prec = 50):
|
||||||
result = []
|
result = []
|
||||||
|
@ -19,10 +19,12 @@ load('auxilliaries/hensel.sage')
|
|||||||
load('auxilliaries/linear_combination_polynomials.sage')
|
load('auxilliaries/linear_combination_polynomials.sage')
|
||||||
##############
|
##############
|
||||||
##############
|
##############
|
||||||
|
load('drafty/convert_superelliptic_into_AS.sage')
|
||||||
load('drafty/second_patch.sage')
|
load('drafty/second_patch.sage')
|
||||||
load('drafty/regular_on_U0.sage')
|
load('drafty/regular_on_U0.sage')
|
||||||
load('drafty/lift_to_de_rham.sage')
|
load('drafty/lift_to_de_rham.sage')
|
||||||
#load('drafty/superelliptic_cohomology_class.sage')
|
#load('drafty/superelliptic_cohomology_class.sage')
|
||||||
load('drafty/superelliptic_drw.sage')
|
load('drafty/superelliptic_drw.sage')
|
||||||
load('drafty/draft.sage')
|
#load('drafty/draft_klein_covers.sage')
|
||||||
|
load('drafty/2gpcovers.sage')
|
||||||
load('drafty/pole_numbers.sage')
|
load('drafty/pole_numbers.sage')
|
@ -140,3 +140,19 @@ class superelliptic_form:
|
|||||||
|
|
||||||
def residue(self, place = 0, prec=30):
|
def residue(self, place = 0, prec=30):
|
||||||
return self.expansion_at_infty(place = place, prec=prec)[-1]
|
return self.expansion_at_infty(place = place, prec=prec)[-1]
|
||||||
|
|
||||||
|
def reduce(self):
|
||||||
|
fct = self.form
|
||||||
|
C = self.curve
|
||||||
|
fct = reduction(C, fct)
|
||||||
|
return superelliptic_form(C, fct)
|
||||||
|
|
||||||
|
def reduce2(self):
|
||||||
|
fct = self.form
|
||||||
|
C = self.curve
|
||||||
|
m = C.exponent
|
||||||
|
F = C.base_ring
|
||||||
|
Rxy.<x, y> = PolynomialRing(F, 2)
|
||||||
|
Fxy = FractionField(Rxy)
|
||||||
|
fct = reduction(C, Fxy(y^m*fct))
|
||||||
|
return superelliptic_form(C, fct/y^m)
|
Loading…
Reference in New Issue
Block a user