acb_dirichlet_gauss_sum, acb_dirichlet_gauss_sum_naive, acb_dirichlet_gauss_sum_factor, acb_dirichlet_gauss_sum_order2, acb_dirichlet_gauss_sum_theta
#include <flint/acb_dirichlet.h>void acb_dirichlet_gauss_sum(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi, slong prec)sourcevoid acb_dirichlet_gauss_sum_naive(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi, slong prec)sourcevoid acb_dirichlet_gauss_sum_factor(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi, slong prec)sourcevoid acb_dirichlet_gauss_sum_order2(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi, slong prec)sourcevoid acb_dirichlet_gauss_sum_theta(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi, slong prec)sourceSet res to the Gauss sum . The naive version sums the definition; factor writes the sum as a product of local Gauss sums by the Chinese remainder theorem; order2 assumes that is real and primitive and returns ; theta assumes that is primitive and obtains the sum from the functional equation of the theta series at . The default version reduces an imprimitive character to the primitive one inducing it and then chooses among the methods.
For an imprimitive modulo induced by of conductor , .
The theta method fails when the theta series vanishes at . Only four characters are known with this property, , , and , and none with prime power modulus; acb_dirichlet_gauss_sum_theta throws an exception for them and for imprimitive characters.
The FLINT team, “acb_dirichlet_gauss_sum, acb_dirichlet_gauss_sum_naive, acb_dirichlet_gauss_sum_factor, acb_dirichlet_gauss_sum_order2, acb_dirichlet_gauss_sum_theta (acb_dirichlet.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/acb_dirichlet/acb_dirichlet_gauss_sum.html (generated 2026-11-02).
@misc{flint-doc-acb-dirichlet-acb-dirichlet-gauss-sum,
author = {{The FLINT team}},
title = {{acb\_dirichlet\_gauss\_sum, acb\_dirichlet\_gauss\_sum\_naive, acb\_dirichlet\_gauss\_sum\_factor, acb\_dirichlet\_gauss\_sum\_order2, acb\_dirichlet\_gauss\_sum\_theta (acb\_dirichlet.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/acb_dirichlet/acb_dirichlet_gauss_sum.html},
note = {Generated 2026-11-02}
}