Karim Belabas on Sat, 30 Dec 2023 15:35:53 +0100


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: Dirichlet L series principal characters


Dear Rudolph,

  as documented in ??13 (or ?? "L-function"), only "primitive" L-functions
are supported by PARI's implementation.

In particular for Dirichlet L-function (and more generally Hecke
L-functions), a character given to any modulus encodes the attached
*primitive* character. Thus all principal characters will yield the
L-function attached to the trivial character mod 1, i.e., the Riemann
zeta function.

The Dirichlet L-function attached to the actual non-primitive character
mod N differs from the primitive one (of conductor F) by a simple finite
Euler product

  \prod_{p | N, p \nid F} (1 - \chi(p) p^{-s})

Just multiply the value returned by lfun() by this factor
(you may precompute the \chi(p)...).

If you're only interested in principal characters mod N, this is as
simple as

  P = factor(N)[1,]; \\ can be precomputed

  ZetaN(P, s) = zeta(s) * prod(j = 1, #P, 1 - P[j]^(-s));

Cheers,

      K.B.

* ra.dwars@quicknet.nl [2023-12-30 15:04]:
>    Dear developers,
> 
> 
>    I’d like to generate Dirichlet L-functions and used for instance:
> 
> 
>    default(realprecision,30)
> 
>    p = 2; q = 3;
> 
>    L =lfuncreate(Mod(p,q));
> 
>    print(lfun(L,2));
> 
> 
>    This method works well for all non-principal characters, however seems
>    to fail for the principal ones with q > 1:
> 
> 
>    default(realprecision,30)
> 
>    p = 1; q = 3;
> 
>    L =lfuncreate(Mod(p,q));
> 
>    print(lfun(L,2));
> 
> 
>    1.64493406684822643647241516665 = (pi^2)/6
> 
>    which should be:
> 
>    1.46216361497620127686436903702 = (4*pi^2)/27
> 
> 
>    It always seems to default to the zeta-function even when the modulus
>    is greater than 1.
> 
> 
>    Maybe I do something wrong here and is the Mod(p,q) not allowed for
>    principal characters. Keen to learn how to obtain the right outcome.
> 
> 
>    Thanks,
> 
>    Rudolph
-- 
Pr. Karim Belabas, U. Bordeaux, Vice-président en charge du Numérique
Institut de Mathématiques de Bordeaux UMR 5251 - (+33) 05 40 00 29 77
http://www.math.u-bordeaux.fr/~kbelabas/