1- from flint.flintlib.types.flint cimport ulong, slong
2- from flint.flintlib.nmod cimport nmod_t
1+ from flint.flintlib.types.dirichlet cimport dirichlet_char_t, dirichlet_group_t
2+ from flint.flintlib.types.flint cimport slong, ulong
33
4- cdef extern from " flint/dirichlet.h" :
5- ctypedef struct dirichlet_group_struct:
6- ulong q
7- ulong q_even
8- nmod_t mod
9- ulong rad_q
10- ulong phi_q
11- long neven
12- long num
13- ulong expo
14- void * P
15- ulong * generators
16- ulong * PHI
17- ctypedef dirichlet_group_struct dirichlet_group_t[1 ]
184
19- ctypedef struct dirichlet_char_struct:
20- ulong n
21- ulong * log
22- ctypedef dirichlet_char_struct dirichlet_char_t[1 ]
235
24- # from here on is parsed
6+ cdef extern from " flint/dirichlet.h " :
257 int dirichlet_group_init(dirichlet_group_t G, ulong q)
268 void dirichlet_subgroup_init(dirichlet_group_t H, const dirichlet_group_t G, ulong h)
279 void dirichlet_group_clear(dirichlet_group_t G)
2810 ulong dirichlet_group_size(const dirichlet_group_t G)
2911 ulong dirichlet_group_num_primitive(const dirichlet_group_t G)
3012 void dirichlet_group_dlog_precompute(dirichlet_group_t G, ulong num)
31- void dirichlet_group_dlog_clear(dirichlet_group_t G, ulong num )
13+ void dirichlet_group_dlog_clear(dirichlet_group_t G)
3214 void dirichlet_char_init(dirichlet_char_t chi, const dirichlet_group_t G)
3315 void dirichlet_char_clear(dirichlet_char_t chi)
3416 void dirichlet_char_print(const dirichlet_group_t G, const dirichlet_char_t chi)
@@ -53,9 +35,6 @@ cdef extern from "flint/dirichlet.h":
5335 ulong dirichlet_order_char(const dirichlet_group_t G, const dirichlet_char_t x)
5436 int dirichlet_char_is_real(const dirichlet_group_t G, const dirichlet_char_t chi)
5537 int dirichlet_char_is_primitive(const dirichlet_group_t G, const dirichlet_char_t chi)
56-
57- cdef ulong DIRICHLET_CHI_NULL
58-
5938 ulong dirichlet_pairing(const dirichlet_group_t G, ulong m, ulong n)
6039 ulong dirichlet_pairing_char(const dirichlet_group_t G, const dirichlet_char_t chi, const dirichlet_char_t psi)
6140 ulong dirichlet_chi(const dirichlet_group_t G, const dirichlet_char_t chi, ulong n)
0 commit comments