Compute the $j$-invariant corresponding to a given maximal order in $B_{p,\infty}$

elliptic-curvesisogenyquaternionssagemath

Let $B_{p,\infty}$ is the rational quaternion algebra ramified at $p$ and $\infty$.

By Deuring's correspondence, there is a one to one correspondence between maximal orders in $B_{p, \infty}$ up to isomorphism and supersingular $j$-invariants in $\mathbb{F}_{p^2}$ up to Galois conjugacy.

There are algorithms computing the $j$-invariant corresponding to a given maximal order (with its $\mathbb{Z}$-basis) such as Algorithm 12, EHL+18 of running-time polynomial in $\log p$.

Are there any implementations of these algorithms on Sagemath, Magma, etc?

I know there are some implementation of variations of the KLPT algorithm on Sagemath that compute an ideal with powersmooth norm in a left ideal class (of a maximal order), which is needed in the second step of Algorithm 12, EHL+18. But I suppose this step is for improving running-time only. It's not necessary to have an efficient algorithm like the Algorithm 12, as I only need to compute $j$-invariants when $p$ is small.

Best Answer

The "Deuring for the people" paper provides (among other things) a general and reasonably fast SageMath implementation of the KLPT-based approach. See here for the code.

Related Question