Litcius/Paper detail

Counting points on superelliptic curves in average polynomial time

Andrew V. Sutherland

2020The Open Book Series13 citationsDOIOpen Access PDF

Abstract

We describe the practical implementation of an average polynomial-time algorithm for counting points on superelliptic curves defined over $\mathbb Q$ that is substantially faster than previous approaches. Our algorithm takes as input a superelliptic curves $y^m=f(x)$ with $m\ge 2$ and $f\in \mathbb Z[x]$ any squarefree polynomial of degree $d\ge 3$, along with a positive integer $N$. It can compute $\#X(\mathbb F_p)$ for all $p\le N$ not dividing $m\mathrm{lc}(f)\mathrm{disc}(f)$ in time $O(md^3 N\log^3 N\log\log N)$. It achieves this by computing the trace of the Cartier--Manin matrix of reductions of $X$. We can also compute the Cartier--Manin matrix itself, which determines the $p$-rank of the Jacobian of $X$ and the numerator of its zeta function modulo~$p$.

Topics & Concepts

MathematicsPolynomialJacobian matrix and determinantRiemann zeta functionMatrix (chemical analysis)TRACE (psycholinguistics)Integer (computer science)Minimal polynomial (linear algebra)Function (biology)Discrete mathematicsDegree (music)Time complexitySquare-free integerPoint (geometry)Number theoryCombinatoricsMultigraphGenerating functionAlgorithmDegree of a polynomialExplicit formulaeSimple (philosophy)EnumerationCharacteristic polynomialPolynomial matrixApplied mathematicsRunning timeMatrix polynomialMatrix multiplicationPolynomial and algebraic computationAlgebraic Geometry and Number TheoryCryptography and Residue Arithmetic
Counting points on superelliptic curves in average polynomial time | Litcius