On May 14, 'Reimundo Heluani' via sage-devel wrote:
On May 14, Daniel Loughran wrote:Hello. I think that I may have found a bug involving elliptic curves modulo powers of primes. I have attached the working jupyter notebook, but my code and results are also below.In my code I have an elliptic curve E over Q with good reduction at 2 and the point P = (2:-3:8) (homogeneous coordinates). It is clear that the reduction modulo 4 of this point in projective space is (2:1:0).[2:1:0] is not in that curve as 1^2*0 + 1*0^2 != 1^3 - 1*0^2
OOops, the LHS is 2^3 - 2*0^2 but still not equal to the RHS :)R.
The reduction given by sage is however RHowever, sage is telling me that when I reduce the curve modulo 4 then ask what point P reduces to, I get the identity element (0:1:0). My guess is that sage does something like put this point into the form (1/4:-3/ 8:1), then notices that 4 divides the denominator of the x-coordinate so just kills it. But really it should be clearing denominators before it tries to reduce modulo 4. There is another related bug: if I try to instead reduce this point modulo 16, then I just get the error "inverse of Mod(4, 16) does not exist". I guess this is a similar problem to the above. ------------------------------------------------------------------------------------------------------------------------------ [ ] E=EllipticCurve([0, 0, 1, -1, 0]); E Elliptic Curve defined by y^2 + y = x^3 - x over Rational Field [ ] P=E(2,-3,8); P (1/4 : -3/8 : 1) [ ] E4=E.change_ring(Integers(4)); E4 Elliptic Curve defined by y^2 + y = x^3 + 3*x over Ring of integers modulo 4 [ ] E4(P) (0 : 1 : 0) [ ] P2.<X,Y,Z> = ProjectiveSpace(Integers(4),2); P2 Projective Space of dimension 2 over Ring of integers modulo 4 [ ] P2(2,-3,8) (2 : 1 : 0) [ ] P2(0,1,0) (0 : 1 : 0) [ ] P2(2,-3,8)==P2(0,1,0) False [ ] E16=E.change_ring(Integers(16)); E16 Elliptic Curve defined by y^2 + y = x^3 + 15*x over Ring of integers modulo 16 [ ] E16(P) ZeroDivisionError: inverse of Mod(4, 16) does not exist -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [11]sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit [12]https://groups.google.com/d/msgid/ sage-devel/f2900af4-6aad-4450-9e12-6f1ec95596f8%40googlegroups.com. References: [11] mailto:sage-devel+unsubscr...@googlegroups.com [12] https://groups.google.com/d/msgid/sage-devel/f2900af4-6aad-4450-9e12-6f1ec95596f8%40googlegroups.com?utm_medium=email&utm_source=footer-- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/20200514121620.GA39760%40vertex.
-- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/20200514122902.GA42831%40vertex.
signature.asc
Description: PGP signature