14 lines
1.4 KiB
Python
14 lines
1.4 KiB
Python
|
p = 3
|
||
|
F = GF(3)
|
||
|
Rx.<x> = PolynomialRing(F)
|
||
|
C = superelliptic((x^3 - x)^3 + x^3 - x, 2)
|
||
|
Fxy, Rxy, x, y = C.fct_field
|
||
|
om = ((C.x^28 - C.x^26 + C.x^25 - C.x^24 + C.x^23 - C.x^22 - C.x^21 + C.x^20 + C.x^19 + C.x^18 + C.x^17 + C.x^15 - C.x^14 + C.x^13 + C.x^12 + C.x^11 - C.x^10 - C.x^8 - C.x^7 + C.x^6 - C.x^5 + C.x^4 + C.x^2 + C.x - C.one)/(C.x^16*C.y - C.x^15*C.y + C.x^14*C.y - C.x^13*C.y + C.x^12*C.y - C.x^11*C.y + C.x^10*C.y - C.x^9*C.y - C.x^8*C.y + C.x^7*C.y - C.x^6*C.y + C.x^5*C.y - C.x^4*C.y + C.x^3*C.y - C.x^2*C.y + C.x*C.y))*C.dx
|
||
|
om1, A = decomposition_omega8_hpdh(om)
|
||
|
print(om1.is_regular_on_Uinfty() and om.cartier() == om1.cartier() + A.diffn())
|
||
|
ff = ((2*C.x^74 + C.x^73 + C.x^71 + 2*C.x^70 + 2*C.x^65 + C.x^64 + C.x^62 + 2*C.x^61 + 2*C.x^56 + C.x^55 + C.x^53 + 2*C.x^52 + C.x^50 + 2*C.x^49 + 2*C.x^47 + C.x^46 + C.x^44 + 2*C.x^43 + 2*C.x^38 + C.x^37 + C.x^32 + 2*C.x^31 + 2*C.x^29 + C.x^28 + C.x^26 + 2*C.x^25 + C.x^23 + 2*C.x^22 + 2*C.x^17 + C.x^16 + C.x^14 + 2*C.x^13 + 2*C.x^8 + C.x^7 + C.x^5 + 2*C.x^4 + 2*C.x^2 + C.x)/(C.x^35 + 2*C.x^34 + 2*C.x^32 + C.x^31 + C.x^27 + 2*C.x^25 + 2*C.x^24 + C.x^22 + C.x^19 + C.x^16 + C.x^13 + 2*C.x^11 + 2*C.x^10 + C.x^8 + C.x^4 + 2*C.x^3 + 2*C.x + C.one))*C.y
|
||
|
ff1, ff2 = decomposition_g0_p2th_power(ff)
|
||
|
print(ff == ff1 + ff2^(p^2), ff1.function in Rxy)
|
||
|
om = ((C.x^18 - C.x^10 - C.x^9 + C.x)/C.y) * C.dx
|
||
|
om1, h = decomposition_omega0_hpdh(om)
|
||
|
print(om.cartier() == om1.cartier() + h.diffn(), om1.is_regular_on_U0())
|