FLINT3.7.0-dev

acb_dirichlet_jacobi_sum, acb_dirichlet_jacobi_sum_naive, acb_dirichlet_jacobi_sum_factor, acb_dirichlet_jacobi_sum_gauss, acb_dirichlet_jacobi_sum_ui

Synopsis#include <flint/acb_dirichlet.h>
void acb_dirichlet_jacobi_sum(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi1, const dirichlet_char_t chi2, slong prec)source
void acb_dirichlet_jacobi_sum_naive(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi1, const dirichlet_char_t chi2, slong prec)source
void acb_dirichlet_jacobi_sum_factor(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi1, const dirichlet_char_t chi2, slong prec)source
void acb_dirichlet_jacobi_sum_gauss(acb_t res, const dirichlet_group_t G, const dirichlet_char_t chi1, const dirichlet_char_t chi2, slong prec)source
void acb_dirichlet_jacobi_sum_ui(acb_t res, const dirichlet_group_t G, ulong a, ulong b, slong prec)source

Set res to the Jacobi sum J_q(\chi_1, \chi_2) = \sum_{x \bmod q} \chi_1(x) \chi_2(1-x). The naive version sums the definition; factor writes it as a product of local Jacobi sums; gauss assumes that \chi_1 \chi_2 is primitive and uses J_q(\chi_1, \chi_2) G_q(\chi_1\chi_2) = G_q(\chi_1) G_q(\chi_2). The default version handles trivial and inverse pairs by closed formulas (and returns 0 for even q) and otherwise chooses among the methods. The ui version takes the Conrey numbers a and b.

Cite this page

The FLINT team, “acb_dirichlet_jacobi_sum, acb_dirichlet_jacobi_sum_naive, acb_dirichlet_jacobi_sum_factor, acb_dirichlet_jacobi_sum_gauss, acb_dirichlet_jacobi_sum_ui (acb_dirichlet.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/acb_dirichlet/acb_dirichlet_jacobi_sum.html (generated 2026-10-20).