Ask Your Question
0

why elliptic curve plot() the same in Q and QuadraticField()?

asked 10 years ago

this post is marked as community wiki

This post is a wiki. Anyone with karma >750 is welcome to improve it.

sage: E = EllipticCurve([0,0,0,-15,22])
sage: show(E)
sage: K1.<a> = QuadraticField(3)
sage: E1 = EllipticCurve(K1,[0,0,0,-15,22])
sage: show(E1)
sage: E.torsion_subgroup()
Torsion Subgroup isomorphic to Z/6 associated to the Elliptic Curve defined by y^2 = x^3 - 15*x + 22 over Rational Field
sage: E1.torsion_subgroup()
Torsion Subgroup isomorphic to Z/2 + Z/6 associated to the Elliptic Curve defined by y^2 = x^3 + (-15)*x + 22 over Number Field in a with defining polynomial x^2 - 3
sage: table(E1.torsion_subgroup().list(),frame="true").transpose()
+----------------------------+
| (0 : 1 : 0)                |
+----------------------------+
| (-2*a + 5 : -6*a + 12 : 1) |
+----------------------------+
| (3 : 2 : 1)                |
+----------------------------+
| (-2*a - 1 : 0 : 1)         |
+----------------------------+
| (3 : -2 : 1)               |
+----------------------------+
| (-2*a + 5 : 6*a - 12 : 1)  |
+----------------------------+
| (2 : 0 : 1)                |
+----------------------------+
| (2*a + 5 : 6*a + 12 : 1)   |
+----------------------------+
| (-1 : 6 : 1)               |
+----------------------------+
| (2*a - 1 : 0 : 1)          |
+----------------------------+
| (-1 : -6 : 1)              |
+----------------------------+
| (2*a + 5 : -6*a - 12 : 1)  |
+----------------------------+
sage: E.plot()
sage: E1.plot()
Preview: (hide)

2 Answers

Sort by » oldest newest most voted
1

answered 10 years ago

vdelecroix gravatar image

Hello,

The method plot actually plots the real points of the curve. Hence, it does not depend on the field of definition.

I agree that it is not very well documented.

Vincent

Preview: (hide)
link

Comments

This does actually depend on the field of definition, see for example: E.change_ring(RealField(10)).plot() E.change_ring(CC).plot()

tmonteil gravatar imagetmonteil ( 10 years ago )
1

answered 10 years ago

tmonteil gravatar image

updated 10 years ago

As you can see (by typing E.plot??) that the first thing that the plot method does is to see if the field of definition of the curve can be put in RR, and then work on RR:

    RR = rings.RealField()
    K = self.base_ring()
    try:
        RR._coerce_(K(1))

This is indeed a bug since it is not documented. It is now reported at trac ticket 17256.

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

1 follower

Stats

Asked: 10 years ago

Seen: 368 times

Last updated: Oct 29 '14