We introduce a different -adic setup for counting points (or equivalently computing zeta functions). If is a variety over , we want to count points using `de Rham' cohomology. We will demonstrate Monsky-Washnitzer cohomology (a kind of rigid cohomology for smooth affine varieties). We restrict to the case where is an affine curve, since in higher dimensions other methods will be faster. Then .

Let be the Witt vectors, and let be the fraction field of . Define

In other words, for some with . Modulo , reduces to the polynomial ring , since all but finitely many coefficients are divisible by . We define . Let

Let be the -module generated by symbols modulo the submodule generated by . Then there is a -linear derivation . Letting ; you get the de Rham complex

The spaces are finite-dimensional, but it is not obvious; it relies upon relating this cohomology to rigid cohomology for proper varieties, namely, crystalline cohomology which we know is finite-dimensional for other reasons. Moreover, they satisfy the Lefschetz trace formula: if is the -power Frobenius, then (Monsky)

The idea: try to compute and the map induced by (find lifting -power Frobenius).

**Example. **
Look at
with
odd. Let
, monic. Lift it to
, where is monic, degree over . It is easy to compute that is one-dimensional. Now is generated by for
, and
,
. Note splits under
into plus and minus eigenspaces.

You need to find relations in that . (This is a special situation: all relations are `algebraic'.) Lift the -power Frobenius by by the Witt vector Frobenius, , and . Compose this map with itself times to get a -power Frobenius lift, and this allows us to compute the zeta function of a genus hyperelliptic curve over in time .

Back to the
main index
for Future directions in algorithmic number theory.