intersection-multiplicity.sage 351 B

123456789101112131415161718
  1. # Calculate intersection multiplicity of a point in sage
  2. q = 47
  3. K = GF(q)
  4. E = EllipticCurve(K, (0, 5))
  5. Q = E(10, 26)
  6. C = E.defining_polynomial()
  7. R.<x, y, z> = PolynomialRing(K)
  8. f = y - Q[1] * z
  9. P.<x,y,z> = ProjectiveSpace(K, 2)
  10. X = P.subscheme([C(x, y, z)])
  11. Y = P.subscheme([f(x, y, z)])
  12. Q = X([Q[0], Q[1]])
  13. print(Q.intersection_multiplicity(Y))