# Birationally transforming general curve of genus 1 to Weierstrass form

What are general rules to birationally transform general curve of any degree of genus 1 to Weierstrass form, provided we have one rational point?

Example of curve of degree 12:

$$x^9 y^3+9 x^9 y^2+27 x^9 y+27 x^9+9 x^8 y^3+81 x^8 y^2+243 x^8 y+243 x^8+35 x^7 y^3+318 x^7 y^2+963 x^7 y+972 x^7+74 x^6 y^3+687 x^6 y^2+2124 x^6 y+2187 x^6+90 x^5 y^3+871 x^5 y^2+2799 x^5 y+2988 x^5+67 x^4 y^3+692 x^4 y^2+2358 x^4 y+2655 x^4+39 x^3 y^3+415 x^3 y^2+1466 x^3 y+1717 x^3+21 x^2 y^3+211 x^2 y^2+723 x^2 y+840 x^2+4 x y^3+47 x y^2+180 x y+228 x-3 y^3-20 y^2-40 y-20=0$$

This curve has (geometric) genus 1. It has rational point $$(-3, -\frac{17}{5})$$.

I am familiar with transforming $$y^2=a x^4+b x^3+c x^2+d x+e$$ to Weierstrass form but have never seen similar process for curves of higher degree than $$4$$.

• Find $y$ with only one triple pole at some point $p$, take $x$ with only one double pole at $p$, normalize it such that $y^2/x^3(p) = 1$, then $y^2-x^3$ is a linear combination of $yx,x^2,y,x,C$ (subtract the poles until it is simple, in genus one this implies it is constant) ie. $(y+dx+e)^2 = x^3+cx^2+bx+a$. Dec 27, 2019 at 1:41
• @reuns: I will try, I hope I can follow it. Is it a method that would work with any curve of genus 1 or you adapted the method to fit my example? And also as I understand it the method is dependent on finding specific point $p$ that could be hard to find because of its big height, my point in my example would not work. Am I right? Dec 27, 2019 at 10:13
• @reuns: At $y=-3$ there is a triple pole. But I think there are no double poles for any $x$. I found simple poles for $x=-2.1013...$, $x=-1.6485..$, $x=0.2392...$. Not sure you are talking about such poles... It would be great if you can provide explicit example or literature where there is an explicit example of how to do all the process. Dec 27, 2019 at 11:59
• Whether it is a terrible example or not - the fact is that it can be transformed into cubic. That is what I want to know how to do it. My question was about general genus 1 curve, so I guess there are even more terrible examples of genus 1 curves. If you know a better example of degree at least $5$ then you may post it here. Dec 30, 2019 at 19:49
• Maybe An algorithm for computing the Weierstrass normal form M Van Hoeij - ISSAC, 1995 and the algcurves Maple package can help. Jan 1, 2020 at 8:21

$$C: x^9 y^3+9 x^9 y^2+27 x^9 y+27 x^9+9 x^8 y^3+81 x^8 y^2+243 x^8 y+243 x^8+35 x^7 y^3+318 x^7 y^2+963 x^7 y+972 x^7+74 x^6 y^3+687 x^6 y^2+2124 x^6 y+2187 x^6+90 x^5 y^3+871 x^5 y^2+2799 x^5 y+2988 x^5+67 x^4 y^3+692 x^4 y^2+2358 x^4 y+2655 x^4+39 x^3 y^3+415 x^3 y^2+1466 x^3 y+1717 x^3+21 x^2 y^3+211 x^2 y^2+723 x^2 y+840 x^2+4 x y^3+47 x y^2+180 x y+228 x-3 y^3-20 y^2-40 y-20=0$$

$$E: v^2=u^3+2 u^2+3 u+7$$

$$C\to E: \{x,y\}=\left\{\frac{2-u-v}{u+v},\frac{(3 u-3 v+2) (u+v)^2+24}{(v-u) (u+v)^2-8}\right\}$$ $$E\to C: \{u,v\}=\left\{\frac{-x^3 y-3 x^3-3 x^2 y-9 x^2-3 x y-10 x-1}{(x+1) (y+3)},\frac{x^3 y+3 x^3+3 x^2 y+9 x^2+3 x y+10 x+2 y+7}{(x+1) (y+3)}\right\}$$

• May I know the source of your 'big' curve? Where it came from? Any general way to construct such higher degree elliptic curves? Jan 2, 2020 at 19:52
• The most easy way for example: $(x+3)^2 (x+4)^2 (x+5)^1 (y-3)^2-(x-5)^3 (x+1)^1 (x-2)^1 (y+4)^2$. Add random double, triple... roots and check whether it has genus 1. But this way you will not produce every possible type of genus 1 curve. There are also curves of genus 1 that have more complex set of singularities and also singularities at points of infinity. And "my curve" was also produced randomly by PC but with a different method. Jan 2, 2020 at 20:32
• Or $(1+x)^2*(2+x)^5*(-3+y)^3-(-1+x)^4*(5+y)^3$. Jan 2, 2020 at 22:50
• Or $(x+1)^3 (y-3)^5-(x-1)^5 (y+5)^4$. Jan 2, 2020 at 22:56
• Sorry, I do not remember. I think I was trying lots of different rational points and then done lots of manipulation until I found the simplest transformation. If I find my old notes about how I did it I will update my post. Aug 30, 2020 at 19:39

In case someone would be interested in Maple's result obtained by user Jan-Magnus Økland, I rewrote it by hand and simplified a bit:

x0^3+(4096/375)*x0-39583744/421875+y0^2=0

{x0=(-64*(459-2883*x-9835*x^2-10922*x^3+911*x^4+32019*x^5+79032*x^6+
107703*x^7+90099*x^8+47466*x^9+15525*x^10+2916*x^11+243*x^12+477*y-
1650*x*y-5739*x^2*y-4926*x^3*y+2229*x^4*y+18462*x^5*y+46482*x^6*y+
66672*x^7*y+57789*x^8*y+31104*x^9*y+10296*x^10*y+1944*x^11*y+162*x^12*y+
108*y^2-243*x*y^2-867*x^2*y^2-468*x^3*y^2+684*x^4*y^2+2697*x^5*y^2+
6786*x^6*y^2+10281*x^7*y^2+9255*x^8*y^2+5094*x^9*y^2+1707*x^10*y^2+
324*x^11*y^2+27*x^12*y^2))/(75*(1+x)^2*(3+x)^2),
y0=(512*(843-2710*x-16519*x^2-12074*x^3+53732*x^4+202061*x^5+420043*x^6+
605147*x^7+603976*x^8+410519*x^9+186465*x^10+54489*x^11+9342*x^12+
720*x^13+663*y-1555*x*y-10411*x^2*y-5199*x^3*y+37741*x^4*y+122433*x^5*y+
248798*x^6*y+368668*x^7*y+380591*x^8*y+265351*x^9*y+122554*x^10*y+
36166*x^11*y+6228*x^12*y+480*x^13*y+117*y^2-252*x*y^2-1708*x^2*y^2-
447*x^3*y^2+6786*x^4*y^2+18853*x^5*y^2+36789*x^6*y^2+55939*x^7*y^2+
59835*x^8*y^2+42846*x^9*y^2+20133*x^10*y^2+6001*x^11*y^2+1038*x^12*y^2+
80*x^13*y^2))/(125*(1+x)^2*(3+x)^3)}

{x=(-3*(641990656-26112000*x0+23400000*x0^2+421875*x0^3-18432000*y0+
4050000*x0*y0))/(1493958656+4608000*x0+81000000*x0^2+421875*x0^3),
y=-((12471594100595144366690926592+1955419142592015308213452800*x0+
1878075405942780183183360000*x0^2+317367943168385875968000000*x0^3+
100956115396303257600000000*x0^4+10300549541068800000000000*x0^5+
1553373542016000000000000*x0^6+92061983700000000000000*x0^7+
1575601083984375000000*x0^8+6382198333740234375*x0^9-
85483495844938839490560000*y0+18695958056411332608000000*x0*y0-
10870651215214018560000000*x0^2*y0+2004895847153664000000000*x0^3*y0-
253485556531200000000000*x0^4*y0+35822535120000000000000*x0^5*y0+
1409384812500000000000*x0^6*y0-33397668457031250000*x0^7*y0)/
(4064816181869106669044105216+616121378211946711272652800*x0+
627407206768386936668160000*x0^2+103220483647881609216000000*x0^3+
34217094666623385600000000*x0^4+3521701778227200000000000*x0^5+
545117693184000000000000*x0^6+34660450800000000000000*x0^7+
680639677734375000000*x0^8+1877117156982421875*x0^9))}