p = 3 m = 2 F = GF(p) Rx. = PolynomialRing(F) f = x^3 - x C = superelliptic(f, m) x = C.x y = C.y dx = C.dx om1 = x^3*y*dx u = (C.one)/x v = y/x^2 print(om1 + u^3*v*u.diffn() - (y/x)^2*(y/x).diffn())