GiNaC goes elliptic (numerical evaluation of elliptic multiple polylogarithms)

Stefan Weinzierl Institut f¨ur Physik, Universitat¨ Mainz

in collaboration with M. Walden and based on previous work with L. Adams, Ch. Bogner, I. Honemann,¨ K. Tempest and A. Schweitzer

I: Review: Multiple polylogarithms in GiNaC II: Background: Elliptic curves III: Implementation: Evaluation of elliptic multiple polylogarithms Introduction

Physics is about numbers

A mathematical physicist thinks about

ζ3

An experimental physicist thinks about

1.2020569031 ± 2 · 10−10 GiNaC

GiNaC was initiated in 1999 by Ch. Bauer, A. Frink and R. Kreckel at the University of Mainz.

Despite it’s name, it is a system. Allows symbolic calculations in C++.

Shipped with major linux distributions (Ubuntu, Debian, Fedora, ...).

Available at http://www.ginac.de.

GiNaC contains a sub-package to evaluate multiple polylogarithms with arbitrary precision. J. Vollinga, S.W., (2004) Multiple polylogarithms

Definition based on iterated integrals:

y t1 tk−1 dt1 dt2 dtk G(z1,...,zk;y) = ... , zk 6= 0 Z t1 − z1 Z t2 − z2 Z tk − zk 0 0 0

Definition based on nested sums: ∞ xn1 xn2 xnk Li (x ,x ,...,x ) = 1 · 2 · ... · k m1,m2,...,mk 1 2 k ∑ nm1 nm2 nmk n1>n2>...>nk>0 1 2 k

Conversion: 1 1 1 Li (x ,...,x ) = (−1)kG , ,..., ;1 m1,...,mk 1 k m1,...,mk x x x x ...x  1 1 2 1 k 

Short hand notation:

Gm1,...,mk(z1,...,zk;y) = G(0,...,0,z1,...,zk−1,0...,0,zk;y) m1−1 mk−1 | {z } | {z } Trailing zeros

We may slightly extend the definition of multiple polylogarithms and allow trailing zeros:

1 G(0,...,0;y) = lnr (y) r! r and define recursively | {z }

y dt1 G(z1,z2,...,zr;y) = G(z2,...,zr;t1). Z t1 − z1 0 Example

ginsh - GiNaC Interactive Shell (GiNaC V1.7.10) __, ______Copyright (C) 1999-2020 Johannes Gutenbergversity Uni Mainz, (__) * | Germany. This is with ABSOLUTELYRANTY. NO WAR ._) i N a C | You are welcome to redistribute it under certainnditions. co <------’ For details type ‘warranty;’.

Type ?? for a list of help topics. > Digits=50; 50 > evalf(G({0,0,1},1)); -1.202056903159594285399738161511449990764986292340498881794 Why arbitrary precision?

The PSLQ algorithm can be used to find integer relatios among a set of transcendental numbers. Ferguson, Bailey, (1992)

This can be used to fix and to simplify boundary constants for Feynman integrals.

This requires that the transcendental numbers are known to sufficient high precision (a few hundred digits). Special cases

The multiple polylogarihms contain as subsets the classical polylogarithms

Lin(x),

Nielsen’s generalized polylogarithms

Sn,p(x) = Lin+1,1,...,1(x,1,...,1), p−1 the harmonic polylogarithms of Remiddi and Vermaseren| {z }

Hm1,...,mk(x) = Lim1,...,mk(x,1,...,1). k−1 | {z } Part II

Elliptic curves Elliptic curves

Let ψ1 and ψ2 be two complex numbers with Im(ψ2/ψ1) 6= 0.

Elliptic curve represented by

y Im z

x Re z

Weierstrass normal form Torus Real Riemann surface of genus one 2 3 C y = 4x − g2x − g3 /Λ with one marked point Bases of lattices

The periods ψ1 and ψ2 generate a lattice. Any other basis as good as (ψ2,ψ1). Convention: Normalise (ψ2,ψ1) → (τ,1) where τ = ψ2/ψ1.

τ τ′

1

′ ψ2 a b ψ2 Change of basis: ′ = , ψ c d ψ1  1     a b Transformation should be invertible: ∈ SL (Z), c d 2   aτ + b In terms of τ and τ′: τ′ = cτ + d Modular forms

Denote by H the complex upper half plane. A meromorphic function f : H → C is a modular form of modular weight k for SL2(Z) if

(i) f transforms under Mobius¨ transformations as

aτ + b a b f =(cτ + d)k · f (τ) for ∈ SL (Z) cτ + d c d 2    

(ii) f is holomorphic on H,

(iii) f is holomorphic at ∞. Congruence subgroups

Apart from SL2(Z) we may also look at congruence subgroups, for example

a b Γ (N)= ∈ SL (Z) : c ≡ 0 mod N 0 c d 2    a b Γ (N)= ∈ SL (Z) : a,d ≡ 1 mod N, c ≡ 0 mod N 1 c d 2    a b Γ(N)= ∈ SL (Z) : a,d ≡ 1 mod N, b,c ≡ 0 mod N c d 2    Modular forms for congruence subgroups: Require “nice” transformation properties only for subgroup Γ (plus holomorphicity on H and at the cusps). Dirichlet character

Let N be a positive integer. A function χ : Z → C is called a Dirichlet character modulo N, if

(i) χ(n)= χ(n + N) ∀n ∈ Z,

(ii) χ(n)= 0 if gcd(n,N) > 1 and χ(n) 6= 0 if gcd(n,N)= 1,

(iii) χ(nm)= χ(n)χ(m) ∀ n,m ∈ Z.

The conductor of χ is the smallest positive divisor d|N such that there is a character χ′ modulo d with

χ(n)= χ′(n) ∀ n ∈ Z with gcd(n,N)= 1. The Kronecker symbol

α1 α2 αk Let a be an integer and n a non-zero integer with prime factorisation n = up1 p2 ...pk , where u ∈ {1,−1} is a unit. The Kronecker symbol is defined by

a a a α1 a α2 a αk = ... . n u p1 p2 pk          If a is the discriminant of a quadratic field, then it is a primitive Dirichlet character with conductor |a|.

Including the trivial character (for which a = 1) the possible values for a with smallest absolute value are

1,−3,−4,5,−7,8,−8,−11,12,... Modular forms with character

We may relax the transformation law:

Let N be a positive integer and let χ be a Dirichlet character modulo N. A function f : H → C is a modular form of weight k for Γ0(N) with character χ if

(i) f is holomorphic on H,

(ii) f is holomorphic at the cusps of Γ1(N),

aτ + b a b (iii) f = χ(d)(cτ + d)k f (τ) for ∈ Γ (N). cτ + d c d 0     The space of modular forms

• The modular forms for a given congruence subgroup form a vectorspace.

• This vectorspace is finite dimensional.

• It decomposes into a subspace of cusp forms and the Eisenstein subspace.

• We have

Mk(Γ1(N)) = Mk(N,χ) Mχ

and similar for the subspace of cusp forms and the Eisenstein subspace.

• Basis of Eisenstein subspace Ek(N,χ) given in terms of generalised Eisenstein series. Generalised Eisenstein series

Let a be the discriminant of a quadratic field. The Kronecker symbol defines then a primitive Dirichlet character

a χ (n) = a n   Set

∞ k−1 n 2πiτ Ek,a,b (τ) = a0 + ∑ ∑ χa(n/d) · χb(d) · d q¯ , q¯ = e n=1 d|n !

Generalised Eisenstein series:

Ek,a,b (Kτ), (k,a,b) 6=(2,1,1), K ≥ 1, Ek,a,b,K (τ) = E2 1 1 (τ) − KE2 1 1 (Kτ), (k,a,b)=(2,1,1), K > 1.  , , , , Iterated integrals of modular forms

Iterated integrals of modular forms:

τ τ1 τn−1 I ( f , f ,..., f ;q) = (2πi)n dτ f (τ ) dτ f (τ )... dτ f (τ ) 1 2 n Z 1 1 1 Z 2 2 2 Z n n n τ0 τ0 τ0

An integral over a modular form is in general not a modular form. Analogy: An integral over a rational function is in general not a rational function. The Kronecker function

The first Jacobi theta function θ1(z,q):

∞ 2 n (n+1) i(2n+1)z iπτ θ1 (z,q) = −i ∑ (−1) q 2 e , q = e n=−∞

The Kronecker function F(z,α,τ):

∞ ′ θ1 (π(z + α),q) 1 (k) k F (z,α,τ) = πθ1 (0,q) = ∑ g (z,τ)α , θ1 (πz,q)θ1 (πα,q) α k=0

We are mainly interested in the coefficients g(k)(z,τ) of the Kronecker function. The coefficients g(k)(z,τ) of the Kronecker function

Properties of g(k)(z,τ):

- only simple poles as a function of z

- quasi-periodic as a function of z: Periodic by 1, quasi-periodic by τ.

- almost modular: Nice modular transformation properties only spoiled by divergent Eisenstein series E1(z,τ).

Brown, Levin, ’11, Broedel, Duhr, Dulat, Penante, Tancredi, ’18 Can we have the full cake and eat it?

No, it is not possible to have integration kernels, which are

• double periodic

• meromorphic

• only simple poles Elliptic polylogarithms (Γ˜ -version )

Elliptic polylogarithms (meromorphic version, simple poles, but not double periodic)

z n1 ... nk ′ (n ) ′ n2 ... nk ′ Γ( z z ;z;τ) = dz g 1 (z − z ,τ) Γ( z z ;z ;τ) 1 ... k Z 1 2 ... k 0 e e Broedel, Duhr, Dulat, Tancredi, ’17

Note: τ = const Moduli spaces

Mg,n: Space of isomorphism classes of smooth (complex, algebraic) curves of genus g with n marked points.

Recall:

z1 z1 z3 ⇔ z2 complex curve real surface z2 z3

z1 z1 z3 ⇔ z2 z2 z3 Coordinates

Genus 0: dimM0,n = n − 3. Sphere has a unique shape Use Mobius¨ transformation to fix zn−2 = 1, zn−1 = ∞, zn = 0 Coordinates are (z1,...,zn−3)

Genus 1: dimM1,n = n. One coordinate describes the shape of the torus Use translation to fix zn = 0 Coordinates are (τ,z1,...,zn−1) In particular:

dimM1,1 = 1 with coordinate τ, (equal mass sunrise) dimM1,3 = 3 with coordinates τ,z1,z2, (unequal mass sunrise). The ELi-functions

Recall the definition of the classical polylogarithms:

∞ x j Lin (x) = ∑ n . j=1 j

Generalisation, the two sums are coupled through the variable q:

∞ ∞ j k x y jk ELin;m (x;y;q) = ∑ ∑ n m q . j=1 k=1 j k

Define the linear combinations

n+m −1 −1 En;m (x;y;q) = ELin;m (x;y;q) − (−1) ELin;m x ;y ;q .  Expansion of the coefficients of the Kronecker function

(n) The functions En;m are helpful for the q¯-expansion of the functions g (z,τ). Explicitly one has with q¯ = exp(2πiτ) and w¯ = exp(2πiz)

g(0) (z,τ) = 1, 1 + w¯ g(1) (z,τ) = −2πi + E (w¯;1;q ¯) , 2(1 − w¯) 0,0   (2πi)k B g(k) (z,τ) = − − k + E (w¯;1;q ¯) , k > 1, (k − 1)! k 0,1−k   where Bk denote the k-th Bernoulli number. More variants of elliptic polylogarithms

Some authors consider iterated integrals of the form

y0 dyf (y)G(z ,...,z ;y), Z 1 k−1 0 where only the outermost integration is non-polylogarithmic, for example

1 f (y) = (y − z1)(y − z2)(y − z3)(y − z4)

Remiddi, Tancredi, ’17; p Bourjaily, McLeod, Spradlin, von Hippel, Wilhelm, ’17; Hidding, Moriello, ’17; Part III

Evaluation of elliptic multiple polylogarithms Iterated integrals

For ω1, ..., ωk differential 1-forms on a manifold M and γ : [0,1] → M a path, write for the pull-back of ω j to the interval [0,1]

∗ f j (λ)dλ = γ ω j.

The iterated integral is defined by (Chen ’77)

λ λ1 λk−1 I (ω ,...,ω ;λ) = dλ f (λ ) dλ f (λ )... dλ f (λ ). γ 1 k Z 1 1 1 Z 2 2 2 Z k k k 0 0 0 Shuffle product and trailing zeros

Let λ0 ∈ R>0 and denote by U the domain U = {z ∈ C||z|≤ λ0}. Let us assume that all ω j are holomorphic in U\{0} and have at most a simple pole at z = 0. In other words

∞ n−1 C ω j = f j (z)dz = ∑ c j,n z dz, c j,n ∈ . n=0

We say that ω j has a trailing zero, if c j,0 6= 0.

We may use shuffle product regularisation / tangential base point as in the case of multiple polylogarithms. Integration kernels

• Kernels related to g(k)(z,τ):

Kronecker_dtau_kernel(k, z_j); Kronecker_dz_kernel(k,z_j, tau);

• Kernels related to modular forms:

Eisenstein_kernel(k, a, b, K); modular_form_kernel(k,qbar); P,

• Kernels related to ELi-functions:

ELi_kernel(n, m, x, y); Ebar_kernel(n, m, x, y);

• User-defined kernels:

user_defined_kernel(f, y); Example

Digits = 50; ex tau = 10*I; ex qbar = evalf(exp(2*Pi*I*tau)); ex z = 0.9; ex g_2 = Kronecker_dtau_kernel(2,z); ex g_3 = Kronecker_dtau_kernel(3,z); std::cout << iterated_integral(lst{g_3,g_2},qbar).evalf() << std::endl;

3.2253571394850843286565907071596312651610339124775388346726E-27 -4.370890856300573854123107098377978052316020623730771456153E-85*I Conclusions

• At the end we want a number!

• Numerical evaluations with arbitrary precision helpful for PSLQ algorithm.

• Implementation of functions related to elliptic Feynman integrals in GiNaC.