FLINT3.7.0-dev

acb_theta_ql_lower_dim

Synopsis#include <flint/acb_theta.h>
int acb_theta_ql_lower_dim(acb_ptr * new_zs, acb_ptr * cofactors, slong ** pts, slong * nb, arf_t err, slong * fullprec, acb_srcptr z, const acb_mat_t tau, arb_srcptr distances, slong s, ulong a, slong prec)source

Implements the dimension-lowering step: writes the normalised theta values \widetilde{\theta}_{a',0}(z, \tau) whose last g - s bits of a' equal a as short linear combinations of theta values in dimension s (1 \le s < g). The pair (z,\tau) should be exact (and ideally reduced), and distances its output of acb_theta_eld_distances.

The outputs are:

  • fullprec: the precision at which the theta values in dimension s must be computed, prec plus guard bits from the largest relevant distance;
  • err: the tail bound of acb_theta_sum_radius at precision fullprec for a squared radius R^2 (the ellipsoid itself is not computed);
  • pts, nb: writing a' = (a_0, a) and n = (n_0, n_1) with n_0 \in \mathbb{Z}^s + \tfrac{a_0}{2}, n_1 \in \mathbb{Z}^{g - s} + \tfrac{a}{2}, the possible n_1 lie in an ellipsoid of squared radius R^2 in dimension g - s whose Cholesky matrix is the lower right block of that of \pi Y; its points n_1 - \tfrac a2 are listed in pts (allocated by the function) and their number in nb;
  • new_zs, cofactors: writing \tau = \begin{pmatrix} \tau_0 & x\\x^T & \tau_1\end{pmatrix} and z = (z_0, z_1), the terms of the series with a given n_1 sum to e^{\pi i (n_1^T \tau_1 n_1 + 2 n_1^T z_1)} e^{\pi (y_0^T Y_0^{-1} y_0 - y^T Y^{-1} y)} \widetilde{\theta}_{a_0,0}(z_0 + x n_1, \tau_0); new_zs (allocated) receives the nb vectors z_0 + x n_1 (still exact) and cofactors (allocated) the exponential factors.

The caller frees new_zs, cofactors and pts. The return value is 0 if the computation fails (for instance if the ellipsoid cannot be computed), and 1 otherwise.

Cite this page

The FLINT team, “acb_theta_ql_lower_dim (acb_theta.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/acb_theta/acb_theta_ql_lower_dim.html (generated 2026-10-20).