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.