Ask Your Question

Frobenius Endomorphism of Finite field Elliptic curve for elements

asked 2021-06-23 10:28:11 +0200

Planet Macro gravatar image

updated 2021-06-23 10:28:57 +0200

Suppose I have a elliptic curve over some finite field of characteristic $q$ and a point on that curve. How can I apply the FRobenius endomorphism $P= (x,y) \to (x^q, y^q) $ to that point.

For example:

sage: G.<x> = GF(7^2)
sage: TestCurve = EllipticCurve (G ,[4 ,1])
sage: P = TestCurve(5*x,6*x)

Now I was expecting something like


But I can not find the proper function.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2024-02-05 14:06:30 +0200

yx7 gravatar image

Starting from Sage 9.8, you can simply write .frobenius_endomorphism() to construct the Frobenius endomorphism (over the .base_field() of the curve) as a "normal" isogeny which can be evaluated, composed, and so on.

With the variables from your example:

sage: pi = TestCurve.frobenius_endomorphism()
sage: pi(P)
(5*x : 6*x : 1)
edit flag offensive delete link more

answered 2021-06-23 10:50:51 +0200

slelievre gravatar image

Indeed the point P has no such method.

But its coordinates do.

Construct a new point whose coordinates are obtained from those of P by applying the frobenius to them:

sage: Q = TestCurve([a.frobenius() for a in P])
sage: Q
(2*x + 5 : x + 6 : 1)
edit flag offensive delete link more


Thanks. Sounds like a doable workaround. Is this a case for filing a bug report? As this is expected behavior

Planet Macro gravatar imagePlanet Macro ( 2021-06-23 10:53:13 +0200 )edit

Sure, why not open a ticket on the Sage Trac server.

Something like "Add frobenius method to EllipticCurvePoint_finite_field".

slelievre gravatar imageslelievre ( 2021-06-23 12:25:54 +0200 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2021-06-23 10:28:11 +0200

Seen: 333 times

Last updated: Feb 05