Theta Functions

One of the main tools for working with analytic Jacobians is the theta function. For instance it is used by FromAnalyticJacobian and RosenhainInvariants. For \(c \in {\mathbb{R}}^{2g}\) let \(c'\) be the first \(g\) entries and \(c''\) the second \(g\) entries of \(c\). For such a \(c\), \(z \in {\mathbb{C}}^g\) and \(\tau\) an element of Siegel upper half-space the classical multi-variable theta function is defined by

\[\theta[c](z,\tau) = \sum_{m \in {\mathbb{Z}}^g} \exp (\pi i {}^t(m+c')\tau(m+c') + 2\pi i {}^t(m+c')(z+c'')).\]

The vector \(c\) is called the characteristic of the theta function.

Theta(char, z, tau): Mtrx, Mtrx, Mtrx -> FldComElt

This computes the multidimensional theta function with characteristic char (a \(2g \times 1\) matrix) at \(z\) (a \(g \times 1\) matrix) and \(\tau\) (a symmetric \(g \times g\) matrix with positive definite imaginary part).

Theta(char, z, A): Mtrx, Mtrx, AnHcJac -> FldComElt

This computes the multidimensional theta function with characteristic char (a \(2g \times 1\) matrix) at \(z\) (a \(g \times 1\) matrix) and \(\tau\), the small period matrix of the analytic Jacobian \(A\). This function caches the values of theta null values (\(z = 0\)) at half-integer characteristics.