p = 5 m = 2 F = GF(p) Rx. = 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) B = C.crystalline_cohomology_basis(prec = 100, info = 1) B1 = C1.crystalline_cohomology_basis(prec = 500, 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 #M = crystalline_matrix(C, prec = 150) #print(M) #print(M^3)