#9052 closed enhancement (fixed)
Hasse invariant for elliptic curves
Reported by: | voloch | Owned by: | cremona |
---|---|---|---|
Priority: | minor | Milestone: | sage-4.4.3 |
Component: | elliptic curves | Keywords: | Hasse invariant |
Cc: | Merged in: | sage-4.4.3.alpha1 | |
Authors: | Felipe Voloch | Reviewers: | William Stein, John Cremona |
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description
Creates a method to compute the Hasse invariant of an elliptic curve over a function field of positive characteristic.
Attachments (3)
Change History (12)
Changed 12 years ago by
comment:1 Changed 12 years ago by
- Milestone set to sage-4.4.3
- Status changed from new to needs_review
Changed 12 years ago by
comment:2 Changed 12 years ago by
- Status changed from needs_review to positive_review
comment:3 Changed 12 years ago by
This is a coincidence, since just yesterday I was considering implementing functions is_supersingular() and is_ordinary(). Now this can be done very simply (since s.s. curves have invariant 0 and ordinary ones have nonzero invariant).
However, I'm a little worried about the efficiency of the current implementation for even modest p, since it involves raising a degree 3 polynomial to the power (p-1)/2 and then picking out one coefficient. There are easier ways to test supersingularity for small p, since one can precompute the s.s. j-invariants and check that. This would be a quicker way of computing H when it is 0. One could check that the j-invariant has degree at most 2 (else ordinary). And over the prime field GF(p), s.s. curves have cardinality p+1, and another way to check ordinary-ness is to take random points and multiply then by p+1. As a last resort one can compute the cardinality.
I guess this is enough for a second ticket!
comment:4 Changed 12 years ago by
The first two patches apply fine and tests pass. I added a review patch which beefs up the docstring a little, adds some more examples (including one over a non-prime field), and also added one-liners for characteristics 5 and 7.
Strictly this should be looked at again (William?), but I don't seem to have the option of marking it as "needs review" again. In case you are wondering about the char. 5,7 cases, as well as doing the math I also systematically checked that this gives the same as the general method for *all* curves over GF(5) and GF(7)!
comment:5 Changed 12 years ago by
Looks even better to me now, by far! Thanks John.
comment:6 Changed 12 years ago by
- Merged in set to 4.4.3.alpha1
- Resolution set to fixed
- Reviewers set to wstein, cremona
- Status changed from positive_review to closed
comment:7 follow-up: ↓ 9 Changed 12 years ago by
Excellent. I have nearly finished a patch which implements is_supersingular and is_ordinary (independently of computing the Hasse inv.)
comment:8 Changed 12 years ago by
- Merged in changed from 4.4.3.alpha1 to sage-4.4.3.alpha1
- Reviewers changed from wstein, cremona to William Stein, John Cremona
Looks good to me.