p = 5 m = 2 F = GF(p) Rxx. = PolynomialRing(F) #f = (x^3 - x)^3 + x^3 - x f = x^3 + x f1 = f(x = x^5 - x) C = superelliptic(f, m) #C1 = superelliptic(f1, m, prec = 500) B = C.crystalline_cohomology_basis(prec = 100, info = 1) #B1 = C1.crystalline_cohomology_basis(prec = 100, info = 1) def crystalline_matrix(C, prec = 50): B = C.crystalline_cohomology_basis(prec = prec) g = C.genus() p = C.characteristic Zp2 = Integers(p^2) M = matrix(Zp2, 2*g, 2*g) for i, b in enumerate(B): M[i, :] = vector(autom(b).coordinates(basis = B)) return M for b in B: print(b.regular_form()) #for b in B1: # print(b.regular_form()) #M = crystalline_matrix(C, prec = 150) #print(M) #print(M^3)