SageMath curve from Weierstrass normal form cubic over finite field

207 Views Asked by At

I have a cubic equation that I think represents a valid Weierstrass normal form in SageMath.

K = GF(19)
cubic = z*y^2 - 4*x^3 - 11*z^2*x - 5*z^3
R.<x,y,z> = K[]
f = EllipticCurve_from_cubic(cubic, [0,9,1], morphism = True)
f
Scheme morphism:
  From: Projective Plane Curve over Finite Field of size 19 defined by -4*x^3 + y^2*z + 8*x*z^2 - 5*z^3
  To:   Elliptic Curve defined by y^2 = x^3 + 6*x + 4 over Finite Field of size 19
  Defn: Defined on coordinates by sending (x : y : z) to
        (-x : y : -5*z)

I need to use this Weierstrass normal form for some specific reasons, so I can't just use the other normal form. My question is I noticed that some points don't map like the coordinate definition of the description says they do. For example

f([0,1,2])
(0 : 17 : 1)

Why is this happening?

1

There are 1 best solutions below

0
On

So my friend helped me figure it out! He pointed out that the point is being mapped to affine space and then mapped back as [a,b,1].

For example in this case, 2 should be mapped to -10. So now we have (0, 1,-10) which we want to convert to affine space. So we want (0/-10, 1/-10, 1) over the finite field of 19 elements. Notice that $17*-10 = -170 \equiv 1 \text{ mod 19 }$. So their map works out!