from sage.modular.dirichlet import DirichletCharacter
H = DirichletGroup(163, base_ring=CyclotomicField(162))
M = H._module
chi = DirichletCharacter(H, M([11]))
pari: [g,chi] = znchar(Mod(92,163))
χ163(2,⋅)
χ163(3,⋅)
χ163(7,⋅)
χ163(11,⋅)
χ163(12,⋅)
χ163(18,⋅)
χ163(19,⋅)
χ163(20,⋅)
χ163(29,⋅)
χ163(32,⋅)
χ163(42,⋅)
χ163(44,⋅)
χ163(45,⋅)
χ163(50,⋅)
χ163(52,⋅)
χ163(63,⋅)
χ163(66,⋅)
χ163(67,⋅)
χ163(68,⋅)
χ163(70,⋅)
χ163(72,⋅)
χ163(73,⋅)
χ163(75,⋅)
χ163(76,⋅)
χ163(79,⋅)
χ163(80,⋅)
χ163(82,⋅)
χ163(89,⋅)
χ163(92,⋅)
χ163(94,⋅)
...
order = charorder(g,chi)
[ charpow(g,chi, k % order) | k <-[1..order-1], gcd(k,order)==1 ]
2 → e(16211)
a |
−1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
χ163(92,a) |
−1 | 1 | e(16211) | e(162139) | e(8111) | e(541) | e(2725) | e(162155) | e(5411) | e(8158) | e(817) | e(16231) |
pari: znchargauss(g,chi,a)
sage: chi.kloosterman_sum(a,b)