ASKSAGE: Sage Q&A Forum - Individual question feedhttps://ask.sagemath.org/questions/Q&A Forum for SageenCopyright Sage, 2010. Some rights reserved under creative commons license.Mon, 24 Dec 2012 02:16:21 -0600How to check two curves on birational equivalence?https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/I have two curves, for example hyperelliptic:
y^2 = x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 18
y^2 = x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 5*x + 1
How to check them on birational equivalence (is able one curve be birationally transformed to another?) via Sage?Sat, 05 Nov 2011 03:06:30 -0500https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/Answer by William Stein for <p>I have two curves, for example hyperelliptic:</p>
<pre><code>y^2 = x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 18
y^2 = x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 5*x + 1
</code></pre>
<p>How to check them on birational equivalence (is able one curve be birationally transformed to another?) via Sage?</p>
https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/?answer=12887#post-id-12887Two projective algebraic curves are birationally equivalent if and only if they are isomorphic (Ch 1, Sec 6 of Hartshorne). You can input both of the above curves into Sage and compute various isomorphism class invariants to see that the curves are not isomorphic over C, hence not birationally equivalent. This paper [http://www.warwick.ac.uk/~masjap/amsigusa.pdf](http://www.warwick.ac.uk/~masjap/amsigusa.pdf) has some basic facts about Igusa invariants in it.
sage: R.<x> = QQ[]
sage: C = HyperellipticCurve(x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 18)
sage: D = HyperellipticCurve(x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 5*x + 1)
sage: C.igusa_clebsch_invariants()
(-116896, 396482560, -4236950421504, -19899663217714003968)
sage: D.igusa_clebsch_invariants()
(-51616, 79673344, -1252989108224, -21978176867532800)
Sat, 12 Nov 2011 04:06:17 -0600https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/?answer=12887#post-id-12887Comment by petRUShka for <p>Two projective algebraic curves are birationally equivalent if and only if they are isomorphic (Ch 1, Sec 6 of Hartshorne). You can input both of the above curves into Sage and compute various isomorphism class invariants to see that the curves are not isomorphic over C, hence not birationally equivalent. This paper <a href="http://www.warwick.ac.uk/~masjap/amsigusa.pdf">http://www.warwick.ac.uk/~masjap/amsigusa.pdf</a> has some basic facts about Igusa invariants in it.</p>
<pre><code>sage: R.<x> = QQ[]
sage: C = HyperellipticCurve(x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 18)
sage: D = HyperellipticCurve(x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 5*x + 1)
sage: C.igusa_clebsch_invariants()
(-116896, 396482560, -4236950421504, -19899663217714003968)
sage: D.igusa_clebsch_invariants()
(-51616, 79673344, -1252989108224, -21978176867532800)
</code></pre>
https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/?comment=18482#post-id-18482According to your link we should check absolute igusa invariants! We should use `.absolute_igusa_invariants_wamelen()` or `.absolute_igusa_invariants_kohel()` instead of `.igusa_clebsch_invariants()`. And it's true. I can give you two birational equivalent curves but they have different igusa_clebsch_invariantsMon, 24 Dec 2012 02:16:21 -0600https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/?comment=18482#post-id-18482Comment by petRUShka for <p>Two projective algebraic curves are birationally equivalent if and only if they are isomorphic (Ch 1, Sec 6 of Hartshorne). You can input both of the above curves into Sage and compute various isomorphism class invariants to see that the curves are not isomorphic over C, hence not birationally equivalent. This paper <a href="http://www.warwick.ac.uk/~masjap/amsigusa.pdf">http://www.warwick.ac.uk/~masjap/amsigusa.pdf</a> has some basic facts about Igusa invariants in it.</p>
<pre><code>sage: R.<x> = QQ[]
sage: C = HyperellipticCurve(x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 18)
sage: D = HyperellipticCurve(x^6 + 14*x^4 + 5*x^3 + 14*x^2 + 5*x + 1)
sage: C.igusa_clebsch_invariants()
(-116896, 396482560, -4236950421504, -19899663217714003968)
sage: D.igusa_clebsch_invariants()
(-51616, 79673344, -1252989108224, -21978176867532800)
</code></pre>
https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/?comment=20658#post-id-20658Thanks! But, as I can see, this method can help only if they aren't equivalent. Is it possible to check two curves on birational equivalence in general case?Thu, 22 Dec 2011 00:54:20 -0600https://ask.sagemath.org/question/8443/how-to-check-two-curves-on-birational-equivalence/?comment=20658#post-id-20658