ASKSAGE: Sage Q&A Forum - RSS feedhttps://ask.sagemath.org/questions/Q&A Forum for SageenCopyright Sage, 2010. Some rights reserved under creative commons license.Fri, 29 May 2020 10:11:28 +0200Elliptic curve defined over completionhttps://ask.sagemath.org/question/49033/elliptic-curve-defined-over-completion/I have an elliptic curve E defined over the rationals and K is an imaginary quadratic field. I have a Heegner point P for E over K. I also have a rational prime p. Let q be a prime of K above p. I would like to use Sage to check whether the point P is divisible by p in E(K) and also in E(Kq) where Kq is the completion of K at the prime q. To check this in E(K) is easy; one can use the heegner_index() function or one can use the division_points() function. I am wondering if there is a way in Sage to do my required check in E(Kq). It seems to me that completions of number fields at finite primes are not defined in Sage.Sat, 14 Dec 2019 10:11:35 +0100https://ask.sagemath.org/question/49033/elliptic-curve-defined-over-completion/Answer by John Cremona for <p>I have an elliptic curve E defined over the rationals and K is an imaginary quadratic field. I have a Heegner point P for E over K. I also have a rational prime p. Let q be a prime of K above p. I would like to use Sage to check whether the point P is divisible by p in E(K) and also in E(Kq) where Kq is the completion of K at the prime q. To check this in E(K) is easy; one can use the heegner_index() function or one can use the division_points() function. I am wondering if there is a way in Sage to do my required check in E(Kq). It seems to me that completions of number fields at finite primes are not defined in Sage.</p>
https://ask.sagemath.org/question/49033/elliptic-curve-defined-over-completion/?answer=51626#post-id-51626Sage does have p-adic fields, but no-one has yet implemented completions of number fields at finite places (see K.completeion? where K is a number field). You should still be able to manually construct the apprpriate p-adic field and base-change the elliptic curve to it.
Here's an example with a split prime, which is easier:
sage: K.<a> = NumberField(x^2 - x + 1)
sage: Q7 = Qp(7, prec=20)
sage: e1, e2 = K.embeddings(Q7)
sage: E = EllipticCurve('389a1').change_ring(K)
sage: Q = E.gens()[0]; Q
(-1 : 1 : 1)
sage: Q.division_points(5)
[]
sage: E.change_ring(e1)(Q).division_points(5)
[(2*7 + 5*7^2 + 3*7^4 + 6*7^5 + 3*7^6 + 4*7^7 + 7^8 + 7^9 + 4*7^10 + 3*7^11 + 4*7^12 + 3*7^13 + 7^14 + 5*7^16 + 4*7^18 + 5*7^19 + O(7^20) : 6 + 3*7 + 7^2 + 4*7^3 + 5*7^5 + 5*7^7 + 2*7^8 + 6*7^9 + 6*7^10 + 3*7^11 + 5*7^12 + 6*7^14 + 5*7^15 + 4*7^16 + 7^17 + 6*7^18 + O(7^20) : 1 + O(7^20))]
Fri, 29 May 2020 10:11:28 +0200https://ask.sagemath.org/question/49033/elliptic-curve-defined-over-completion/?answer=51626#post-id-51626