22
Computing zeta functions with p-adic cohomology Jan Tuitman University of Oxford August 15, 2012

Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

  • Upload
    ngothu

  • View
    219

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Computing zeta functions with p-adiccohomology

Jan Tuitman

University of Oxford

August 15, 2012

Page 2: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Zeta functions

Let Fq be the finite field with q = pn elements, and let X be analgebraic variety over Fq.

Definition

Z (X ,T ) := exp(∞∑i=1

|X (Fqi )|T i

i !).

RemarkNote that a priori this is just an element of Q[[T ]]. However, muchmore is known by the famous Weil Conjectures.

Page 3: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

The Weil Conjectures

TheoremIf X is proper smooth of dimension d, then

Z (X ,T ) =p1p3 . . . p2d−1p0p2p4 . . . p2d

,

where for all i :

1. pi =∏

j(1− αi ,jT ) ∈ Z[T ],

2. the transformation t → qd/t maps the roots of pi to theroots of p2d−i (preserving their multiplicities),

3. |αi ,j | = qi/2 for all j and every embedding Q → C.

Page 4: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Computing zeta functions

ProblemHow to compute the zeta function Z (X ,T ) (fast)?

MotivationWhen X is a projective nonsingular curve, the DiscreteLogarithm Problem on Jac(X ) is easy if |Jac(X )(Fq)| does nothave a large prime factor. Now we have

Z (X ,T ) =χ(T )

(1− T )(1− qT )

and one can show that

|Jac(X )(Fq)| = χ(1).

Page 5: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Computing zeta functions

RemarkA naive method for computing Z (X ,T ) is to compute

|X (Fq)|, |X (Fq2)|, . . .

up to some point by trying all possible values for the coordinates.However, this takes time at least q which is exponential in log q.

Better ways to compute Z (X ,T ) are:

1. Schoof (Pila) type algorithms using l-adic etale cohomology,

2. Kedlaya, Lauder, etc. type algorithms using p-adic (or rigid)cohomology.

We will focus on the p-adic algorithms in this talk.

Page 6: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Rigid cohomology

Let Qq denote the unramified extension of degree n of the field ofp-adic numbers Qp and Zq its ring of integers.

To X one can associate a sequence of finite dimensionalvectorspaces H0

rig (X ), . . . ,H2drig (X ) over Qq, together with an

action F ∗p of the p-th power Frobenius map Fp on X (that sendsevery coordinate to its p-th power), such that the followingLefschetz formula holds:

Z (X ,T ) :=2d∏i=0

det(1− qd(F ∗np )−1T |H irig (X ))(−1)

i+1.

To compute Z (X ,T ) it is enough to compute the maps F ∗p on the

H irig (X ) with high enough p-adic precision.

Page 7: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Rigid cohomology for affine varietiesWe will explain the construction of rigid cohomology for affinevarieties.

Let X be a smooth affine variety over Fq with coordinate ring A.Choose a lift of A to Zq i.e., a smooth Zq algebra

A = Zq[x1, . . . , xl ]/(f1, . . . fm),

such thatA ∼= A⊗Zq Fq.

DefinitionThe overconvergent functions in x1, . . . , xl are the formal powerseries that have radius of convergence strictly greater than 1:

Qq〈x1, . . . , xl〉† = ∑

aI xI |aI ∈ Qq, ∃ρ > 1 : lim

|I |→∞aIρ|I | = 0.

where I = (i1, . . . , il) and |I | = i1 + . . .+ il .

Page 8: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Rigid cohomology for affine varieties

DefinitionThe weak completion of A is defined as:

A† = Qq〈x1, . . . , xl〉†/(f1, . . . , fm).

TheoremThe p-th power Frobenius map Fp : A→ A can be lifted to a ringhomomorphism σ : A† → A†.

DefinitionThe de Rham complex of A† is defined as:

0 −−−−→ A†d−−−−→ Ω1

A†d−−−−→ Ω2

A†d−−−−→ . . .

Ω1A† =

Adx1 ⊕ . . .⊕Adxl(df1, . . . , dfm)

, ΩiA† = Λi (Ω1

A†) for i > 1.

Page 9: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Rigid cohomology for affine varieties

DefinitionThe rigid cohomology spaces H i

rig (X ) are the cohomology spaces

(ker d/im d) of the de Rham complex of A†. The action F ∗p ofFrobenius on these Qq vector spaces is induced by σ.

RemarkThe H i

rig (X ) do not depend on the choices made in theirconstruction, are contravariantly functorial and can be defined in asimilar (but slightly more complicated) way for all separatedschemes of finite type over Fq.

Page 10: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Hyperelliptic curves

Let p be an odd prime, q = pn a power of p and

f = y2 − Q(x),

for some monic Q ∈ Fq[x ] of degree 2g + 1 with distinct roots.Then f defines a hyperelliptic curve X of genus g .

Let U ⊂ X be the open affine (x , y) ∈ A2Fq|f (x , y) = 0, y 6= 0,

so that the coordinate ring of U is

A = Fq[x , y , y−1]/(f ).

We can now choose a monic lift Q ∈ Zq[x ] of Q, put f = y2 −Q,and define

A = Zq[x , y , y−1]/(f),

so that we getA† = Qq〈x , y , y−1〉†/(f).

Page 11: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Hyperelliptic curves: cohomology

If A(x) = Q(x)B(x) +Q′(x)C (x) with A,B,C ∈ Qq[x ], then inH1rig (U) we have the relation

A(x)dx

y s≡(

B(x) +2C ′(x)

s − 2

)dx

y s−2 ,

which follows from

d

(C (x)

y s−2

)≡ 0.

This relation can be used to reduce any differential to one withs = 1, 2.

Similarly, powers of x greater than 2g (2g − 1 when s = 1) can beeliminated.

When applied to overconvergent differentials, these reductionprocedures can be shown to converge.

Page 12: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Hyperelliptic curves: cohomology

TheoremA basis for H1

rig (U) over Qq is given by

x0 dx

y, x1 dx

y, . . . , x2g−1 dx

y ∪ x0 dx

y2, . . . , x2g dx

y2.

Moreover, H1rig (X ) is naturally contained in H1

rig (U), with basisgiven by

x0 dx

y, x1 dx

y, . . . , x2g−1 dx

y.

Page 13: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Hyperelliptic curves: Frobenius

We need to compute a lift σ of Fp to A†. Note that sinceGal(Qq/Qp) ∼= Gal(Fq/Fp), the lift σ is uniquely defined on Qq.For the images of the variables, we choose:

x 7→ xp

y 7→ yp(1 +Qσ −Qp

y2p)1/2

RemarkThe image of y can be computed to any required p-adic precisionby expanding the square root.

Page 14: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Kedlaya’s algorithm

1. Compute σ(y) to ‘enough’ p-adic precision,

2. Apply σ to the differentials x0 dxy , x

1 dxy , . . . , x

2g−1 dxy ,

3. Reduce the results from the previous step back to a linearcombination of the basis elements x0 dx

y , x1 dx

y , . . . , x2g−1 dx

y to obtain the matrix of F ∗p ,

4. Compute F ∗q = (F ∗p )n and its (rounded, reverse) characteristicpolynomial χ(T ).

Then

Z (X ,T ) =χ(T )

(1− T )(1− qT ), |Jac(X )(Fq)| = χ(1).

RemarkWe have skipped over some minor details: computation of σ(y)−1,Newton lift instead of expanding square root, p-adic precision loss(analysis), semilinearity of F ∗p , etc.

Page 15: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Complexity and implementation

Cost of Kedlaya’s algorithm:

1. time : O(pn3g4)

2. space: O(pn3g3)

So this is not polynomial in log q, unless p is fixed. Therefore, thealgorithm is limited to small p.

There is an improvement of the algorithm(by D. Harvey) thatimproves the dependence on the characteristic to

√p and therefore

allows for bigger p.

Kedlaya’s algorithm is implemented in MAGMA and Harvey’sversion in SAGE.

Page 16: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Families of hyperelliptic curves

Consider Q ∈ Fq[x , t] monic of degree 2g + 1 in x . Let

r(t) = Resx(Q,dQ

dx),

denote the resultant of Q with respect to x . Now,

f = y2 − Q(x , t)

defines a family X/S of hyperelliptic curves of genus g overS = Spec V , where V = Fq[t, 1/r(t)].

Page 17: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Lifting the family

Let Q(x , t) be a lift of Q to Zq[x , t] and denote

r(t) = Resx(Q, dQdx

).

Then the polynomial

f = y2 −Q(x , t)

defines a family X/S of hyperelliptic curves of genus g overS = Spec V with V = Zq[t, 1/r(t)], that lifts the family X/S .

Define the family

U/S = Spec Zq[t, 1/r(t)][x , y , y−1]/(f)

of open affines of X/S, let W be its coordinate ring and U/S itsreduction modulo p.

Page 18: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Relative rigid cohomology

DefinitionLet

A† = Qq〈t, 1/r(t)〉†

be the ring of overconvergent functions on S and σ : A† → A† alift of the p-th power Frobenius on A.

The relative rigid cohomology space H1rig (U/S) is defined as the

A† moduleW†dx ⊕W†dy

df.

Page 19: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Relative rigid cohomology

Theorem

1. H1rig (U/S) is a free A† module with basis

x0 dx

y, x1 dx

y, . . . , x2g−1 dx

y ∪ x0 dx

y2, . . . , x2g dx

y2,

2. carries a natural Gauss-Manin connection

∇ : H1rig (U/S)→ H1

rig (U/S)⊗ Ω1A† ,

3. comes with a Frobenius isomorphism

F ∗p : σ∗H1rig (U/S)→ H1

rig (U/S),

that is horizontal with respect to ∇.

Page 20: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Relative rigid cohomology

DefinitionH1rig (X/S) is the A† submodule of H1(U/S) generated by

x0 dx

y, x1 dx

y, . . . , x2g−1 dx

y.

RemarkThe connection ∇ and the Frobenius F ∗p both restrict toH1rig (X/S).

Page 21: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

The differential equation

Suppose that Φ ∈ M2g×2g (A†) is the matrix such that

F ∗p (x j−1 dx

y) ≡

2g∑i=1

Φij(x i−1 dx

y),

and let N ∈ M2g×2g (A†) be the matrix such that

∇(x j−1 dx

y) ≡

r∑i=1

Nij(x i−1 dx

y).

Then F ∗p being horizontal with respect to ∇ is equivalent to

dt=

(dtσ

dt

)ΦNσ − NΦ.

Page 22: Computing zeta functions with p-adic · PDF fileComputing zeta functions with p-adic cohomology ... Newton lift instead of expanding square root, p-adic precision loss ... Computing

Deformation algorithm

The idea of the deformation method (for hyperelliptic curves) is asfollows:

1. Choose a family X/S of hyperelliptic curves, for which theaction of F ∗p on H1

rig (X0) is known or easy to compute.

2. Solve the differential equation

dt=

(dtσ

dt

)ΦNσ − NΦ,

using the initial value from the previous step, to obtain Φ as amatrix with entries in A†.

3. Specialize Φ at some τ ∈ S(Zq) for which σ(τ) = τ (aTeichmuller lift) to obtain the matrix of F ∗p on H1

rig (Xτ ) andcompute Z (Xτ ,T ).