Sharedfrobenius-hausdorff2018.ipynbOpen in CoCalc
Authors: Kiran Kedlaya, Simons Collaboration in Arithmetic Geometry Number Theory and Computation
Views : 17

Frobenius structures on hypergeometric equations: computational methods

Kiran S. Kedlaya, Department of Mathematics, University of California, San Diego; [email protected]
Picard-Fuchs Equations and Hypergeometric Motives, Hausdorff Research Institute for Mathematics (Bonn)
March 28, 2018
About this file

This file is a Jupyter notebook hosted on CoCalc (formerly SageMathCloud). The embedded code is to be run using the standard SageMath 8.1 kernel; see below for discussion of hypergeometric motives in Sage.

To retrieve this file, see my web site ( and click on "Talks".


Thanks to Fernando Rodriguez Villegas for helpful discussions. The author was supported by NSF grant DMS-1501214 and the UCSD Department of Mathematics (Stefan E. Warschawski Chair).

  • [BCH]: F. Beukers, H. Cohen, and A. Mellit, Finite hypergeometric functions, arXiv:1505.02900.
  • [Dw]: B. Dwork, Generalized Hypergeometric Functions, Clarendon Press, Oxford, 1990.
  • [BH]: F. Beukers and G. Heckman, Monodromy for the hypergeometric function nFn1{}_nF_{n-1}, Inventiones Mathematicae 95 (1989), 325-354.
  • [Ka]: N.M. Katz, Exponential Sums and Differential Equations, Annals of Math. Studies 124, Princeton Univ. Press, Princeton, 1990.
  • [Sh1]: I. Shapiro, Frobenius map for quintic threefolds, International Mathematics Research Notices (2009), 2519-2545.
  • [Sh2]: I. Shapiro, Frobenius map and the pp-adic Gamma function, Journal of Number Theory 132 (2012), 1770-1779.

See also my slides and Jupyter notebook from ICTP, September 2017 (on my web site; see above).

1. Hypergeometric differential equations

Throughout this talk, by a (hypergeometric) datum we will mean two tuples α=(α1,,αn)\underline{\alpha} = (\alpha_1,\dots,\alpha_n) and β=(β1,,βn)\underline{\beta} = (\beta_1,\dots,\beta_n) of the same length nn such that:

  • αi,βjQ[0,1)\alpha_i,\beta_j \in \mathbb{Q} \cap [0,1) for i,j=1,,ni,j=1,\dots,n;
  • α\underline{\alpha} and β\underline{\beta} are disjoint: αiβj\alpha_i \neq \beta_j for i,j=1,,ni,j=1,\dots,n. (However, there may be repeats within α\underline{\alpha} or β\underline{\beta}.)

We say that this datum is Galois-stable if:

  • in each of α\underline{\alpha} and β\underline{\beta}, for any r,r,sZr,r',s \in \mathbb{Z} with s>0,0r,r<s,gcd(r,s)=gcd(r,s)=1, s > 0, \quad 0 \leq r,r' < s, \quad \gcd(r,s) = \gcd(r',s) = 1, the fractions rs\frac{r}{s} and rs\frac{r'}{s} occur with the same multiplicity.

We consider the generalized hypergeometric equation with parameters α,β\underline{\alpha}, \underline{\beta} using the normalization of [BH]: (t(D+α1)(D+αn)(D+β11)(D+βn1))(y)=0D=tddt.\left( t(D + \alpha_1) \cdots (D + \alpha_n) - (D+\beta_1-1)\cdots(D+\beta_n-1) \right)(y) = 0 \qquad D = t \frac{d}{dt}. For i=1,,ni=1,\dots,n, we have a (formal) solution at t=0t=0 of the form y=t1βinFn1(α1βi+1,,αnβi+1β1βi+1,,βiβi+1^,,βnβi+1t) y = t^{1-\beta_i} {}_nF_{n-1} \left( \left. \genfrac{}{}{0pt}{}{\alpha_1-\beta_i+1, \dots, \alpha_n-\beta_i+1}{\beta_1-\beta_i+1, \dots, \widehat{\beta_i - \beta_i + 1},\dots,\beta_n - \beta_i + 1} \right| t \right) expressed in terms of the Clausen-Thomae hypergeometric series nFn1(α1,,αnβ1,,βn1t):=k=0(α1)k(αn)k(β1)k(βn1)ktkk!. {}_nF_{n-1} \left( \left. \genfrac{}{}{0pt}{}{\alpha_1,\dots,\alpha_n}{\beta_1,\dots,\beta_{n-1}} \right| t \right) := \sum_{k=0}^\infty \frac{(\alpha_1)_k \cdots (\alpha_n)_k}{(\beta_1)_k \cdots (\beta_{n-1})_k} \frac{t^k}{k!}.

2. Hypergeometric motives in Sage

As described in [Ka], to any Galois-stable datum α,β\underline{\alpha}, \underline{\beta} one can (modulo formal difficulties with the definition of motives) associate a family of hypergeometric motives over PQ1{0,1,}\mathbf{P}^1_{\mathbb{Q}} - \{0,1,\infty\} whose associated variation of Hodge structures has Picard-Fuchs equation (for a suitable choice of period) equal to the hypergeometric equation with parameters α,β\underline{\alpha}, \underline{\beta}.

Starting with version 8.1, Sage includes a partial port of the Magma hypergeometric motives package; this is joint work with Frédéric Chapoton. At present, this is limited to basic combinatorial functions plus the hypergeometric trace formula for good primes; see Sage's trac server for running discussion.

Warning: there is a normalization discrepancy between Magma and Sage; the parameter value tt in Sage corresponds to 1/t1/t in Magma. (The convention in Sage is the one compatible with [BH].)

In [1]:
from sage.modular.hypergeometric_motive import HypergeometricData as HGData
In [2]:
H = HGData(alpha_beta = ([1/6,5/6,1/8,3/8,5/8,7/8],[0,1/2,1/12,5/12,7/12,11/12])) H
Hypergeometric data for [1/8, 1/6, 3/8, 5/8, 5/6, 7/8] and [0, 1/12, 5/12, 1/2, 7/12, 11/12]

The degree of this Hodge structure is the integer nn.

In [3]:
n =; n

The minimal weight ww and the Hodge numbers are computed using the "zigzag function": Z(x):=#{k:αkx}#{k:βkx}. Z(x) := \#\{k: \alpha_k \leq x\} - \#\{k: \beta_k \leq x\}. To wit, the Hodge vector has ii-th component #{j{1,,n}:Z(βj)mink{Z(βk)}=i} \#\{j \in \{1,\dots,n\}: Z(\beta_j)-\min_k\{Z(\beta_k)\} = i\} and ww is the largest ii for which this component is nonzero. (Note: nwnw is always even.)

In [4]:
w = H.weight(); w
In [5]:
[2, 2, 2]

For tt in a number field KK, the LL-function of the hypergeometric motive (without completion by archimedean factors) has the form pLp(Norm(p)s)1\prod_{\mathfrak{p}} L_{\mathfrak{p}}(\mathrm{Norm}(\mathfrak{p})^{-s})^{-1} where for each finite place p\mathfrak{p} of KK, Lp(T)L_{\mathfrak{p}}(T) is some polynomial of degree at most nn. We say that p\mathfrak{p} is good if:

  • p\mathfrak{p} does not divide the denominator of some member of α\underline{\alpha} or β\underline{\beta} (otherwise p\mathfrak{p} is wild);
  • vp(t)=vp(t1)=0v_{\mathfrak{p}}(t) = v_{\mathfrak{p}}(t-1) = 0 (otherwise p\mathfrak{p} is tame unless it is wild).

For p\mathfrak{p} good of absolute norm qq, the polynomial Lp(T)L_{\mathfrak{p}}(T) has the following properties.

  • The degree of Lp(T)L_{\mathfrak{p}}(T) is exactly nn.
  • The Hodge numbers, interpreted as slope multiplicities, give a lower bound on the Newton polygon of Lp(T)L_{\mathfrak{p}}(T) which is "usually" sharp. (This occurs when p\mathfrak{p} is an ordinary prime for this motive.)
  • There is a functional equation of the form Lp(T)=±Tnqnw/2Lp(qwT1) L_{\mathfrak{p}}(T) = \pm T^n q^{nw/2} L_{\mathfrak{p}}(q^{-w} T^{-1}) where the sign is given by an explicit formula (and it is always ++ if ww is odd).
  • Lp(T)L_{\mathfrak{p}}(T) is pure of weight ww: its roots in C\mathbb{C} all lie on the circle T=qw/2|T| = q^{-w/2}.
In [6]:
t0 = 3 p = 17 P.<T> = PolynomialRing(QQ) Lp = H.euler_factor(t0, p)(T)
In [7]:
show(Lp) show(T^n*p^(n*w/2)*Lp(1/(p^w*T)))
24137569T6+668168T553465T47752T3185T2+8T+124137569 T^{6} + 668168 T^{5} - 53465 T^{4} - 7752 T^{3} - 185 T^{2} + 8 T + 1
24137569T6+668168T553465T47752T3185T2+8T+124137569 T^{6} + 668168 T^{5} - 53465 T^{4} - 7752 T^{3} - 185 T^{2} + 8 T + 1
In [8]:
[(-0.0509543817618668 - 0.0293914714113240*I, 1), (-0.0509543817618668 + 0.0293914714113240*I, 1), (-0.0214702716789809 - 0.0547652722670809*I, 1), (-0.0214702716789809 + 0.0547652722670809*I, 1), (0.0585838229910207 - 0.00530502556200247*I, 1), (0.0585838229910207 + 0.00530502556200247*I, 1)]
In [9]:
print([i.abs()^(-2) for i,_ in Lp.roots(CC)])
[289.000000000000, 289.000000000000, 289.000000000000, 289.000000000000, 289.000000000000, 289.000000000000]

The computation of Lp(T)L_p(T) in Sage or Magma uses a certain trace formula which we now describe briefly.

3. Trace formulas for hypergeometric motives

For p\mathfrak{p} good, lying over the rational prime pp, we can interpret Lp(T)=det(1TFp) L_{\mathfrak{p}}(T) = \det(1 - T F_{\mathfrak{p}}) where FpF_{\mathfrak{p}} is an endomorphism of a certain nn-dimensional vector space VV over a field of characteristic 0. To compute Lp(T)L_{\mathfrak{p}}(T), it would be equivalent to compute Trace(Fpi)\mathrm{Trace}(F_{\mathfrak{p}}^i) for i=1,,n/2i=1,\dots,\lfloor n/2 \rfloor (and then use the functional equation). For q=Norm(p)iq = \mathrm{Norm}(\mathfrak{p})^i, denote this trace by Hq(α,βt)H_q(\underline{\alpha}, \underline{\beta}|t).

In [BCM], an explicit formula for Hq(α,βt)H_q(\underline{\alpha}, \underline{\beta}|t) is given in terms of Gauss sums; we will not recall the details here. Using the Gross-Koblitz formula, one can convert this into a formula in terms of the pp-adic Gamma function Γp\Gamma_p; this formula is used for the computation of Lp(T)L_{\mathfrak{p}}(T) in both Magma and Sage. See the Magma documentation or Mark Watkins's writeup for further details (with caution about normalizations; see above).

One key feature of the formula in question is that it involves a sum over q1q-1 terms. This becomes prohibitive for nn large. (Magma's implementation is noticeably more efficient than Sage, but the general point applies either way.)

4. Frobenius structures and L-functions

A possible alternative to the hypergeometric trace formula is to compute the Frobenius structure on the hypergeometric equation induced by the motivic construction. This approach has previously been used (notably by Lauder) in the computation of zeta functions of algebraic varieties over finite fields, where it is commonly known as the deformation method. However, for a given family of varieties, the complexity of the method depends strongly on the number of singularities of the associated Picard-Fuchs equation; thus hypergeometric motives provide a particularly favorable scenario for this approach.

As noted earlier, Lp(T)L_{\mathfrak{p}}(T) can be interpreted as det(1TFp)\det(1 - T F_{\mathfrak{p}}) where FpF_{\mathfrak{p}} is a certain endomorphism of a certain finite-dimensional vector space VV over a certain field KK of characteristic 0. There are in fact multiple natural constructions that give rise to such data (known as Weil cohomology theories).

  • The most widely known is étale cohomology, in which KK may be taken to be Q\mathbb{Q}_{\ell} for any prime p\ell \neq p.
  • However, there are also several related constructions of pp-adic Weil cohomology in which KK is either Qp\mathbb{Q}_p or an unramified extension thereof; these include Dwork cohomology and (rational) crystalline cohomology. (The latter is a special case of rigid cohomology, which also includes Monsky-Washnitzer cohomology as another special case.)

While étale cohomology is often favored over pp-adic cohomology because its foundations are somewhat more developed, this gap has closed dramatically in recent years. Moreover, for computational applications it is generally much easier to work with pp-adic cohomology.

The approach we describe for computing Lp(T)L_{\mathfrak{p}}(T) involves computing (to suitable pp-adic precision) the matrix of action of FpF_{\mathfrak{p}} on a particular basis of pp-adic cohomology. We exploit the fact that this matrix arises by specialization from a pp-adic analytic family of matrices closely related to the hypergeometric equation; this is the Frobenius structure in the title.

5. Frobenius structures on hypergeometric equations

In order to describe Frobenius structures on a hypergeometric differential equation 0=1t1(ti=1n(D+αi)i=1n(D+βi1))(y)=Dn+a0Dn1++an1 0 = \frac{1}{t-1}\left( t \prod_{i=1}^n (D + \alpha_i) - \prod_{i=1}^n (D + \beta_i - 1) \right) (y) = D^n + a_0 D^{n-1} + \cdots + a_{n-1} we introduce the companion matrix N=(010000000001a0a1an2an1). N = \begin{pmatrix} 0 & -1 & \cdots & 0 & 0 \\ 0 & 0 & & 0 & 0 \\ \vdots & & \ddots & & \vdots \\ 0 & 0 & & 0 & -1 \\ a_0 & a_1 & \cdots & a_{n-2} & a_{n-1} \end{pmatrix}.

In [10]:
def companion_matrix(l): n = len(l) matlist = [[0 for j in range(n)] for i in range(n)] for i in range(n-1): matlist[i][i+1] = -1 for i in range(n): matlist[n-1][i] = l[i] return(matrix(matlist))
In [11]:
alpha, beta = H.alpha_beta() show(alpha, beta)
[18,16,38,58,56,78][0,112,512,12,712,1112]\left[\frac{1}{8}, \frac{1}{6}, \frac{3}{8}, \frac{5}{8}, \frac{5}{6}, \frac{7}{8}\right] \left[0, \frac{1}{12}, \frac{5}{12}, \frac{1}{2}, \frac{7}{12}, \frac{11}{12}\right]
In [12]:
R.<t> = PolynomialRing(QQ) pol2.<D> = PolynomialRing(R.fraction_field()) diffop = (t*prod(D+a for a in alpha) - prod(D+b-1 for b in beta))/(t-1) N = companion_matrix(diffop.list()[:-1]) show(N)
(01000000100000010000001000000117549152t38541472t1270536864t+259313824t12049736864t2400120736t1283144t+475144t11003288t34772t13t+72t1)\left(\begin{array}{rrrrrr} 0 & -1 & 0 & 0 & 0 & 0 \\ 0 & 0 & -1 & 0 & 0 & 0 \\ 0 & 0 & 0 & -1 & 0 & 0 \\ 0 & 0 & 0 & 0 & -1 & 0 \\ 0 & 0 & 0 & 0 & 0 & -1 \\ \frac{\frac{175}{49152} t - \frac{385}{41472}}{t - 1} & \frac{\frac{2705}{36864} t + \frac{2593}{13824}}{t - 1} & \frac{\frac{20497}{36864} t - \frac{24001}{20736}}{t - 1} & \frac{\frac{283}{144} t + \frac{475}{144}}{t - 1} & \frac{\frac{1003}{288} t - \frac{347}{72}}{t - 1} & \frac{3 t + \frac{7}{2}}{t - 1} \end{array}\right)

For a Galois-stable datum, a Frobenius structure on NN is an n×nn \times n matrix FF satisfying NFpFσ(N)+D(F)=0 NF - pF \sigma(N) + D(F) = 0 where σ\sigma is the substitution ttpt \mapsto t^p. Geometrically, this amounts to giving an isomorphism of the connection associated to NN with its σ\sigma-pullback.

The catch is that the entries of FF will not be in Q(t)\mathbb{Q}(t); rather, they will be rigid analytic functions on a certain subspace of PQp1\mathbf{P}^1_{\mathbb{Q}_p}. More precisely:

  • FF is holomorphic away from the residue discs containing 0,1,0,1,\infty;
  • FF is meromorphic at 00 and \infty, with no further singularities in those discs;
  • in the residue disc at 1, FF is holomorphic away from a certain subdisc containing the pp-th roots of 1.

For the purpose of representing a pp-adic approximation of FF to suitable accuracy, we may use a rational function with poles at 0,μp,0,\mu_p,\infty.

In the general case, we must modify this definition slightly to assert that NFpFσ(N)+D(F)=0 N'F - pF \sigma(N) + D(F) = 0 where NN' is the companion matrix associated to the datum pα(mod1),pβ(mod1)p\underline{\alpha} \pmod{1}, p\underline{\beta} \pmod{1}.

Such a Frobenius structure always exists and is unique up to a Qp\mathbb{Q}_p-scalar. In the Galois-stable case, there is a unique normalization with the following property: for tt in the unramified extension Qpk\mathbb{Q}_{p^k}, the matrix of FpF_{\mathfrak{p}} on a suitable basis is given by i=0k1F([t]pi) \prod_{i=0}^{k-1} F([\overline{t}]^{p^{i}}) where t\overline{t} is the reduction mod pp and [t][\overline{t}] is the Teichmüller lift. In particular, if K=QK = \mathbb{Q} then the matrix we want is simply F([t])F([\overline{t}]). (But even if KQK \neq \mathbb{Q}, the computation of FF takes place over Qp\mathbb{Q}_p.)

By results of [Dw], there exists a Frobenius structure which is locally analytic in α,β\underline{\alpha}, \underline{\beta} (with analyticity on mod-pp residue classes), and again this is unique up to normalization. However, I have not confirmed that there is a choice of normalization which specializes to the geometric normalization in all Galois-stable cases.

7. Computing the Frobenius structure: multiplicity-free case

The commutation relation between FF and NN amounts to a differential equation on the entries of FF, which we can solve using the known solutions of the hypergeometric equation plus an initial condition. Let us demonstrate this in the case where the original datum is Galois-stable and β\underline{\beta} is multiplicity-free, i.e., β1,,βn\beta_1,\dots,\beta_n are pairwise distinct.

In this case, we obtain a full basis (t1βiyi:i=1,,n)(t^{1-\beta_i} y_i: i=1,\dots,n) of solutions of the hypergeometric equation in the Puiseux field by taking yi:=j=1n(αjβi)+(βjβi)+nFn1(α1βi+1,,αnβi+1