Loading [MathJax]/jax/output/HTML-CSS/jax.js

First time here? Check out the FAQ!

Ask Your Question
0

I have the hyperelliptic curve y^2=x^4+81473/1024*x^2-1. How do I convert this curve to an elliptic curve in a short weierstrass form?

asked 4 years ago

Gamzeee gravatar image

updated 4 years ago

dan_fulea gravatar image

I have the hyperelliptic curve y2=x4+81473/1024x21. How do I convert this curve to an elliptic curve in a short Weierstrass form? Also, how can I convert the point (x,y,z)=(1,i,0) on the y2=x4+81473/1024x2z2z4 curve to the point on the elliptic curve? Thanks.

Preview: (hide)

Comments

The point (1,i,0) does not lie on the curve, though (i,1,0) does; but the equation in x,y,z is not homogeneous, and if you homogenize w.r.t. z then the point is no longer on the curve. So are you sure about this data?

rburing gravatar imagerburing ( 4 years ago )

1 Answer

Sort by » oldest newest most voted
1

answered 4 years ago

dan_fulea gravatar image

In general, to bring an equation of the form: y2=Ax4+Bx3+Cx2+Dx+q2 into the Weierstraß form, the used substitution is given by using: Q=2q ,X=(Q(y+q)+Dx)1x2 ,Y=(Q2(y+q)+Q(Cx2+Dx)D2x2/Q)1x3 . Backwards:x=(Q(X+c)D2/Q)1Y ,y=q+x(xXD)/Q . Note that it is needed to have a square as the free coefficient in the quartic Ax4+Bx3+Cx2+Dx+q2 on the RHS of the equation we start with.

Reference: [Ian Conell, Elliptic Curves Hanbook, page 105, Quartic to Weierstrass] .

In our case, the free coefficient is 1, so we really need to pass to the Gaussian field Q(i). The following code gives the transformation:

sage: F.<j> = QuadraticField(-1)                                                                                              
sage: R.<X,Y> = PolynomialRing(F)                                                                                             
sage: A, B, C, D, q = 1, 0, 81473/1024, 0, j                                                                                  
sage: Q = 2*q                                                                                                                 
sage: x = (Q*(X+C) - D^2/Q) / Y                                                                                               
sage: y = -q + x*(x*X - D) / Q                                                                                                
sage: factor( y^2 - (A*x^4 + B*x^3 + C*x^2 + D*x + q^2) )                                                                     
(-4) * Y^-4 * (X + 81473/1024)^3 * (X^3 + 81473/1024*X^2 - Y^2 + 4*X + 81473/256)

So the given quartic is birationally (there are some other factors...) equivalent to Y2=X3+81473/1024X2+4X+81473/256 . So we obtain an elliptic curve with the following minimal model:

sage: E = EllipticCurve( QQ, [ 0, 81473/1024, 0, 4, 81473/256 ] )                                                             
sage: EM = E.minimal_model()                                                                                                  
sage: EM                                                                                                                      
Elliptic Curve defined by y^2 + x*y + y = x^3 + x^2 - 138026392*x + 629434426201 over Rational Field
sage: EM.discriminant().factor()                                                                                              
-1 * 2^16 * 46229^2 * 143677^2

Alternative blind code to obtain the above curve is as follows:

sage: R.<x,y> = QQ[]                                                                                                          
sage: C = Curve( -y^2 + x^4 + 81473/1024*x^2 - 1 )                                                                            
sage: JC = Jacobian(C)                                                                                                        
sage: JCM = JC.minimal_model()                                                                                                
sage: JC                                                                                                                      
Elliptic Curve defined by y^2 = x^3 - 6625266817/3145728*x + 543881033738945/14495514624 over Rational Field
sage: JCM                                                                                                                     
Elliptic Curve defined by y^2 + x*y + y = x^3 + x^2 - 138026392*x + 629434426201 over Rational Field
sage: JCM.discriminant().factor()                                                                                             
-1 * 2^16 * 46229^2 * 143677^2

(But doing this blindly does not provide a way to see which points correspond to which points.)

Preview: (hide)
link

Your Answer

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

Add Answer

Question Tools

Stats

Asked: 4 years ago

Seen: 701 times

Last updated: Apr 22 '20