1# distutils: libraries = gmp pari
2"""
3Declarations for non-inline functions from PARI.
4
5This file contains all declarations from headers/paridecl.h from
6the PARI distribution, except the inline functions which are in
7declinl.pxi (that file is automatically included by this file).
8
9
10AUTHORS:
11
12 - (unknown authors before 2010)
13
14 - Robert Bradshaw, Jeroen Demeyer, William Stein (2010-08-15):
15   Upgrade to PARI 2.4.3 (:trac:`9343`)
16
17 - Jeroen Demeyer (2010-08-15): big clean up (:trac:`9898`)
18
19 - Jeroen Demeyer (2014-02-09): upgrade to PARI 2.7 (:trac:`15767`)
20
21 - Jeroen Demeyer (2014-09-19): upgrade to PARI 2.8 (:trac:`16997`)
22
23"""
24
25#*****************************************************************************
26#  Distributed under the terms of the GNU General Public License (GPL)
27#  as published by the Free Software Foundation; either version 2 of
28#  the License, or (at your option) any later version.
29#                  http://www.gnu.org/licenses/
30#*****************************************************************************
31
32from __future__ import print_function
33
34from libc.stdio cimport FILE
35from cpython.getargs cimport va_list
36
37from .types cimport *
38
39
40cdef extern from *:     # PARI headers already included by types.pxd
41    char* PARIVERSION
42
43    # parierr.h
44    enum err_list:
45        e_SYNTAX, e_BUG
46        e_ALARM, e_FILE
47        e_MISC, e_FLAG, e_IMPL, e_ARCH, e_PACKAGE, e_NOTFUNC
48        e_PREC, e_TYPE, e_DIM, e_VAR, e_PRIORITY, e_USER
49        e_STACK, e_OVERFLOW, e_DOMAIN, e_COMPONENT
50        e_MAXPRIME
51        e_CONSTPOL, e_IRREDPOL, e_COPRIME, e_PRIME, e_MODULUS, e_ROOTS0
52        e_OP, e_TYPE2, e_INV
53        e_MEM
54        e_SQRTN
55        e_NONE
56
57    int warner, warnprec, warnfile, warnmem, warnuser
58
59    # paricast.h
60
61    long    mael2(GEN, long, long)
62    long    mael3(GEN, long, long, long)
63    long    mael4(GEN, long, long, long, long)
64    long    mael5(GEN, long, long, long, long, long)
65    long    mael(GEN, long, long)
66    GEN     gmael1(GEN, long)
67    GEN     gmael2(GEN, long, long)
68    GEN     gmael3(GEN, long, long, long)
69    GEN     gmael4(GEN, long, long, long, long)
70    GEN     gmael5(GEN, long, long, long, long, long)
71    GEN     gmael(GEN, long, long)
72    GEN     gel(GEN, long)
73    GEN     gcoeff(GEN, long, long)
74    long    coeff(GEN, long, long)
75    char*   GSTR(GEN)
76
77    # paricom.h
78
79    GEN     gen_1
80    GEN     gen_m1
81    GEN     gen_2
82    GEN     gen_m2
83    GEN     ghalf
84    GEN     gen_0
85    GEN     gnil
86    GEN     err_e_STACK
87    int     PARI_SIGINT_block, PARI_SIGINT_pending
88    void    NEXT_PRIME_VIADIFF(long, byteptr)
89    void    PREC_PRIME_VIADIFF(long, byteptr)
90    int     INIT_JMPm, INIT_SIGm, INIT_DFTm, INIT_noPRIMEm, INIT_noIMTm
91    int     new_galois_format, factor_add_primes, factor_proven
92    int     precdl
93    # The "except 0" here is to ensure compatibility with
94    # _pari_err_handle() in handle_error.pyx
95    int     (*cb_pari_err_handle)(GEN) except 0
96    int     (*cb_pari_handle_exception)(long) except 0
97    void    (*cb_pari_err_recover)(long)
98
99    # kernel/gmp/int.h
100
101    GEN     int_MSW(GEN z)
102    GEN     int_LSW(GEN z)
103    GEN     int_W(GEN z, long i)
104    GEN     int_W_lg(GEN z, long i, long lz)
105    GEN     int_precW(GEN z)
106    GEN     int_nextW(GEN z)
107
108    # paristio.h
109
110    extern pari_sp avma
111    struct _pari_mainstack "pari_mainstack":
112        pari_sp top, bot, vbot
113        size_t size, rsize, vsize, memused
114    extern _pari_mainstack* pari_mainstack
115    struct PariOUT:
116        void (*putch)(char)
117        void (*puts)(char*)
118        void (*flush)()
119    extern PariOUT* pariOut
120    extern PariOUT* pariErr
121    extern byteptr diffptr
122
123    ###############################################
124    #                                             #
125    # All declarations below come from paridecl.h #
126    #                                             #
127    ###############################################
128
129    # OBSOLETE
130    GEN     bernvec(long nomb)
131
132    # F2x.c
133
134    GEN     F2c_to_ZC(GEN x)
135    GEN     F2c_to_mod(GEN x)
136    GEN     F2m_rowslice(GEN x, long a, long b)
137    GEN     F2m_to_Flm(GEN z)
138    GEN     F2m_to_ZM(GEN z)
139    GEN     F2m_to_mod(GEN z)
140    void    F2v_add_inplace(GEN x, GEN y)
141    ulong   F2v_dotproduct(GEN x, GEN y)
142    GEN     F2v_slice(GEN x, long a, long b)
143    GEN     F2v_to_Flv(GEN x)
144    GEN     F2x_F2xq_eval(GEN Q, GEN x, GEN T)
145    GEN     F2x_F2xqV_eval(GEN P, GEN V, GEN T)
146    GEN     F2x_Frobenius(GEN T)
147    GEN     F2x_1_add(GEN y)
148    GEN     F2x_add(GEN x, GEN y)
149    GEN     F2x_deflate(GEN x0, long d)
150    long    F2x_degree(GEN x)
151    GEN     F2x_deriv(GEN x)
152    GEN     F2x_divrem(GEN x, GEN y, GEN *pr)
153    ulong   F2x_eval(GEN P, ulong x)
154    void    F2x_even_odd(GEN p, GEN *pe, GEN *po)
155    GEN     F2x_extgcd(GEN a, GEN b, GEN *ptu, GEN *ptv)
156    GEN     F2x_gcd(GEN a, GEN b)
157    GEN     F2x_halfgcd(GEN a, GEN b)
158    int     F2x_issquare(GEN a)
159    GEN     F2x_matFrobenius(GEN T)
160    GEN     F2x_mul(GEN x, GEN y)
161    GEN     F2x_rem(GEN x, GEN y)
162    GEN     F2x_shift(GEN y, long d)
163    GEN     F2x_sqr(GEN x)
164    GEN     F2x_sqrt(GEN x)
165    GEN     F2x_to_F2v(GEN x, long n)
166    GEN     F2x_to_Flx(GEN x)
167    GEN     F2x_to_ZX(GEN x)
168    long    F2x_valrem(GEN x, GEN *Z)
169    GEN     F2xC_to_FlxC(GEN v)
170    GEN     F2xC_to_ZXC(GEN x)
171    GEN     F2xV_to_F2m(GEN v, long n)
172    GEN     F2xX_F2x_mul(GEN P, GEN U)
173    GEN     F2xX_add(GEN x, GEN y)
174    GEN     F2xX_deriv(GEN z)
175    GEN     F2xX_renormalize(GEN x, long lx)
176    GEN     F2xX_to_Kronecker(GEN P, long d)
177    GEN     F2xX_to_ZXX(GEN B)
178    GEN     F2xY_F2xq_evalx(GEN P, GEN x, GEN T)
179    GEN     F2xY_F2xqV_evalx(GEN P, GEN x, GEN T)
180    long    F2xY_degreex(GEN b)
181    GEN     F2xq_Artin_Schreier(GEN a, GEN T)
182    GEN     F2xq_autpow(GEN x, long n, GEN T)
183    GEN     F2xq_conjvec(GEN x, GEN T)
184    GEN     F2xq_div(GEN x, GEN y, GEN T)
185    GEN     F2xq_inv(GEN x, GEN T)
186    GEN     F2xq_invsafe(GEN x, GEN T)
187    GEN     F2xq_log(GEN a, GEN g, GEN ord, GEN T)
188    GEN     F2xq_matrix_pow(GEN y, long n, long m, GEN P)
189    GEN     F2xq_mul(GEN x, GEN y, GEN pol)
190    GEN     F2xq_order(GEN a, GEN ord, GEN T)
191    GEN     F2xq_pow(GEN x, GEN n, GEN pol)
192    GEN     F2xq_powu(GEN x, ulong n, GEN pol)
193    GEN     F2xq_powers(GEN x, long l, GEN T)
194    GEN     F2xq_sqr(GEN x, GEN pol)
195    GEN     F2xq_sqrt(GEN a, GEN T)
196    GEN     F2xq_sqrt_fast(GEN c, GEN sqx, GEN T)
197    GEN     F2xq_sqrtn(GEN a, GEN n, GEN T, GEN *zeta)
198    ulong   F2xq_trace(GEN x, GEN T)
199    GEN     F2xqX_F2xq_mul(GEN P, GEN U, GEN T)
200    GEN     F2xqX_F2xq_mul_to_monic(GEN P, GEN U, GEN T)
201    GEN     F2xqX_F2xqXQ_eval(GEN Q, GEN x, GEN S, GEN T)
202    GEN     F2xqX_F2xqXQV_eval(GEN P, GEN V, GEN S, GEN T)
203    GEN     F2xqX_divrem(GEN x, GEN y, GEN T, GEN *pr)
204    GEN     F2xqX_gcd(GEN a, GEN b, GEN T)
205    GEN     F2xqX_mul(GEN x, GEN y, GEN T)
206    GEN     F2xqX_normalize(GEN z, GEN T)
207    GEN     F2xqX_red(GEN z, GEN T)
208    GEN     F2xqX_rem(GEN x, GEN S, GEN T)
209    GEN     F2xqX_sqr(GEN x, GEN T)
210    GEN     F2xqXQ_mul(GEN x, GEN y, GEN S, GEN T)
211    GEN     F2xqXQ_sqr(GEN x, GEN S, GEN T)
212    GEN     F2xqXQ_pow(GEN x, GEN n, GEN S, GEN T)
213    GEN     F2xqXQ_powers(GEN x, long l, GEN S, GEN T)
214    GEN     F2xqXQV_autpow(GEN aut, long n, GEN S, GEN T)
215    GEN     F2xqXQV_auttrace(GEN aut, long n, GEN S, GEN T)
216    GEN     Flm_to_F2m(GEN x)
217    GEN     Flv_to_F2v(GEN x)
218    GEN     Flx_to_F2x(GEN x)
219    GEN     FlxC_to_F2xC(GEN x)
220    GEN     FlxX_to_F2xX(GEN B)
221    GEN     Kronecker_to_F2xqX(GEN z, GEN T)
222    GEN     Rg_to_F2xq(GEN x, GEN T)
223    GEN     RgM_to_F2m(GEN x)
224    GEN     RgV_to_F2v(GEN x)
225    GEN     RgX_to_F2x(GEN x)
226    GEN     Z_to_F2x(GEN x, long v)
227    GEN     ZM_to_F2m(GEN x)
228    GEN     ZV_to_F2v(GEN x)
229    GEN     ZX_to_F2x(GEN x)
230    GEN     ZXX_to_F2xX(GEN B, long v)
231    GEN     const_F2v(long m)
232    GEN     gener_F2xq(GEN T, GEN *po)
233    const bb_field *get_F2xq_field(void **E, GEN T)
234    GEN     monomial_F2x(long d, long vs)
235    GEN     pol1_F2xX(long v, long sv)
236    GEN     polx_F2xX(long v, long sv)
237    GEN     random_F2x(long d, long vs)
238    GEN     random_F2xqX(long d1, long v, GEN T)
239
240    # F2xqE.c
241
242    GEN     F2xq_ellcard(GEN a2, GEN a6, GEN T)
243    GEN     F2xq_ellgens(GEN a2, GEN a6, GEN ch, GEN D, GEN m, GEN T)
244    GEN     F2xq_ellgroup(GEN a2, GEN a6, GEN N, GEN T, GEN *pt_m)
245    void    F2xq_elltwist(GEN a, GEN a6, GEN T, GEN *pt_a, GEN *pt_a6)
246    GEN     F2xqE_add(GEN P, GEN Q, GEN a2, GEN T)
247    GEN     F2xqE_changepoint(GEN x, GEN ch, GEN T)
248    GEN     F2xqE_changepointinv(GEN x, GEN ch, GEN T)
249    GEN     F2xqE_dbl(GEN P, GEN a2, GEN T)
250    GEN     F2xqE_log(GEN a, GEN b, GEN o, GEN a2, GEN T)
251    GEN     F2xqE_mul(GEN P, GEN n, GEN a2, GEN T)
252    GEN     F2xqE_neg(GEN P, GEN a2, GEN T)
253    GEN     F2xqE_order(GEN z, GEN o, GEN a2, GEN T)
254    GEN     F2xqE_sub(GEN P, GEN Q, GEN a2, GEN T)
255    GEN     F2xqE_tatepairing(GEN t, GEN s, GEN m, GEN a2, GEN T)
256    GEN     F2xqE_weilpairing(GEN t, GEN s, GEN m, GEN a2, GEN T)
257    const bb_group * get_F2xqE_group(void **E, GEN a2, GEN a6, GEN T)
258    GEN     RgE_to_F2xqE(GEN x, GEN T)
259    GEN     random_F2xqE(GEN a2, GEN a6, GEN T)
260
261    # Fle.c
262
263    ulong   Fl_elldisc(ulong a4, ulong a6, ulong p)
264    ulong   Fl_elldisc_pre(ulong a4, ulong a6, ulong p, ulong pi)
265    ulong   Fl_ellj(ulong a4, ulong a6, ulong p)
266    void    Fl_ellj_to_a4a6(ulong j, ulong p, ulong *pt_a4, ulong *pt_a6)
267    void    Fl_elltwist(ulong a4, ulong a6, ulong p, ulong *pt_a4, ulong *pt_a6)
268    void    Fl_elltwist_disc(ulong a4, ulong a6, ulong D, ulong p, ulong *pt_a4, ulong *pt_a6)
269    GEN     Fle_add(GEN P, GEN Q, ulong a4, ulong p)
270    GEN     Fle_dbl(GEN P, ulong a4, ulong p)
271    GEN     Fle_changepoint(GEN x, GEN ch, ulong p)
272    GEN     Fle_changepointinv(GEN x, GEN ch, ulong p)
273    GEN     Fle_log(GEN a, GEN b, GEN o, ulong a4, ulong p)
274    GEN     Fle_mul(GEN P, GEN n, ulong a4, ulong p)
275    GEN     Fle_mulu(GEN P, ulong n, ulong a4, ulong p)
276    GEN     Fle_order(GEN z, GEN o, ulong a4, ulong p)
277    GEN     Fle_sub(GEN P, GEN Q, ulong a4, ulong p)
278    GEN     Fle_to_Flj(GEN P)
279    GEN     Flj_add_pre(GEN P, GEN Q, ulong a4, ulong p, ulong pi)
280    GEN     Flj_dbl_pre(GEN P, ulong a4, ulong p, ulong pi)
281    GEN     Flj_mulu_pre(GEN P, ulong n, ulong a4, ulong p, ulong pi)
282    GEN     Flj_neg(GEN Q, ulong p)
283    GEN     Flj_to_Fle_pre(GEN P, ulong p, ulong pi)
284    GEN     random_Fle(ulong a4, ulong a6, ulong p)
285    GEN     random_Fle_pre(ulong a4, ulong a6, ulong p, ulong pi)
286    GEN     random_Flj_pre(ulong a4, ulong a6, ulong p, ulong pi)
287
288    # Flx.c
289
290    GEN     Fl_to_Flx(ulong x, long sv)
291    int     Fl2_equal1(GEN x)
292    GEN     Fl2_inv_pre(GEN x, ulong D, ulong p, ulong pi)
293    GEN     Fl2_mul_pre(GEN x, GEN y, ulong D, ulong p, ulong pi)
294    ulong   Fl2_norm_pre(GEN x, ulong D, ulong p, ulong pi)
295    GEN     Fl2_pow_pre(GEN x, GEN n, ulong D, ulong p, ulong pi)
296    GEN     Fl2_sqr_pre(GEN x, ulong D, ulong p, ulong pi)
297    GEN     Fl2_sqrtn_pre(GEN a, GEN n, ulong D, ulong p, ulong pi, GEN *zeta)
298    GEN     Flc_to_ZC(GEN z)
299    GEN     Flm_to_FlxV(GEN x, long sv)
300    GEN     Flm_to_FlxX(GEN x, long v, long w)
301    GEN     Flm_to_ZM(GEN z)
302    GEN     Flv_Flm_polint(GEN xa, GEN ya, ulong p, long vs)
303    GEN     Flv_inv(GEN x, ulong p)
304    void    Flv_inv_inplace(GEN x, ulong p)
305    void    Flv_inv_pre_inplace(GEN x, ulong p, ulong pi)
306    GEN     Flv_inv_pre(GEN x, ulong p, ulong pi)
307    GEN     Flv_polint(GEN xa, GEN ya, ulong p, long vs)
308    ulong   Flv_prod(GEN v, ulong p)
309    ulong   Flv_prod_pre(GEN x, ulong p, ulong pi)
310    GEN     Flv_roots_to_pol(GEN a, ulong p, long vs)
311    GEN     Flv_to_Flx(GEN x, long vs)
312    GEN     Fly_to_FlxY(GEN B, long v)
313    GEN     Flv_to_ZV(GEN z)
314    GEN     Flx_Fl_add(GEN y, ulong x, ulong p)
315    GEN     Flx_Fl_mul(GEN y, ulong x, ulong p)
316    GEN     Flx_Fl_mul_to_monic(GEN y, ulong x, ulong p)
317    GEN     Flx_Fl2_eval_pre(GEN x, GEN y, ulong D, ulong p, ulong pi)
318    GEN     Flx_Flv_multieval(GEN P, GEN v, ulong p)
319    GEN     Flx_Flxq_eval(GEN f, GEN x, GEN T, ulong p)
320    GEN     Flx_FlxqV_eval(GEN f, GEN x, GEN T, ulong p)
321    GEN     Flx_Frobenius(GEN T, ulong p)
322    GEN     Flx_add(GEN x, GEN y, ulong p)
323    GEN     Flx_deflate(GEN x0, long d)
324    GEN     Flx_deriv(GEN z, ulong p)
325    GEN     Flx_double(GEN y, ulong p)
326    GEN     Flx_div_by_X_x(GEN a, ulong x, ulong p, ulong *rem)
327    GEN     Flx_divrem(GEN x, GEN y, ulong p, GEN *pr)
328    int     Flx_equal(GEN V, GEN W)
329    ulong   Flx_eval(GEN x, ulong y, ulong p)
330    ulong   Flx_eval_powers_pre(GEN x, GEN y, ulong p, ulong pi)
331    ulong   Flx_eval_pre(GEN x, ulong y, ulong p, ulong pi)
332    GEN     Flx_extgcd(GEN a, GEN b, ulong p, GEN *ptu, GEN *ptv)
333    ulong   Flx_extresultant(GEN a, GEN b, ulong p, GEN *ptU, GEN *ptV)
334    GEN     Flx_gcd(GEN a, GEN b, ulong p)
335    GEN     Flx_get_red(GEN T, ulong p)
336    GEN     Flx_halfgcd(GEN a, GEN b, ulong p)
337    GEN     Flx_halve(GEN y, ulong p)
338    GEN     Flx_inflate(GEN x0, long d)
339    GEN     Flx_invBarrett(GEN T, ulong p)
340    int     Flx_is_squarefree(GEN z, ulong p)
341    int     Flx_is_smooth(GEN g, long r, ulong p)
342    GEN     Flx_matFrobenius(GEN T, ulong p)
343    GEN     Flx_mod_Xn1(GEN T, ulong n, ulong p)
344    GEN     Flx_mod_Xnm1(GEN T, ulong n, ulong p)
345    GEN     Flx_mul(GEN x, GEN y, ulong p)
346    GEN     Flx_neg(GEN x, ulong p)
347    GEN     Flx_neg_inplace(GEN x, ulong p)
348    GEN     Flx_normalize(GEN z, ulong p)
349    GEN     Flx_powu(GEN x, ulong n, ulong p)
350    GEN     Flx_recip(GEN x)
351    GEN     Flx_red(GEN z, ulong p)
352    GEN     Flx_rem(GEN x, GEN y, ulong p)
353    GEN     Flx_renormalize(GEN x, long l)
354    GEN     Flx_rescale(GEN P, ulong h, ulong p)
355    ulong   Flx_resultant(GEN a, GEN b, ulong p)
356    GEN     Flx_shift(GEN a, long n)
357    GEN     Flx_splitting(GEN p, long k)
358    GEN     Flx_sqr(GEN x, ulong p)
359    GEN     Flx_sub(GEN x, GEN y, ulong p)
360    GEN     Flx_to_Flv(GEN x, long N)
361    GEN     Flx_to_FlxX(GEN z, long v)
362    GEN     Flx_to_ZX(GEN z)
363    GEN     Flx_to_ZX_inplace(GEN z)
364    GEN     Flx_triple(GEN y, ulong p)
365    long    Flx_val(GEN x)
366    long    Flx_valrem(GEN x, GEN *Z)
367    GEN     FlxC_to_ZXC(GEN x)
368    GEN     FlxM_Flx_add_shallow(GEN x, GEN y, ulong p)
369    GEN     FlxM_to_ZXM(GEN z)
370    GEN     FlxT_red(GEN z, ulong p)
371    GEN     FlxV_Flc_mul(GEN V, GEN W, ulong p)
372    GEN     FlxV_prod(GEN V, ulong p)
373    GEN     FlxV_red(GEN z, ulong p)
374    GEN     FlxV_to_Flm(GEN v, long n)
375    GEN     FlxV_to_ZXV(GEN x)
376    GEN     FlxX_Fl_mul(GEN x, ulong y, ulong p)
377    GEN     FlxX_Flx_add(GEN y, GEN x, ulong p)
378    GEN     FlxX_Flx_mul(GEN x, GEN y, ulong p)
379    GEN     FlxX_add(GEN P, GEN Q, ulong p)
380    GEN     FlxX_deriv(GEN z, ulong p)
381    GEN     FlxX_double(GEN x, ulong p)
382    GEN     FlxX_neg(GEN x, ulong p)
383    GEN     FlxX_sub(GEN P, GEN Q, ulong p)
384    GEN     FlxX_swap(GEN x, long n, long ws)
385    GEN     FlxX_renormalize(GEN x, long lx)
386    GEN     FlxX_shift(GEN a, long n)
387    GEN     FlxX_to_Flm(GEN v, long n)
388    GEN     FlxX_to_FlxC(GEN x, long N, long sv)
389    GEN     FlxX_to_ZXX(GEN B)
390    GEN     FlxX_triple(GEN x, ulong p)
391    GEN     FlxXC_to_ZXXC(GEN B)
392    GEN     FlxXM_to_ZXXM(GEN B)
393    GEN     FlxXV_to_FlxM(GEN v, long n, long sv)
394    GEN     FlxY_Flx_div(GEN x, GEN y, ulong p)
395    GEN     FlxY_Flx_translate(GEN P, GEN c, ulong p)
396    GEN     FlxY_Flxq_evalx(GEN P, GEN x, GEN T, ulong p)
397    GEN     FlxY_FlxqV_evalx(GEN P, GEN x, GEN T, ulong p)
398    ulong   FlxY_eval_powers_pre(GEN pol, GEN ypowers, GEN xpowers, ulong p, ulong pi)
399    GEN     FlxY_evalx(GEN Q, ulong x, ulong p)
400    GEN     FlxY_evalx_powers_pre(GEN pol, GEN ypowers, ulong p, ulong pi)
401    GEN     FlxYqq_pow(GEN x, GEN n, GEN S, GEN T, ulong p)
402    GEN     Flxq_autpow(GEN x, ulong n, GEN T, ulong p)
403    GEN     Flxq_autsum(GEN x, ulong n, GEN T, ulong p)
404    GEN     Flxq_auttrace(GEN x, ulong n, GEN T, ulong p)
405    GEN     Flxq_charpoly(GEN x, GEN T, ulong p)
406    GEN     Flxq_conjvec(GEN x, GEN T, ulong p)
407    GEN     Flxq_div(GEN x, GEN y, GEN T, ulong p)
408    GEN     Flxq_inv(GEN x, GEN T, ulong p)
409    GEN     Flxq_invsafe(GEN x, GEN T, ulong p)
410    int     Flxq_issquare(GEN x, GEN T, ulong p)
411    int     Flxq_is2npower(GEN x, long n, GEN T, ulong p)
412    GEN     Flxq_log(GEN a, GEN g, GEN ord, GEN T, ulong p)
413    GEN     Flxq_lroot(GEN a, GEN T, long p)
414    GEN     Flxq_lroot_fast(GEN a, GEN sqx, GEN T, long p)
415    GEN     Flxq_matrix_pow(GEN y, long n, long m, GEN P, ulong l)
416    GEN     Flxq_minpoly(GEN x, GEN T, ulong p)
417    GEN     Flxq_mul(GEN x, GEN y, GEN T, ulong p)
418    ulong   Flxq_norm(GEN x, GEN T, ulong p)
419    GEN     Flxq_order(GEN a, GEN ord, GEN T, ulong p)
420    GEN     Flxq_pow(GEN x, GEN n, GEN T, ulong p)
421    GEN     Flxq_powu(GEN x, ulong n, GEN T, ulong p)
422    GEN     Flxq_powers(GEN x, long l, GEN T, ulong p)
423    GEN     Flxq_sqr(GEN y, GEN T, ulong p)
424    GEN     Flxq_sqrt(GEN a, GEN T, ulong p)
425    GEN     Flxq_sqrtn(GEN a, GEN n, GEN T, ulong p, GEN *zetan)
426    ulong   Flxq_trace(GEN x, GEN T, ulong p)
427    GEN     FlxqV_dotproduct(GEN x, GEN y, GEN T, ulong p)
428    GEN     FlxqV_roots_to_pol(GEN V, GEN T, ulong p, long v)
429    GEN     FlxqX_FlxqXQ_eval(GEN Q, GEN x, GEN S, GEN T, ulong p)
430    GEN     FlxqX_FlxqXQV_eval(GEN P, GEN V, GEN S, GEN T, ulong p)
431    GEN     FlxqX_Flxq_mul(GEN P, GEN U, GEN T, ulong p)
432    GEN     FlxqX_Flxq_mul_to_monic(GEN P, GEN U, GEN T, ulong p)
433    GEN     FlxqX_divrem(GEN x, GEN y, GEN T, ulong p, GEN *pr)
434    GEN     FlxqX_extgcd(GEN a, GEN b, GEN T, ulong p, GEN *ptu, GEN *ptv)
435    GEN     FlxqX_gcd(GEN P, GEN Q, GEN T, ulong p)
436    GEN     FlxqX_get_red(GEN S, GEN T, ulong p)
437    GEN     FlxqX_halfgcd(GEN x, GEN y, GEN T, ulong p)
438    GEN     FlxqX_invBarrett(GEN T, GEN Q, ulong p)
439    GEN     FlxqX_mul(GEN x, GEN y, GEN T, ulong p)
440    GEN     FlxqX_normalize(GEN z, GEN T, ulong p)
441    GEN     FlxqX_pow(GEN V, long n, GEN T, ulong p)
442    GEN     FlxqX_red(GEN z, GEN T, ulong p)
443    GEN     FlxqX_rem(GEN x, GEN y, GEN T, ulong p)
444    GEN     FlxqX_safegcd(GEN P, GEN Q, GEN T, ulong p)
445    GEN     FlxqX_sqr(GEN x, GEN T, ulong p)
446    GEN     FlxqXQ_div(GEN x, GEN y, GEN S, GEN T, ulong p)
447    GEN     FlxqXQ_inv(GEN x, GEN S, GEN T, ulong p)
448    GEN     FlxqXQ_invsafe(GEN x, GEN S, GEN T, ulong p)
449    GEN     FlxqXQ_matrix_pow(GEN x, long n, long m, GEN S, GEN T, ulong p)
450    GEN     FlxqXQ_mul(GEN x, GEN y, GEN S, GEN T, ulong p)
451    GEN     FlxqXQ_pow(GEN x, GEN n, GEN S, GEN T, ulong p)
452    GEN     FlxqXQ_powu(GEN x, ulong n, GEN S, GEN T, ulong p)
453    GEN     FlxqXQ_powers(GEN x, long n, GEN S, GEN T, ulong p)
454    GEN     FlxqXQ_sqr(GEN x, GEN S, GEN T, ulong p)
455    GEN     FlxqXQV_autpow(GEN x, long n, GEN S, GEN T, ulong p)
456    GEN     FlxqXQV_autsum(GEN aut, long n, GEN S, GEN T, ulong p)
457    GEN     FlxqXV_prod(GEN V, GEN T, ulong p)
458    GEN     Kronecker_to_FlxqX(GEN z, GEN T, ulong p)
459    ulong   Rg_to_F2(GEN x)
460    ulong   Rg_to_Fl(GEN x, ulong p)
461    GEN     Rg_to_Flxq(GEN x, GEN T, ulong p)
462    GEN     RgX_to_Flx(GEN x, ulong p)
463    GEN     Z_to_Flx(GEN x, ulong p, long sv)
464    GEN     ZX_to_Flx(GEN x, ulong p)
465    GEN     ZXV_to_FlxV(GEN v, ulong p)
466    GEN     ZXT_to_FlxT(GEN z, ulong p)
467    GEN     ZXX_to_FlxX(GEN B, ulong p, long v)
468    GEN     ZXXT_to_FlxXT(GEN z, ulong p, long v)
469    GEN     ZXXV_to_FlxXV(GEN V, ulong p, long v)
470    GEN     gener_Flxq(GEN T, ulong p, GEN *o)
471    long    get_Flx_degree(GEN T)
472    GEN     get_Flx_mod(GEN T)
473    long    get_Flx_var(GEN T)
474    long    get_FlxqX_degree(GEN T)
475    GEN     get_FlxqX_mod(GEN T)
476    long    get_FlxqX_var(GEN T)
477    const bb_field *get_Flxq_field(void **E, GEN T, ulong p)
478    const bb_group *get_Flxq_star(void **E, GEN T, ulong p)
479    GEN     monomial_Flx(ulong a, long d, long vs)
480    GEN     pol1_FlxX(long v, long sv)
481    GEN     polx_FlxX(long v, long sv)
482    GEN     random_Flx(long d1, long v, ulong p)
483    GEN     random_FlxqX(long d1, long v, GEN T, ulong p)
484    GEN     zx_to_Flx(GEN x, ulong p)
485    GEN     zxX_to_FlxX(GEN B, ulong p)
486    GEN     zxX_to_Kronecker(GEN P, GEN Q)
487
488    # FlxqE.c
489
490    GEN     Flxq_ellcard(GEN a4, GEN a6, GEN T, ulong p)
491    GEN     Flxq_ellgens(GEN a4, GEN a6, GEN ch, GEN D, GEN m, GEN T, ulong p)
492    GEN     Flxq_ellgroup(GEN a4, GEN a6, GEN N, GEN T, ulong p, GEN *pt_m)
493    void    Flxq_elltwist(GEN a, GEN a6, GEN T, ulong p, GEN *pt_a, GEN *pt_a6)
494    GEN     Flxq_ellj(GEN a4, GEN a6, GEN T, ulong p)
495    void    Flxq_ellj_to_a4a6(GEN j, GEN T, ulong p, GEN *pt_a4, GEN *pt_a6)
496    GEN     FlxqE_add(GEN P, GEN Q, GEN a4, GEN T, ulong p)
497    GEN     FlxqE_changepoint(GEN x, GEN ch, GEN T, ulong p)
498    GEN     FlxqE_changepointinv(GEN x, GEN ch, GEN T, ulong p)
499    GEN     FlxqE_dbl(GEN P, GEN a4, GEN T, ulong p)
500    GEN     FlxqE_log(GEN a, GEN b, GEN o, GEN a4, GEN T, ulong p)
501    GEN     FlxqE_mul(GEN P, GEN n, GEN a4, GEN T, ulong p)
502    GEN     FlxqE_neg(GEN P, GEN T, ulong p)
503    GEN     FlxqE_order(GEN z, GEN o, GEN a4, GEN T, ulong p)
504    GEN     FlxqE_sub(GEN P, GEN Q, GEN a4, GEN T, ulong p)
505    GEN     FlxqE_tatepairing(GEN t, GEN s, GEN m, GEN a4, GEN T, ulong p)
506    GEN     FlxqE_weilpairing(GEN t, GEN s, GEN m, GEN a4, GEN T, ulong p)
507    const bb_group * get_FlxqE_group(void **E, GEN a4, GEN a6, GEN T, ulong p)
508    GEN     RgE_to_FlxqE(GEN x, GEN T, ulong p)
509    GEN     random_FlxqE(GEN a4, GEN a6, GEN T, ulong p)
510
511    # FpE.c
512
513    long    Fl_elltrace(ulong a4, ulong a6, ulong p)
514    long    Fl_elltrace_CM(long CM, ulong a4, ulong a6, ulong p)
515    GEN     Fp_ellcard(GEN a4, GEN a6, GEN p)
516    GEN     Fp_elldivpol(GEN a4, GEN a6, long n, GEN p)
517    GEN     Fp_ellgens(GEN a4, GEN a6, GEN ch, GEN D, GEN m, GEN p)
518    GEN     Fp_ellgroup(GEN a4, GEN a6, GEN N, GEN p, GEN *pt_m)
519    GEN     Fp_ellj(GEN a4, GEN a6, GEN p)
520    int     Fp_elljissupersingular(GEN j, GEN p)
521    void    Fp_elltwist(GEN a4, GEN a6, GEN p, GEN *pt_a4, GEN *pt_a6)
522    GEN     Fp_ffellcard(GEN a4, GEN a6, GEN q, long n, GEN p)
523    GEN     FpE_add(GEN P, GEN Q, GEN a4, GEN p)
524    GEN     FpE_changepoint(GEN x, GEN ch, GEN p)
525    GEN     FpE_changepointinv(GEN x, GEN ch, GEN p)
526    GEN     FpE_dbl(GEN P, GEN a4, GEN p)
527    GEN     FpE_log(GEN a, GEN b, GEN o, GEN a4, GEN p)
528    GEN     FpE_mul(GEN P, GEN n, GEN a4, GEN p)
529    GEN     FpE_neg(GEN P, GEN p)
530    GEN     FpE_order(GEN z, GEN o, GEN a4, GEN p)
531    GEN     FpE_sub(GEN P, GEN Q, GEN a4, GEN p)
532    GEN     FpE_to_mod(GEN P, GEN p)
533    GEN     FpE_tatepairing(GEN t, GEN s, GEN m, GEN a4, GEN p)
534    GEN     FpE_weilpairing(GEN t, GEN s, GEN m, GEN a4, GEN p)
535    GEN     FpXQ_ellcard(GEN a4, GEN a6, GEN T, GEN p)
536    GEN     FpXQ_elldivpol(GEN a4, GEN a6, long n, GEN T, GEN p)
537    GEN     FpXQ_ellgens(GEN a4, GEN a6, GEN ch, GEN D, GEN m, GEN T, GEN p)
538    GEN     FpXQ_ellgroup(GEN a4, GEN a6, GEN N, GEN T, GEN p, GEN *pt_m)
539    GEN     FpXQ_ellj(GEN a4, GEN a6, GEN T, GEN p)
540    int     FpXQ_elljissupersingular(GEN j, GEN T, GEN p)
541    void    FpXQ_elltwist(GEN a4, GEN a6, GEN T, GEN p, GEN *pt_a4, GEN *pt_a6)
542    GEN     FpXQE_add(GEN P, GEN Q, GEN a4, GEN T, GEN p)
543    GEN     FpXQE_changepoint(GEN x, GEN ch, GEN T, GEN p)
544    GEN     FpXQE_changepointinv(GEN x, GEN ch, GEN T, GEN p)
545    GEN     FpXQE_dbl(GEN P, GEN a4, GEN T, GEN p)
546    GEN     FpXQE_log(GEN a, GEN b, GEN o, GEN a4, GEN T, GEN p)
547    GEN     FpXQE_mul(GEN P, GEN n, GEN a4, GEN T, GEN p)
548    GEN     FpXQE_neg(GEN P, GEN T, GEN p)
549    GEN     FpXQE_order(GEN z, GEN o, GEN a4, GEN T, GEN p)
550    GEN     FpXQE_sub(GEN P, GEN Q, GEN a4, GEN T, GEN p)
551    GEN     FpXQE_tatepairing(GEN t, GEN s, GEN m, GEN a4, GEN T, GEN p)
552    GEN     FpXQE_weilpairing(GEN t, GEN s, GEN m, GEN a4, GEN T, GEN p)
553    GEN     Fq_elldivpolmod(GEN a4, GEN a6, long n, GEN h, GEN T, GEN p)
554    GEN     RgE_to_FpE(GEN x, GEN p)
555    GEN     RgE_to_FpXQE(GEN x, GEN T, GEN p)
556    const bb_group * get_FpE_group(void **E, GEN a4, GEN a6, GEN p)
557    const bb_group * get_FpXQE_group(void **E, GEN a4, GEN a6, GEN T, GEN p)
558    GEN     elltrace_extension(GEN t, long n, GEN p)
559    GEN     random_FpE(GEN a4, GEN a6, GEN p)
560    GEN     random_FpXQE(GEN a4, GEN a6, GEN T, GEN p)
561
562    # FpX.c
563
564    int     Fp_issquare(GEN x, GEN p)
565    GEN     Fp_FpX_sub(GEN x, GEN y, GEN p)
566    GEN     Fp_FpXQ_log(GEN a, GEN g, GEN ord, GEN T, GEN p)
567    GEN     FpV_FpM_polint(GEN xa, GEN ya, GEN p, long vs)
568    GEN     FpV_inv(GEN x, GEN p)
569    GEN     FpV_invVandermonde(GEN L, GEN den, GEN p)
570    GEN     FpV_polint(GEN xa, GEN ya, GEN p, long v)
571    GEN     FpV_roots_to_pol(GEN V, GEN p, long v)
572    GEN     FpX_Fp_add(GEN x, GEN y, GEN p)
573    GEN     FpX_Fp_add_shallow(GEN y, GEN x, GEN p)
574    GEN     FpX_Fp_mul(GEN x, GEN y, GEN p)
575    GEN     FpX_Fp_mul_to_monic(GEN y, GEN x, GEN p)
576    GEN     FpX_Fp_mulspec(GEN y, GEN x, GEN p, long ly)
577    GEN     FpX_Fp_sub(GEN x, GEN y, GEN p)
578    GEN     FpX_Fp_sub_shallow(GEN y, GEN x, GEN p)
579    GEN     FpX_FpV_multieval(GEN P, GEN xa, GEN p)
580    GEN     FpX_FpXQ_eval(GEN f, GEN x, GEN T, GEN p)
581    GEN     FpX_FpXQV_eval(GEN f, GEN x, GEN T, GEN p)
582    GEN     FpX_Frobenius(GEN T, GEN p)
583    GEN     FpX_add(GEN x, GEN y, GEN p)
584    GEN     FpX_center(GEN x, GEN p, GEN pov2)
585    GEN     FpX_chinese_coprime(GEN x, GEN y, GEN Tx, GEN Ty, GEN Tz, GEN p)
586    GEN     FpX_deriv(GEN x, GEN p)
587    GEN     FpX_digits(GEN x, GEN y, GEN p)
588    GEN     FpX_disc(GEN x, GEN p)
589    GEN     FpX_div_by_X_x(GEN a, GEN x, GEN p, GEN *r)
590    GEN     FpX_divrem(GEN x, GEN y, GEN p, GEN *pr)
591    GEN     FpX_dotproduct(GEN x, GEN y, GEN p)
592    GEN     FpX_eval(GEN x, GEN y, GEN p)
593    GEN     FpX_extgcd(GEN x, GEN y, GEN p, GEN *ptu, GEN *ptv)
594    GEN     FpX_fromdigits(GEN x, GEN T, GEN p)
595    GEN     FpX_gcd(GEN x, GEN y, GEN p)
596    GEN     FpX_get_red(GEN T, GEN p)
597    GEN     FpX_halve(GEN y, GEN p)
598    GEN     FpX_halfgcd(GEN x, GEN y, GEN p)
599    GEN     FpX_invBarrett(GEN T, GEN p)
600    int     FpX_is_squarefree(GEN f, GEN p)
601    GEN     FpX_matFrobenius(GEN T, GEN p)
602    GEN     FpX_mul(GEN x, GEN y, GEN p)
603    GEN     FpX_mulspec(GEN a, GEN b, GEN p, long na, long nb)
604    GEN     FpX_mulu(GEN x, ulong y, GEN p)
605    GEN     FpX_neg(GEN x, GEN p)
606    GEN     FpX_normalize(GEN z, GEN p)
607    GEN     FpX_powu(GEN x, ulong n, GEN p)
608    GEN     FpX_red(GEN z, GEN p)
609    GEN     FpX_rem(GEN x, GEN y, GEN p)
610    GEN     FpX_rescale(GEN P, GEN h, GEN p)
611    GEN     FpX_resultant(GEN a, GEN b, GEN p)
612    GEN     FpX_sqr(GEN x, GEN p)
613    GEN     FpX_sub(GEN x, GEN y, GEN p)
614    long    FpX_valrem(GEN x0, GEN t, GEN p, GEN *py)
615    GEN     FpXC_FpXQV_eval(GEN Q, GEN x, GEN T, GEN p)
616    GEN     FpXM_FpXQV_eval(GEN Q, GEN x, GEN T, GEN p)
617    GEN     FpXQ_autpow(GEN x, ulong n, GEN T, GEN p)
618    GEN     FpXQ_autpowers(GEN aut, long f, GEN T, GEN p)
619    GEN     FpXQ_autsum(GEN x, ulong n, GEN T, GEN p)
620    GEN     FpXQ_auttrace(GEN x, ulong n, GEN T, GEN p)
621    GEN     FpXQ_charpoly(GEN x, GEN T, GEN p)
622    GEN     FpXQ_conjvec(GEN x, GEN T, GEN p)
623    GEN     FpXQ_div(GEN x, GEN y, GEN T, GEN p)
624    GEN     FpXQ_inv(GEN x, GEN T, GEN p)
625    GEN     FpXQ_invsafe(GEN x, GEN T, GEN p)
626    int     FpXQ_issquare(GEN x, GEN T, GEN p)
627    GEN     FpXQ_log(GEN a, GEN g, GEN ord, GEN T, GEN p)
628    GEN     FpXQ_matrix_pow(GEN y, long n, long m, GEN P, GEN l)
629    GEN     FpXQ_minpoly(GEN x, GEN T, GEN p)
630    GEN     FpXQ_mul(GEN y, GEN x, GEN T, GEN p)
631    GEN     FpXQ_norm(GEN x, GEN T, GEN p)
632    GEN     FpXQ_order(GEN a, GEN ord, GEN T, GEN p)
633    GEN     FpXQ_pow(GEN x, GEN n, GEN T, GEN p)
634    GEN     FpXQ_powu(GEN x, ulong n, GEN T, GEN p)
635    GEN     FpXQ_powers(GEN x, long l, GEN T, GEN p)
636    GEN     FpXQ_red(GEN x, GEN T, GEN p)
637    GEN     FpXQ_sqr(GEN y, GEN T, GEN p)
638    GEN     FpXQ_sqrt(GEN a, GEN T, GEN p)
639    GEN     FpXQ_sqrtn(GEN a, GEN n, GEN T, GEN p, GEN *zetan)
640    GEN     FpXQ_trace(GEN x, GEN T, GEN p)
641    GEN     FpXQC_to_mod(GEN z, GEN T, GEN p)
642    GEN     FpXQM_autsum(GEN x, ulong n, GEN T, GEN p)
643    GEN     FpXT_red(GEN z, GEN p)
644    GEN     FpXV_prod(GEN V, GEN p)
645    GEN     FpXV_red(GEN z, GEN p)
646    int     Fq_issquare(GEN x, GEN T, GEN p)
647    long    Fq_ispower(GEN x, GEN K, GEN T, GEN p)
648    GEN     Fq_log(GEN a, GEN g, GEN ord, GEN T, GEN p)
649    GEN     Fq_sqrtn(GEN a, GEN n, GEN T, GEN p, GEN *z)
650    GEN     Fq_sqrt(GEN a, GEN T, GEN p)
651    long    FqX_ispower(GEN f, ulong k, GEN T, GEN p, GEN *pt)
652    GEN     FqV_inv(GEN x, GEN T, GEN p)
653    GEN     Z_to_FpX(GEN a, GEN p, long v)
654    GEN     gener_FpXQ(GEN T, GEN p, GEN *o)
655    GEN     gener_FpXQ_local(GEN T, GEN p, GEN L)
656    long    get_FpX_degree(GEN T)
657    GEN     get_FpX_mod(GEN T)
658    long    get_FpX_var(GEN T)
659    const bb_group *get_FpXQ_star(void **E, GEN T, GEN p)
660    GEN     random_FpX(long d, long v, GEN p)
661
662    # FpX_factor.c
663
664    GEN     F2x_factor(GEN f)
665    int     F2x_is_irred(GEN f)
666    void    F2xV_to_FlxV_inplace(GEN v)
667    void    F2xV_to_ZXV_inplace(GEN v)
668    int     Flx_is_irred(GEN f, ulong p)
669    GEN     Flx_degfact(GEN f, ulong p)
670    GEN     Flx_factor(GEN f, ulong p)
671    long    Flx_nbfact(GEN z, ulong p)
672    long    Flx_nbfact_Frobenius(GEN T, GEN XP, ulong p)
673    GEN     Flx_nbfact_by_degree(GEN z, long *nb, ulong p)
674    long    Flx_nbroots(GEN f, ulong p)
675    ulong   Flx_oneroot(GEN f, ulong p)
676    ulong   Flx_oneroot_split(GEN f, ulong p)
677    GEN     Flx_roots(GEN f, ulong p)
678    GEN     Flx_rootsff(GEN P, GEN T, ulong p)
679    void    FlxV_to_ZXV_inplace(GEN v)
680    GEN     FpX_degfact(GEN f, GEN p)
681    int     FpX_is_irred(GEN f, GEN p)
682    int     FpX_is_totally_split(GEN f, GEN p)
683    GEN     FpX_factor(GEN f, GEN p)
684    GEN     FpX_factorff(GEN P, GEN T, GEN p)
685    long    FpX_nbfact(GEN f, GEN p)
686    long    FpX_nbfact_Frobenius(GEN T, GEN XP, GEN p)
687    long    FpX_nbroots(GEN f, GEN p)
688    GEN     FpX_oneroot(GEN f, GEN p)
689    GEN     FpX_roots(GEN f, GEN p)
690    GEN     FpX_rootsff(GEN P, GEN T, GEN p)
691    GEN     FpX_split_part(GEN f, GEN p)
692    GEN     factcantor(GEN x, GEN p)
693    GEN     factormod0(GEN f, GEN p, long flag)
694    GEN     rootmod0(GEN f, GEN p, long flag)
695
696    # FpXQX_factor.c
697
698    GEN     F2xqX_roots(GEN x, GEN T)
699    GEN     FlxqX_Frobenius(GEN S, GEN T, ulong p)
700    GEN     FlxqXQ_halfFrobenius(GEN a, GEN S, GEN T, ulong p)
701    GEN     FlxqX_roots(GEN S, GEN T, ulong p)
702    long    FlxqX_nbroots(GEN f, GEN T, ulong p)
703    GEN     FpXQX_Frobenius(GEN S, GEN T, GEN p)
704    GEN     FpXQX_factor(GEN x, GEN T, GEN p)
705    long    FpXQX_nbfact(GEN u, GEN T, GEN p)
706    long    FpXQX_nbroots(GEN f, GEN T, GEN p)
707    GEN     FpXQX_roots(GEN f, GEN T, GEN p)
708    GEN     FpXQXQ_halfFrobenius(GEN a, GEN S, GEN T, GEN p)
709    long    FqX_is_squarefree(GEN P, GEN T, GEN p)
710    long    FqX_nbfact(GEN u, GEN T, GEN p)
711    long    FqX_nbroots(GEN f, GEN T, GEN p)
712    GEN     factorff(GEN f, GEN p, GEN a)
713    GEN     polrootsff(GEN f, GEN p, GEN T)
714
715    # FpXX.c
716
717    GEN     FpXQX_FpXQ_mul(GEN P, GEN U, GEN T, GEN p)
718    GEN     FpXQX_FpXQXQV_eval(GEN P, GEN V, GEN S, GEN T, GEN p)
719    GEN     FpXQX_FpXQXQ_eval(GEN P, GEN x, GEN S, GEN T, GEN p)
720    GEN     FpXQX_div_by_X_x(GEN a, GEN x, GEN T, GEN p, GEN *pr)
721    GEN     FpXQX_divrem(GEN x, GEN y, GEN T, GEN p, GEN *pr)
722    GEN     FpXQX_digits(GEN x, GEN B, GEN T, GEN p)
723    GEN     FpXQX_extgcd(GEN x, GEN y, GEN T, GEN p, GEN *ptu, GEN *ptv)
724    GEN     FpXQX_fromdigits(GEN x, GEN B, GEN T, GEN p)
725    GEN     FpXQX_gcd(GEN P, GEN Q, GEN T, GEN p)
726    GEN     FpXQX_get_red(GEN S, GEN T, GEN p)
727    GEN     FpXQX_halfgcd(GEN x, GEN y, GEN T, GEN p)
728    GEN     FpXQX_invBarrett(GEN S, GEN T, GEN p)
729    GEN     FpXQX_mul(GEN x, GEN y, GEN T, GEN p)
730    GEN     FpXQX_powu(GEN x, ulong n, GEN T, GEN p)
731    GEN     FpXQX_red(GEN z, GEN T, GEN p)
732    GEN     FpXQX_rem(GEN x, GEN S, GEN T, GEN p)
733    GEN     FpXQX_sqr(GEN x, GEN T, GEN p)
734    GEN     FpXQXQ_div(GEN x, GEN y, GEN S, GEN T, GEN p)
735    GEN     FpXQXQ_inv(GEN x, GEN S, GEN T, GEN p)
736    GEN     FpXQXQ_invsafe(GEN x, GEN S, GEN T, GEN p)
737    GEN     FpXQXQ_matrix_pow(GEN y, long n, long m, GEN S, GEN T, GEN p)
738    GEN     FpXQXQ_mul(GEN x, GEN y, GEN S, GEN T, GEN p)
739    GEN     FpXQXQ_pow(GEN x, GEN n, GEN S, GEN T, GEN p)
740    GEN     FpXQXQ_powers(GEN x, long n, GEN S, GEN T, GEN p)
741    GEN     FpXQXQ_sqr(GEN x, GEN S, GEN T, GEN p)
742    GEN     FpXQXQV_autpow(GEN aut, long n, GEN S, GEN T, GEN p)
743    GEN     FpXQXQV_autsum(GEN aut, long n, GEN S, GEN T, GEN p)
744    GEN     FpXQXQV_auttrace(GEN aut, long n, GEN S, GEN T, GEN p)
745    GEN     FpXQXV_prod(GEN V, GEN Tp, GEN p)
746    GEN     FpXX_Fp_mul(GEN x, GEN y, GEN p)
747    GEN     FpXX_FpX_mul(GEN x, GEN y, GEN p)
748    GEN     FpXX_add(GEN x, GEN y, GEN p)
749    GEN     FpXX_deriv(GEN P, GEN p)
750    GEN     FpXX_mulu(GEN P, ulong u, GEN p)
751    GEN     FpXX_neg(GEN x, GEN p)
752    GEN     FpXX_red(GEN z, GEN p)
753    GEN     FpXX_sub(GEN x, GEN y, GEN p)
754    GEN     FpXY_FpXQ_evalx(GEN P, GEN x, GEN T, GEN p)
755    GEN     FpXY_FpXQV_evalx(GEN P, GEN x, GEN T, GEN p)
756    GEN     FpXY_eval(GEN Q, GEN y, GEN x, GEN p)
757    GEN     FpXY_evalx(GEN Q, GEN x, GEN p)
758    GEN     FpXY_evaly(GEN Q, GEN y, GEN p, long vy)
759    GEN     FpXYQQ_pow(GEN x, GEN n, GEN S, GEN T, GEN p)
760    GEN     Kronecker_to_FpXQX(GEN z, GEN pol, GEN p)
761    GEN     Kronecker_to_ZXX(GEN z, long N, long v)
762    GEN     ZXX_mul_Kronecker(GEN x, GEN y, long n)
763    GEN     ZXX_sqr_Kronecker(GEN x, long n)
764    long    get_FpXQX_degree(GEN T)
765    GEN     get_FpXQX_mod(GEN T)
766    long    get_FpXQX_var(GEN T)
767    GEN     random_FpXQX(long d1, long v, GEN T, GEN p)
768
769    # FpV.c
770
771    GEN     F2m_F2c_mul(GEN x, GEN y)
772    GEN     F2m_mul(GEN x, GEN y)
773    GEN     F2m_powu(GEN x, ulong n)
774    GEN     Flc_to_mod(GEN z, ulong pp)
775    GEN     Flm_Fl_add(GEN x, ulong y, ulong p)
776    GEN     Flm_Fl_mul(GEN y, ulong x, ulong p)
777    void    Flm_Fl_mul_inplace(GEN y, ulong x, ulong p)
778    GEN     Flm_Flc_mul(GEN x, GEN y, ulong p)
779    GEN     Flm_Flc_mul_pre(GEN x, GEN y, ulong p, ulong pi)
780    GEN     Flm_add(GEN x, GEN y, ulong p)
781    GEN     Flm_center(GEN z, ulong p, ulong ps2)
782    GEN     Flm_mul(GEN x, GEN y, ulong p)
783    GEN     Flm_neg(GEN y, ulong p)
784    GEN     Flm_powu(GEN x, ulong n, ulong p)
785    GEN     Flm_sub(GEN x, GEN y, ulong p)
786    GEN     Flm_to_mod(GEN z, ulong pp)
787    GEN     Flm_transpose(GEN x)
788    GEN     Flv_Fl_div(GEN x, ulong y, ulong p)
789    void    Flv_Fl_div_inplace(GEN x, ulong y, ulong p)
790    GEN     Flv_Fl_mul(GEN x, ulong y, ulong p)
791    void    Flv_Fl_mul_inplace(GEN x, ulong y, ulong p)
792    void    Flv_Fl_mul_part_inplace(GEN x, ulong y, ulong p, long l)
793    GEN     Flv_add(GEN x, GEN y, ulong p)
794    void    Flv_add_inplace(GEN x, GEN y, ulong p)
795    GEN     Flv_center(GEN z, ulong p, ulong ps2)
796    ulong   Flv_dotproduct(GEN x, GEN y, ulong p)
797    ulong   Flv_dotproduct_pre(GEN x, GEN y, ulong p, ulong pi)
798    GEN     Flv_neg(GEN v, ulong p)
799    void    Flv_neg_inplace(GEN v, ulong p)
800    GEN     Flv_sub(GEN x, GEN y, ulong p)
801    void    Flv_sub_inplace(GEN x, GEN y, ulong p)
802    ulong   Flv_sum(GEN x, ulong p)
803    ulong   Flx_dotproduct(GEN x, GEN y, ulong p)
804    GEN     Fp_to_mod(GEN z, GEN p)
805    GEN     FpC_FpV_mul(GEN x, GEN y, GEN p)
806    GEN     FpC_Fp_mul(GEN x, GEN y, GEN p)
807    GEN     FpC_center(GEN z, GEN p, GEN pov2)
808    void    FpC_center_inplace(GEN z, GEN p, GEN pov2)
809    GEN     FpC_red(GEN z, GEN p)
810    GEN     FpC_to_mod(GEN z, GEN p)
811    GEN     FpM_add(GEN x, GEN y, GEN p)
812    GEN     FpM_Fp_mul(GEN X, GEN c, GEN p)
813    GEN     FpM_FpC_mul(GEN x, GEN y, GEN p)
814    GEN     FpM_FpC_mul_FpX(GEN x, GEN y, GEN p, long v)
815    GEN     FpM_center(GEN z, GEN p, GEN pov2)
816    void    FpM_center_inplace(GEN z, GEN p, GEN pov2)
817    GEN     FpM_mul(GEN x, GEN y, GEN p)
818    GEN     FpM_powu(GEN x, ulong n, GEN p)
819    GEN     FpM_red(GEN z, GEN p)
820    GEN     FpM_sub(GEN x, GEN y, GEN p)
821    GEN     FpM_to_mod(GEN z, GEN p)
822    GEN     FpMs_FpC_mul(GEN M, GEN B, GEN p)
823    GEN     FpMs_FpCs_solve(GEN M, GEN B, long nbrow, GEN p)
824    GEN     FpMs_FpCs_solve_safe(GEN M, GEN A, long nbrow, GEN p)
825    GEN     FpMs_leftkernel_elt(GEN M, long nbrow, GEN p)
826    GEN     FpC_add(GEN x, GEN y, GEN p)
827    GEN     FpC_sub(GEN x, GEN y, GEN p)
828    GEN     FpV_FpMs_mul(GEN B, GEN M, GEN p)
829    GEN     FpV_add(GEN x, GEN y, GEN p)
830    GEN     FpV_sub(GEN x, GEN y, GEN p)
831    GEN     FpV_dotproduct(GEN x, GEN y, GEN p)
832    GEN     FpV_dotsquare(GEN x, GEN p)
833    GEN     FpV_red(GEN z, GEN p)
834    GEN     FpV_to_mod(GEN z, GEN p)
835    GEN     FpVV_to_mod(GEN z, GEN p)
836    GEN     FpX_to_mod(GEN z, GEN p)
837    GEN     ZV_zMs_mul(GEN B, GEN M)
838    GEN     ZpMs_ZpCs_solve(GEN M, GEN B, long nbrow, GEN p, long e)
839    GEN     gen_FpM_Wiedemann(void *E, GEN (*f)(void*, GEN), GEN B, GEN p)
840    GEN     gen_ZpM_Dixon(void *E, GEN (*f)(void*, GEN), GEN B, GEN p, long e)
841    GEN     gen_matid(long n, void *E, const bb_field *S)
842    GEN     matid_F2m(long n)
843    GEN     matid_Flm(long n)
844    GEN     matid_F2xqM(long n, GEN T)
845    GEN     matid_FlxqM(long n, GEN T, ulong p)
846    GEN     scalar_Flm(long s, long n)
847    GEN     zCs_to_ZC(GEN C, long nbrow)
848    GEN     zMs_to_ZM(GEN M, long nbrow)
849    GEN     zMs_ZC_mul(GEN M, GEN B)
850    GEN     ZMV_to_FlmV(GEN z, ulong m)
851
852    # Hensel.c
853
854    GEN     Z2_sqrt(GEN x, long e)
855    GEN     Zp_sqrt(GEN x, GEN p, long e)
856    GEN     Zp_sqrtlift(GEN b, GEN a, GEN p, long e)
857    GEN     Zp_sqrtnlift(GEN b, GEN n, GEN a, GEN p, long e)
858    GEN     ZpX_Frobenius(GEN T, GEN p, long e)
859    GEN     ZpX_ZpXQ_liftroot(GEN P, GEN S, GEN T, GEN p, long e)
860    GEN     ZpX_ZpXQ_liftroot_ea(GEN P, GEN S, GEN T, GEN p, long n, void *E,
861                         int early(void *E, GEN x, GEN q))
862    GEN     ZpX_liftfact(GEN pol, GEN Q, GEN T, GEN p, long e, GEN pe)
863    GEN     ZpX_liftroot(GEN f, GEN a, GEN p, long e)
864    GEN     ZpX_liftroots(GEN f, GEN S, GEN p, long e)
865    GEN     ZpX_roots(GEN f, GEN p, long e)
866    GEN     ZpXQ_inv(GEN a, GEN T, GEN p, long e)
867    GEN     ZpXQ_invlift(GEN b, GEN a, GEN T, GEN p, long e)
868    GEN     ZpXQ_log(GEN a, GEN T, GEN p, long N)
869    GEN     ZpXQ_sqrt(GEN a, GEN T, GEN p, long e)
870    GEN     ZpXQ_sqrtnlift(GEN b, GEN n, GEN a, GEN T, GEN p, long e)
871    GEN     ZpXQM_prodFrobenius(GEN M, GEN T, GEN p, long e)
872    GEN     ZpXQX_liftroot(GEN f, GEN a, GEN T, GEN p, long e)
873    GEN     ZpXQX_liftroot_vald(GEN f, GEN a, long v, GEN T, GEN p, long e)
874    GEN     gen_ZpX_Dixon(GEN F, GEN V, GEN q, GEN p, long N, void *E,
875                                 GEN lin(void *E, GEN F, GEN d, GEN q),
876                                 GEN invl(void *E, GEN d))
877    GEN     gen_ZpX_Newton(GEN x, GEN p, long n, void *E,
878                                  GEN eval(void *E, GEN f, GEN q),
879                                  GEN invd(void *E, GEN V, GEN v, GEN q, long M))
880    GEN     polhensellift(GEN pol, GEN fct, GEN p, long exp)
881    ulong   quadratic_prec_mask(long n)
882
883    # QX_factor.c
884
885    GEN     QX_factor(GEN x)
886    GEN     ZX_factor(GEN x)
887    long    ZX_is_irred(GEN x)
888    GEN     ZX_squff(GEN f, GEN *ex)
889    GEN     polcyclofactors(GEN f)
890    long    poliscyclo(GEN f)
891    long    poliscycloprod(GEN f)
892
893
894    # RgV.c
895
896    GEN     RgC_Rg_add(GEN x, GEN y)
897    GEN     RgC_Rg_div(GEN x, GEN y)
898    GEN     RgC_Rg_mul(GEN x, GEN y)
899    GEN     RgC_RgM_mul(GEN x, GEN y)
900    GEN     RgC_RgV_mul(GEN x, GEN y)
901    GEN     RgC_add(GEN x, GEN y)
902    long    RgC_is_ei(GEN x)
903    GEN     RgC_neg(GEN x)
904    GEN     RgC_sub(GEN x, GEN y)
905    GEN     RgM_Rg_add(GEN x, GEN y)
906    GEN     RgM_Rg_add_shallow(GEN x, GEN y)
907    GEN     RgM_Rg_div(GEN x, GEN y)
908    GEN     RgM_Rg_mul(GEN x, GEN y)
909    GEN     RgM_Rg_sub(GEN x, GEN y)
910    GEN     RgM_Rg_sub_shallow(GEN x, GEN y)
911    GEN     RgM_RgC_mul(GEN x, GEN y)
912    GEN     RgM_RgV_mul(GEN x, GEN y)
913    GEN     RgM_add(GEN x, GEN y)
914    GEN     RgM_det_triangular(GEN x)
915    int     RgM_is_ZM(GEN x)
916    int     RgM_isdiagonal(GEN x)
917    int     RgM_isidentity(GEN x)
918    int     RgM_isscalar(GEN x, GEN s)
919    GEN     RgM_mul(GEN x, GEN y)
920    GEN     RgM_multosym(GEN x, GEN y)
921    GEN     RgM_neg(GEN x)
922    GEN     RgM_powers(GEN x, long l)
923    GEN     RgM_sqr(GEN x)
924    GEN     RgM_sub(GEN x, GEN y)
925    GEN     RgM_sumcol(GEN A)
926    GEN     RgM_transmul(GEN x, GEN y)
927    GEN     RgM_transmultosym(GEN x, GEN y)
928    GEN     RgM_zc_mul(GEN x, GEN y)
929    GEN     RgM_zm_mul(GEN x, GEN y)
930    GEN     RgMrow_RgC_mul(GEN x, GEN y, long i)
931    GEN     RgV_RgM_mul(GEN x, GEN y)
932    GEN     RgV_RgC_mul(GEN x, GEN y)
933    GEN     RgV_Rg_mul(GEN x, GEN y)
934    GEN     RgV_add(GEN x, GEN y)
935    GEN     RgV_dotproduct(GEN x, GEN y)
936    GEN     RgV_dotsquare(GEN x)
937    int     RgV_is_ZMV(GEN V)
938    long    RgV_isin(GEN v, GEN x)
939    GEN     RgV_kill0(GEN v)
940    GEN     RgV_neg(GEN x)
941    GEN     RgV_prod(GEN v)
942    GEN     RgV_sub(GEN x, GEN y)
943    GEN     RgV_sum(GEN v)
944    GEN     RgV_sumpart(GEN v, long n)
945    GEN     RgV_sumpart2(GEN v, long m, long n)
946    GEN     RgV_zc_mul(GEN x, GEN y)
947    GEN     RgV_zm_mul(GEN x, GEN y)
948    GEN     RgX_RgM_eval(GEN x, GEN y)
949    GEN     RgX_RgMV_eval(GEN x, GEN y)
950    int     isdiagonal(GEN x)
951    GEN     matid(long n)
952    GEN     scalarcol(GEN x, long n)
953    GEN     scalarcol_shallow(GEN x, long n)
954    GEN     scalarmat(GEN x, long n)
955    GEN     scalarmat_shallow(GEN x, long n)
956    GEN     scalarmat_s(long x, long n)
957
958    # RgX.c
959
960    GEN     Kronecker_to_mod(GEN z, GEN pol)
961    GEN     QX_ZXQV_eval(GEN P, GEN V, GEN dV)
962    GEN     QXQ_charpoly(GEN A, GEN T, long v)
963    GEN     QXQ_powers(GEN a, long n, GEN T)
964    GEN     QXQX_to_mod_shallow(GEN z, GEN T)
965    GEN     QXQV_to_mod(GEN V, GEN T)
966    GEN     QXQXV_to_mod(GEN V, GEN T)
967    GEN     QXV_QXQ_eval(GEN v, GEN a, GEN T)
968    GEN     QXX_QXQ_eval(GEN v, GEN a, GEN T)
969    GEN     Rg_RgX_sub(GEN x, GEN y)
970    GEN     Rg_to_RgC(GEN x, long N)
971    GEN     RgM_to_RgXV(GEN x, long v)
972    GEN     RgM_to_RgXX(GEN x, long v, long w)
973    GEN     RgV_to_RgX(GEN x, long v)
974    GEN     RgV_to_RgM(GEN v, long n)
975    GEN     RgV_to_RgX_reverse(GEN x, long v)
976    GEN     RgX_RgXQ_eval(GEN f, GEN x, GEN T)
977    GEN     RgX_RgXQV_eval(GEN P, GEN V, GEN T)
978    GEN     RgX_RgXn_eval(GEN Q, GEN x, long n)
979    GEN     RgX_RgXnV_eval(GEN Q, GEN x, long n)
980    GEN     RgX_Rg_add(GEN y, GEN x)
981    GEN     RgX_Rg_add_shallow(GEN y, GEN x)
982    GEN     RgX_Rg_div(GEN y, GEN x)
983    GEN     RgX_Rg_divexact(GEN x, GEN y)
984    GEN     RgX_Rg_eval_bk(GEN Q, GEN x)
985    GEN     RgX_Rg_mul(GEN y, GEN x)
986    GEN     RgX_Rg_sub(GEN y, GEN x)
987    GEN     RgX_RgV_eval(GEN Q, GEN x)
988    GEN     RgX_add(GEN x, GEN y)
989    GEN     RgX_blocks(GEN P, long n, long m)
990    GEN     RgX_deflate(GEN x0, long d)
991    GEN     RgX_deriv(GEN x)
992    GEN     RgX_div_by_X_x(GEN a, GEN x, GEN *r)
993    GEN     RgX_divrem(GEN x, GEN y, GEN *r)
994    GEN     RgX_divs(GEN y, long x)
995    long    RgX_equal(GEN x, GEN y)
996    void    RgX_even_odd(GEN p, GEN *pe, GEN *po)
997    GEN     RgX_get_0(GEN x)
998    GEN     RgX_get_1(GEN x)
999    GEN     RgX_inflate(GEN x0, long d)
1000    GEN     RgX_mul(GEN x, GEN y)
1001    GEN     RgX_mul_normalized(GEN A, long a, GEN B, long b)
1002    GEN     RgX_mulXn(GEN x, long d)
1003    GEN     RgX_muls(GEN y, long x)
1004    GEN     RgX_mulspec(GEN a, GEN b, long na, long nb)
1005    GEN     RgX_neg(GEN x)
1006    GEN     RgX_normalize(GEN x)
1007    GEN     RgX_pseudodivrem(GEN x, GEN y, GEN *ptr)
1008    GEN     RgX_pseudorem(GEN x, GEN y)
1009    GEN     RgX_recip(GEN x)
1010    GEN     RgX_recip_shallow(GEN x)
1011    GEN     RgX_renormalize_lg(GEN x, long lx)
1012    GEN     RgX_rescale(GEN P, GEN h)
1013    GEN     RgX_rotate_shallow(GEN P, long k, long p)
1014    GEN     RgX_shift(GEN a, long n)
1015    GEN     RgX_shift_shallow(GEN x, long n)
1016    GEN     RgX_splitting(GEN p, long k)
1017    GEN     RgX_sqr(GEN x)
1018    GEN     RgX_sqrspec(GEN a, long na)
1019    GEN     RgX_sub(GEN x, GEN y)
1020    GEN     RgX_to_RgC(GEN x, long N)
1021    GEN     RgX_translate(GEN P, GEN c)
1022    GEN     RgX_unscale(GEN P, GEN h)
1023    GEN     RgXQ_matrix_pow(GEN y, long n, long m, GEN P)
1024    GEN     RgXQ_norm(GEN x, GEN T)
1025    GEN     RgXQ_pow(GEN x, GEN n, GEN T)
1026    GEN     RgXQ_powers(GEN x, long l, GEN T)
1027    GEN     RgXQ_powu(GEN x, ulong n, GEN T)
1028    GEN     RgXQC_red(GEN P, GEN T)
1029    GEN     RgXQV_RgXQ_mul(GEN v, GEN x, GEN T)
1030    GEN     RgXQV_red(GEN P, GEN T)
1031    GEN     RgXQX_RgXQ_mul(GEN x, GEN y, GEN T)
1032    GEN     RgXQX_divrem(GEN x, GEN y, GEN T, GEN *r)
1033    GEN     RgXQX_mul(GEN x, GEN y, GEN T)
1034    GEN     RgXQX_pseudodivrem(GEN x, GEN y, GEN T, GEN *ptr)
1035    GEN     RgXQX_pseudorem(GEN x, GEN y, GEN T)
1036    GEN     RgXQX_red(GEN P, GEN T)
1037    GEN     RgXQX_sqr(GEN x, GEN T)
1038    GEN     RgXQX_translate(GEN P, GEN c, GEN T)
1039    GEN     RgXV_RgV_eval(GEN Q, GEN x)
1040    GEN     RgXV_to_RgM(GEN v, long n)
1041    GEN     RgXV_unscale(GEN v, GEN h)
1042    GEN     RgXX_to_RgM(GEN v, long n)
1043    long    RgXY_degreex(GEN bpol)
1044    GEN     RgXY_swap(GEN x, long n, long w)
1045    GEN     RgXY_swapspec(GEN x, long n, long w, long nx)
1046    GEN     RgXn_eval(GEN Q, GEN x, long n)
1047    GEN     RgXn_exp(GEN f, long e)
1048    GEN     RgXn_inv(GEN f, long e)
1049    GEN     RgXn_mul(GEN f, GEN g, long n)
1050    GEN     RgXn_powers(GEN f, long m, long n)
1051    GEN     RgXn_red_shallow(GEN a, long n)
1052    GEN     RgXn_reverse(GEN f, long e)
1053    GEN     RgXn_sqr(GEN f, long n)
1054    GEN     RgXnV_red_shallow(GEN P, long n)
1055    GEN     RgXn_powu(GEN x, ulong m, long n)
1056    GEN     RgXn_powu_i(GEN x, ulong m, long n)
1057    GEN     ZX_translate(GEN P, GEN c)
1058    GEN     ZX_unscale2n(GEN P, long n)
1059    GEN     ZX_unscale(GEN P, GEN h)
1060    GEN     ZX_unscale_div(GEN P, GEN h)
1061    int     ZXQX_dvd(GEN x, GEN y, GEN T)
1062    long    brent_kung_optpow(long d, long n, long m)
1063    GEN     gen_bkeval(GEN Q, long d, GEN x, int use_sqr, void *E,
1064              const bb_algebra *ff, GEN cmul(void *E, GEN P, long a, GEN x))
1065    GEN     gen_bkeval_powers(GEN P, long d, GEN V, void *E,
1066              const bb_algebra *ff, GEN cmul(void *E, GEN P, long a, GEN x))
1067    const bb_algebra * get_Rg_algebra()
1068
1069    # ZG.c
1070    void    ZGC_G_mul_inplace(GEN v, GEN x)
1071    void    ZGC_add_inplace(GEN x, GEN y)
1072    GEN     ZGC_add_sparse(GEN x, GEN y)
1073    void    ZGM_add_inplace(GEN x, GEN y)
1074    GEN     ZGM_add_sparse(GEN x, GEN y)
1075    GEN     G_ZGC_mul(GEN x, GEN v)
1076    GEN     G_ZG_mul(GEN x, GEN y)
1077    GEN     ZGC_G_mul(GEN v, GEN x)
1078    GEN     ZGC_Z_mul(GEN v, GEN x)
1079    GEN     ZG_G_mul(GEN x, GEN y)
1080    GEN     ZG_Z_mul(GEN x, GEN c)
1081    GEN     ZG_add(GEN x, GEN y)
1082    GEN     ZG_mul(GEN x, GEN y)
1083    GEN     ZG_neg(GEN x)
1084    GEN     ZG_normalize(GEN x)
1085    GEN     ZG_sub(GEN x, GEN y)
1086
1087    # ZV.c
1088
1089    void    Flc_lincomb1_inplace(GEN X, GEN Y, ulong v, ulong q)
1090    void    RgM_check_ZM(GEN A, const char *s)
1091    void    RgV_check_ZV(GEN A, const char *s)
1092    GEN     ZV_zc_mul(GEN x, GEN y)
1093    GEN     ZC_ZV_mul(GEN x, GEN y)
1094    GEN     ZC_Z_add(GEN x, GEN y)
1095    GEN     ZC_Z_divexact(GEN X, GEN c)
1096    GEN     ZC_Z_mul(GEN X, GEN c)
1097    GEN     ZC_Z_sub(GEN x, GEN y)
1098    GEN     ZC_add(GEN x, GEN y)
1099    GEN     ZC_copy(GEN x)
1100    GEN     ZC_hnfremdiv(GEN x, GEN y, GEN *Q)
1101    long    ZC_is_ei(GEN x)
1102    GEN     ZC_lincomb(GEN u, GEN v, GEN X, GEN Y)
1103    void    ZC_lincomb1_inplace(GEN X, GEN Y, GEN v)
1104    GEN     ZC_neg(GEN M)
1105    GEN     ZC_reducemodlll(GEN x, GEN y)
1106    GEN     ZC_reducemodmatrix(GEN v, GEN y)
1107    GEN     ZC_sub(GEN x, GEN y)
1108    GEN     ZC_z_mul(GEN X, long c)
1109    GEN     ZM_ZC_mul(GEN x, GEN y)
1110    GEN     ZM_Z_div(GEN X, GEN c)
1111    GEN     ZM_Z_divexact(GEN X, GEN c)
1112    GEN     ZM_Z_mul(GEN X, GEN c)
1113    GEN     ZM_add(GEN x, GEN y)
1114    GEN     ZM_copy(GEN x)
1115    GEN     ZM_det_triangular(GEN mat)
1116    GEN     ZM_diag_mul(GEN m, GEN d)
1117    int     ZM_equal(GEN A, GEN B)
1118    GEN     ZM_hnfdivrem(GEN x, GEN y, GEN *Q)
1119    int     ZM_ishnf(GEN x)
1120    int     ZM_isidentity(GEN x)
1121    int     ZM_isscalar(GEN x, GEN s)
1122    long    ZM_max_lg(GEN x)
1123    GEN     ZM_mul(GEN x, GEN y)
1124    GEN     ZM_mul_diag(GEN m, GEN d)
1125    GEN     ZM_multosym(GEN x, GEN y)
1126    GEN     ZM_neg(GEN x)
1127    GEN     ZM_nm_mul(GEN x, GEN y)
1128    GEN     ZM_pow(GEN x, GEN n)
1129    GEN     ZM_powu(GEN x, ulong n)
1130    GEN     ZM_reducemodlll(GEN x, GEN y)
1131    GEN     ZM_reducemodmatrix(GEN v, GEN y)
1132    GEN     ZM_sqr(GEN x)
1133    GEN     ZM_sub(GEN x, GEN y)
1134    GEN     ZM_supnorm(GEN x)
1135    GEN     ZM_to_Flm(GEN x, ulong p)
1136    GEN     ZM_to_zm(GEN z)
1137    GEN     ZM_transmul(GEN x, GEN y)
1138    GEN     ZM_transmultosym(GEN x, GEN y)
1139    GEN     ZMV_to_zmV(GEN z)
1140    void    ZM_togglesign(GEN M)
1141    GEN     ZM_zc_mul(GEN x, GEN y)
1142    GEN     ZM_zm_mul(GEN x, GEN y)
1143    GEN     ZMrow_ZC_mul(GEN x, GEN y, long i)
1144    GEN     ZV_ZM_mul(GEN x, GEN y)
1145    int     ZV_abscmp(GEN x, GEN y)
1146    int     ZV_cmp(GEN x, GEN y)
1147    GEN     ZV_content(GEN x)
1148    GEN     ZV_dotproduct(GEN x, GEN y)
1149    GEN     ZV_dotsquare(GEN x)
1150    int     ZV_equal(GEN V, GEN W)
1151    int     ZV_equal0(GEN V)
1152    long    ZV_max_lg(GEN x)
1153    void    ZV_neg_inplace(GEN M)
1154    GEN     ZV_prod(GEN v)
1155    GEN     ZV_sum(GEN v)
1156    GEN     ZV_to_Flv(GEN x, ulong p)
1157    GEN     ZV_to_nv(GEN z)
1158    void    ZV_togglesign(GEN M)
1159    GEN     gram_matrix(GEN M)
1160    GEN     nm_Z_mul(GEN X, GEN c)
1161    GEN     zm_mul(GEN x, GEN y)
1162    GEN     zm_to_Flm(GEN z, ulong p)
1163    GEN     zm_to_ZM(GEN z)
1164    GEN     zm_zc_mul(GEN x, GEN y)
1165    GEN     zmV_to_ZMV(GEN z)
1166    long    zv_content(GEN x)
1167    long    zv_dotproduct(GEN x, GEN y)
1168    int     zv_equal(GEN V, GEN W)
1169    int     zv_equal0(GEN V)
1170    GEN     zv_neg(GEN x)
1171    GEN     zv_neg_inplace(GEN M)
1172    long    zv_prod(GEN v)
1173    GEN     zv_prod_Z(GEN v)
1174    long    zv_sum(GEN v)
1175    GEN     zv_to_Flv(GEN z, ulong p)
1176    GEN     zv_z_mul(GEN v, long n)
1177    GEN     zv_ZM_mul(GEN x, GEN y)
1178    int     zvV_equal(GEN V, GEN W)
1179
1180    # ZX.c
1181
1182    void    RgX_check_QX(GEN x, const char *s)
1183    void    RgX_check_ZX(GEN x, const char *s)
1184    void    RgX_check_ZXX(GEN x, const char *s)
1185    GEN     Z_ZX_sub(GEN x, GEN y)
1186    GEN     ZX_Z_add(GEN y, GEN x)
1187    GEN     ZX_Z_add_shallow(GEN y, GEN x)
1188    GEN     ZX_Z_divexact(GEN y, GEN x)
1189    GEN     ZX_Z_mul(GEN y, GEN x)
1190    GEN     ZX_Z_sub(GEN y, GEN x)
1191    GEN     ZX_add(GEN x, GEN y)
1192    GEN     ZX_copy(GEN x)
1193    GEN     ZX_deriv(GEN x)
1194    GEN     ZX_div_by_X_1(GEN a, GEN *r)
1195    int     ZX_equal(GEN V, GEN W)
1196    GEN     ZX_eval1(GEN x)
1197    long    ZX_max_lg(GEN x)
1198    GEN     ZX_mod_Xnm1(GEN T, ulong n)
1199    GEN     ZX_mul(GEN x, GEN y)
1200    GEN     ZX_mulspec(GEN a, GEN b, long na, long nb)
1201    GEN     ZX_mulu(GEN y, ulong x)
1202    GEN     ZX_neg(GEN x)
1203    GEN     ZX_rem(GEN x, GEN y)
1204    GEN     ZX_remi2n(GEN y, long n)
1205    GEN     ZX_rescale2n(GEN P, long n)
1206    GEN     ZX_rescale(GEN P, GEN h)
1207    GEN     ZX_rescale_lt(GEN P)
1208    GEN     ZX_shifti(GEN x, long n)
1209    GEN     ZX_sqr(GEN x)
1210    GEN     ZX_sqrspec(GEN a, long na)
1211    GEN     ZX_sub(GEN x, GEN y)
1212    long    ZX_val(GEN x)
1213    long    ZX_valrem(GEN x, GEN *Z)
1214    GEN     ZXT_remi2n(GEN z, long n)
1215    GEN     ZXV_Z_mul(GEN y, GEN x)
1216    GEN     ZXV_dotproduct(GEN V, GEN W)
1217    int     ZXV_equal(GEN V, GEN W)
1218    GEN     ZXV_remi2n(GEN x, long n)
1219    GEN     ZXX_Z_divexact(GEN y, GEN x)
1220    GEN     ZXX_Z_mul(GEN y, GEN x)
1221    GEN     ZXX_Z_add_shallow(GEN x, GEN y)
1222    long    ZXX_max_lg(GEN x)
1223    GEN     ZXX_renormalize(GEN x, long lx)
1224    GEN     ZXX_to_Kronecker(GEN P, long n)
1225    GEN     ZXX_to_Kronecker_spec(GEN P, long lP, long n)
1226    GEN     scalar_ZX(GEN x, long v)
1227    GEN     scalar_ZX_shallow(GEN x, long v)
1228    GEN     zx_to_ZX(GEN z)
1229
1230    # algebras.c
1231
1232    GEN     alg_centralproj(GEN al, GEN z, int maps)
1233    GEN     alg_change_overorder_shallow(GEN al, GEN ord)
1234    GEN     alg_complete(GEN rnf, GEN aut, GEN hi, GEN hf, long maxord)
1235    GEN     alg_csa_table(GEN nf, GEN mt, long v, long maxord)
1236    GEN     alg_cyclic(GEN rnf, GEN aut, GEN b, long maxord)
1237    GEN     alg_decomposition(GEN al)
1238    long    alg_get_absdim(GEN al)
1239    long    algabsdim(GEN al)
1240    GEN     alg_get_abssplitting(GEN al)
1241    GEN     alg_get_aut(GEN al)
1242    GEN     algaut(GEN al)
1243    GEN     alg_get_auts(GEN al)
1244    GEN     alg_get_b(GEN al)
1245    GEN     algb(GEN al)
1246    GEN     algcenter(GEN al)
1247    GEN     alg_get_center(GEN al)
1248    GEN     alg_get_char(GEN al)
1249    GEN     algchar(GEN al)
1250    long    alg_get_degree(GEN al)
1251    long    algdegree(GEN al)
1252    long    alg_get_dim(GEN al)
1253    long    algdim(GEN al)
1254    GEN     alg_get_hasse_f(GEN al)
1255    GEN     alghassef(GEN al)
1256    GEN     alg_get_hasse_i(GEN al)
1257    GEN     alghassei(GEN al)
1258    GEN     alg_get_invbasis(GEN al)
1259    GEN     alginvbasis(GEN al)
1260    GEN     alg_get_multable(GEN al)
1261    GEN     alg_get_basis(GEN al)
1262    GEN     algbasis(GEN al)
1263    GEN     alg_get_relmultable(GEN al)
1264    GEN     algrelmultable(GEN al)
1265    GEN     alg_get_splitpol(GEN al)
1266    GEN     alg_get_splittingfield(GEN al)
1267    GEN     algsplittingfield(GEN al)
1268    GEN     alg_get_splittingbasis(GEN al)
1269    GEN     alg_get_splittingbasisinv(GEN al)
1270    GEN     alg_get_splittingdata(GEN al)
1271    GEN     algsplittingdata(GEN al)
1272    GEN     alg_get_tracebasis(GEN al)
1273    GEN     alg_hasse(GEN nf, long n, GEN hi, GEN hf, long var, long flag)
1274    GEN     alg_hilbert(GEN nf, GEN a, GEN b, long v, long flag)
1275    GEN     alg_matrix(GEN nf, long n, long v, GEN L, long flag)
1276    long    alg_model(GEN al, GEN x)
1277    GEN     alg_ordermodp(GEN al, GEN p)
1278    GEN     alg_quotient(GEN al, GEN I, int maps)
1279    GEN     algradical(GEN al)
1280    GEN     algsimpledec(GEN al, int maps)
1281    GEN     algsubalg(GEN al, GEN basis)
1282    long    alg_type(GEN al)
1283    GEN     algadd(GEN al, GEN x, GEN y)
1284    GEN     algalgtobasis(GEN al, GEN x)
1285    GEN     algbasischarpoly(GEN al, GEN x, long v)
1286    GEN     algbasismul(GEN al, GEN x, GEN y)
1287    GEN     algbasismultable(GEN al, GEN x)
1288    GEN     algbasismultable_Flm(GEN mt, GEN x, ulong m)
1289    GEN     algbasistoalg(GEN al, GEN x)
1290    GEN     algcharpoly(GEN al, GEN x, long v)
1291    GEN     algdisc(GEN al)
1292    GEN     algdivl(GEN al, GEN x, GEN y)
1293    GEN     algdivr(GEN al, GEN x, GEN y)
1294    GEN     alggroup(GEN gal, GEN p)
1295    GEN     alghasse(GEN al, GEN pl)
1296    GEN     alginit(GEN A, GEN B, long v, long flag)
1297    long    algindex(GEN al, GEN pl)
1298    GEN     alginv(GEN al, GEN x)
1299    int     algisassociative(GEN mt0, GEN p)
1300    int     algiscommutative(GEN al)
1301    int     algisdivision(GEN al, GEN pl)
1302    int     algisramified(GEN al, GEN pl)
1303    int     algissemisimple(GEN al)
1304    int     algissimple(GEN al, long ss)
1305    int     algissplit(GEN al, GEN pl)
1306    int     algisdivl(GEN al, GEN x, GEN y, GEN* ptz)
1307    int     algisinv(GEN al, GEN x, GEN* ptix)
1308    GEN     algleftordermodp(GEN al, GEN Ip, GEN p)
1309    GEN     algmul(GEN al, GEN x, GEN y)
1310    GEN     algmultable(GEN al)
1311    GEN     alglathnf(GEN al, GEN m)
1312    GEN     algleftmultable(GEN al, GEN x)
1313    GEN     algneg(GEN al, GEN x)
1314    GEN     algnorm(GEN al, GEN x)
1315    GEN     algpoleval(GEN al, GEN pol, GEN x)
1316    GEN     algpow(GEN al, GEN x, GEN n)
1317    GEN     algprimesubalg(GEN al)
1318    GEN     algramifiedplaces(GEN al)
1319    GEN     algrandom(GEN al, GEN b)
1320    GEN     algsplittingmatrix(GEN al, GEN x)
1321    GEN     algsqr(GEN al, GEN x)
1322    GEN     algsub(GEN al, GEN x, GEN y)
1323    GEN     algtableinit(GEN mt, GEN p)
1324    GEN     algtensor(GEN al1, GEN al2, long maxord)
1325    GEN     algtrace(GEN al, GEN x)
1326    long    algtype(GEN al)
1327    GEN     bnfgwgeneric(GEN bnf, GEN Lpr, GEN Ld, GEN pl, long var)
1328    GEN     bnrgwsearch(GEN bnr, GEN Lpr, GEN Ld, GEN pl)
1329    void    checkalg(GEN x)
1330    void    checkhasse(GEN nf, GEN hi, GEN hf, long n)
1331    long    cyclicrelfrob(GEN rnf, GEN auts, GEN pr)
1332    GEN     hassecoprime(GEN hi, GEN hf, long n)
1333    GEN     hassedown(GEN nf, long n, GEN hi, GEN hf)
1334    GEN     hassewedderburn(GEN hi, GEN hf, long n)
1335    long    localhasse(GEN rnf, GEN cnd, GEN pl, GEN auts, GEN b, long k)
1336    GEN     nfgrunwaldwang(GEN nf0, GEN Lpr, GEN Ld, GEN pl, long var)
1337    GEN     nfgwkummer(GEN nf, GEN Lpr, GEN Ld, GEN pl, long var)
1338
1339    # alglin1.c
1340
1341    GEN     F2m_F2c_gauss(GEN a, GEN b)
1342    GEN     F2m_F2c_invimage(GEN A, GEN y)
1343    GEN     F2m_deplin(GEN x)
1344    ulong   F2m_det(GEN x)
1345    ulong   F2m_det_sp(GEN x)
1346    GEN     F2m_gauss(GEN a, GEN b)
1347    GEN     F2m_image(GEN x)
1348    GEN     F2m_indexrank(GEN x)
1349    GEN     F2m_inv(GEN x)
1350    GEN     F2m_invimage(GEN A, GEN B)
1351    GEN     F2m_ker(GEN x)
1352    GEN     F2m_ker_sp(GEN x, long deplin)
1353    long    F2m_rank(GEN x)
1354    GEN     F2m_suppl(GEN x)
1355    GEN     F2xqM_F2xqC_mul(GEN a, GEN b, GEN T)
1356    GEN     F2xqM_det(GEN a, GEN T)
1357    GEN     F2xqM_ker(GEN x, GEN T)
1358    GEN     F2xqM_image(GEN x, GEN T)
1359    GEN     F2xqM_inv(GEN a, GEN T)
1360    GEN     F2xqM_mul(GEN a, GEN b, GEN T)
1361    long    F2xqM_rank(GEN x, GEN T)
1362    GEN     Flm_Flc_gauss(GEN a, GEN b, ulong p)
1363    GEN     Flm_Flc_invimage(GEN mat, GEN y, ulong p)
1364    GEN     Flm_deplin(GEN x, ulong p)
1365    ulong   Flm_det(GEN x, ulong p)
1366    ulong   Flm_det_sp(GEN x, ulong p)
1367    GEN     Flm_gauss(GEN a, GEN b, ulong p)
1368    GEN     Flm_image(GEN x, ulong p)
1369    GEN     Flm_invimage(GEN m, GEN v, ulong p)
1370    GEN     Flm_indexrank(GEN x, ulong p)
1371    GEN     Flm_intersect(GEN x, GEN y, ulong p)
1372    GEN     Flm_inv(GEN x, ulong p)
1373    GEN     Flm_ker(GEN x, ulong p)
1374    GEN     Flm_ker_sp(GEN x, ulong p, long deplin)
1375    long    Flm_rank(GEN x, ulong p)
1376    GEN     Flm_suppl(GEN x, ulong p)
1377    GEN     FlxqM_FlxqC_gauss(GEN a, GEN b, GEN T, ulong p)
1378    GEN     FlxqM_FlxqC_mul(GEN a, GEN b, GEN T, ulong p)
1379    GEN     FlxqM_det(GEN a, GEN T, ulong p)
1380    GEN     FlxqM_gauss(GEN a, GEN b, GEN T, ulong p)
1381    GEN     FlxqM_ker(GEN x, GEN T, ulong p)
1382    GEN     FlxqM_image(GEN x, GEN T, ulong p)
1383    GEN     FlxqM_inv(GEN x, GEN T, ulong p)
1384    GEN     FlxqM_mul(GEN a, GEN b, GEN T, ulong p)
1385    long    FlxqM_rank(GEN x, GEN T, ulong p)
1386    GEN     FpM_FpC_gauss(GEN a, GEN b, GEN p)
1387    GEN     FpM_FpC_invimage(GEN m, GEN v, GEN p)
1388    GEN     FpM_deplin(GEN x, GEN p)
1389    GEN     FpM_det(GEN x, GEN p)
1390    GEN     FpM_gauss(GEN a, GEN b, GEN p)
1391    GEN     FpM_image(GEN x, GEN p)
1392    GEN     FpM_indexrank(GEN x, GEN p)
1393    GEN     FpM_intersect(GEN x, GEN y, GEN p)
1394    GEN     FpM_inv(GEN x, GEN p)
1395    GEN     FpM_invimage(GEN m, GEN v, GEN p)
1396    GEN     FpM_ker(GEN x, GEN p)
1397    long    FpM_rank(GEN x, GEN p)
1398    GEN     FpM_suppl(GEN x, GEN p)
1399    GEN     FqM_FqC_gauss(GEN a, GEN b, GEN T, GEN p)
1400    GEN     FqM_FqC_mul(GEN a, GEN b, GEN T, GEN p)
1401    GEN     FqM_deplin(GEN x, GEN T, GEN p)
1402    GEN     FqM_det(GEN x, GEN T, GEN p)
1403    GEN     FqM_gauss(GEN a, GEN b, GEN T, GEN p)
1404    GEN     FqM_ker(GEN x, GEN T, GEN p)
1405    GEN     FqM_image(GEN x, GEN T, GEN p)
1406    GEN     FqM_inv(GEN x, GEN T, GEN p)
1407    GEN     FqM_mul(GEN a, GEN b, GEN T, GEN p)
1408    long    FqM_rank(GEN a, GEN T, GEN p)
1409    GEN     FqM_suppl(GEN x, GEN T, GEN p)
1410    GEN     QM_inv(GEN M, GEN dM)
1411    GEN     RgM_Fp_init(GEN a, GEN p, ulong *pp)
1412    GEN     RgM_RgC_invimage(GEN A, GEN B)
1413    GEN     RgM_diagonal(GEN m)
1414    GEN     RgM_diagonal_shallow(GEN m)
1415    GEN     RgM_Hadamard(GEN a)
1416    GEN     RgM_inv_upper(GEN a)
1417    GEN     RgM_invimage(GEN A, GEN B)
1418    GEN     RgM_solve(GEN a, GEN b)
1419    GEN     RgM_solve_realimag(GEN x, GEN y)
1420    void    RgMs_structelim(GEN M, long nbrow, GEN A, GEN *p_col, GEN *p_lin)
1421    GEN     ZM_det(GEN a)
1422    GEN     ZM_detmult(GEN A)
1423    GEN     ZM_gauss(GEN a, GEN b)
1424    GEN     ZM_imagecompl(GEN x)
1425    GEN     ZM_indeximage(GEN x)
1426    GEN     ZM_indexrank(GEN x)
1427    GEN     ZM_inv(GEN M, GEN dM)
1428    GEN     ZM_inv_ratlift(GEN M, GEN *pden)
1429    long    ZM_rank(GEN x)
1430    GEN     ZlM_gauss(GEN a, GEN b, ulong p, long e, GEN C)
1431    GEN     closemodinvertible(GEN x, GEN y)
1432    GEN     deplin(GEN x)
1433    GEN     det(GEN a)
1434    GEN     det0(GEN a, long flag)
1435    GEN     det2(GEN a)
1436    GEN     detint(GEN x)
1437    GEN     eigen(GEN x, long prec)
1438    GEN     gauss(GEN a, GEN b)
1439    GEN     gaussmodulo(GEN M, GEN D, GEN Y)
1440    GEN     gaussmodulo2(GEN M, GEN D, GEN Y)
1441    GEN     gen_Gauss(GEN a, GEN b, void *E, const bb_field *ff)
1442    GEN     gen_Gauss_pivot(GEN x, long *rr, void *E, const bb_field *ff)
1443    GEN     gen_det(GEN a, void *E, const bb_field *ff)
1444    GEN     gen_ker(GEN x, long deplin, void *E, const bb_field *ff)
1445    GEN     gen_matcolmul(GEN a, GEN b, void *E, const bb_field *ff)
1446    GEN     gen_matmul(GEN a, GEN b, void *E, const bb_field *ff)
1447    GEN     image(GEN x)
1448    GEN     image2(GEN x)
1449    GEN     imagecompl(GEN x)
1450    GEN     indexrank(GEN x)
1451    GEN     inverseimage(GEN mat, GEN y)
1452    GEN     ker(GEN x)
1453    GEN     keri(GEN x)
1454    GEN     mateigen(GEN x, long flag, long prec)
1455    GEN     matimage0(GEN x, long flag)
1456    GEN     matker0(GEN x, long flag)
1457    GEN     matsolvemod0(GEN M, GEN D, GEN Y, long flag)
1458    long    rank(GEN x)
1459    GEN     reducemodinvertible(GEN x, GEN y)
1460    GEN     reducemodlll(GEN x, GEN y)
1461    GEN     split_realimag(GEN x, long r1, long r2)
1462    GEN     suppl(GEN x)
1463
1464    # alglin2.c
1465
1466    GEN     Flm_charpoly(GEN x, ulong p)
1467    GEN     Flm_hess(GEN x, ulong p)
1468    GEN     FpM_charpoly(GEN x, GEN p)
1469    GEN     FpM_hess(GEN x, GEN p)
1470    GEN     Frobeniusform(GEN V, long n)
1471    GEN     QM_minors_coprime(GEN x, GEN pp)
1472    GEN     QM_ImZ_hnf(GEN x)
1473    GEN     QM_ImQ_hnf(GEN x)
1474    GEN     QM_charpoly_ZX(GEN M)
1475    GEN     QM_charpoly_ZX_bound(GEN M, long bit)
1476    GEN     QM_charpoly_ZX2_bound(GEN M, GEN M2, long bit)
1477    GEN     ZM_charpoly(GEN x)
1478    GEN     adj(GEN x)
1479    GEN     adjsafe(GEN x)
1480    GEN     caract(GEN x, long v)
1481    GEN     caradj(GEN x, long v, GEN *py)
1482    GEN     carberkowitz(GEN x, long v)
1483    GEN     carhess(GEN x, long v)
1484    GEN     charpoly(GEN x, long v)
1485    GEN     charpoly0(GEN x, long v, long flag)
1486    GEN     gnorm(GEN x)
1487    GEN     gnorml1(GEN x, long prec)
1488    GEN     gnorml1_fake(GEN x)
1489    GEN     gnormlp(GEN x, GEN p, long prec)
1490    GEN     gnorml2(GEN x)
1491    GEN     gsupnorm(GEN x, long prec)
1492    void    gsupnorm_aux(GEN x, GEN *m, GEN *msq, long prec)
1493    GEN     gtrace(GEN x)
1494    GEN     hess(GEN x)
1495    GEN     intersect(GEN x, GEN y)
1496    GEN     jacobi(GEN a, long prec)
1497    GEN     matadjoint0(GEN x, long flag)
1498    GEN     matcompanion(GEN x)
1499    GEN     matrixqz0(GEN x, GEN pp)
1500    GEN     minpoly(GEN x, long v)
1501    GEN     qfgaussred(GEN a)
1502    GEN     qfgaussred_positive(GEN a)
1503    GEN     qfsign(GEN a)
1504
1505    # alglin3.c
1506
1507    GEN     apply0(GEN f, GEN A)
1508    GEN     diagonal(GEN x)
1509    GEN     diagonal_shallow(GEN x)
1510    GEN     extract0(GEN x, GEN l1, GEN l2)
1511    GEN     fold0(GEN f, GEN A)
1512    GEN     genapply(void *E, GEN (*f)(void *E, GEN x), GEN A)
1513    GEN     genfold(void *E, GEN (*f)(void *E, GEN x, GEN y), GEN A)
1514    GEN     genindexselect(void *E, long (*f)(void *E, GEN x), GEN A)
1515    GEN     genselect(void *E, long (*f)(void *E, GEN x), GEN A)
1516    GEN     gtomat(GEN x)
1517    GEN     gtrans(GEN x)
1518    GEN     matmuldiagonal(GEN x, GEN d)
1519    GEN     matmultodiagonal(GEN x, GEN y)
1520    GEN     matslice0(GEN A, long x1, long x2, long y1, long y2)
1521    GEN     parapply(GEN V, GEN C)
1522    void    parfor(GEN a, GEN b, GEN code, void *E, long call(void*, GEN, GEN))
1523    void    parforprime(GEN a, GEN b, GEN code, void *E, long call(void*, GEN, GEN))
1524    void    parforvec(GEN x, GEN code, long flag, void *E, long call(void*, GEN, GEN))
1525    GEN     parselect(GEN C, GEN D, long flag)
1526    GEN     select0(GEN A, GEN f, long flag)
1527    GEN     shallowextract(GEN x, GEN L)
1528    GEN     shallowtrans(GEN x)
1529    GEN     vecapply(void *E, GEN (*f)(void* E, GEN x), GEN x)
1530    GEN     veccatapply(void *E, GEN (*f)(void* E, GEN x), GEN x)
1531    GEN     veccatselapply(void *Epred, long (*pred)(void* E, GEN x), void *Efun,
1532                                GEN (*fun)(void* E, GEN x), GEN A)
1533    GEN     vecrange(GEN a, GEN b)
1534    GEN     vecrangess(long a, long b)
1535    GEN     vecselapply(void *Epred, long (*pred)(void* E, GEN x), void *Efun,
1536                                GEN (*fun)(void* E, GEN x), GEN A)
1537    GEN     vecselect(void *E, long (*f)(void* E, GEN x), GEN A)
1538    GEN     vecslice0(GEN A, long y1, long y2)
1539    GEN     vecsum(GEN v)
1540
1541    # anal.c
1542
1543    void    addhelp(const char *e, char *s)
1544    void    alias0(const char *s, const char *old)
1545    GEN     compile_str(const char *s)
1546    GEN     chartoGENstr(char c)
1547    long    delete_var()
1548    long    fetch_user_var(const char *s)
1549    long    fetch_var()
1550    long    fetch_var_higher()
1551    GEN     fetch_var_value(long vx, GEN t)
1552    char *  gp_embedded(const char *s)
1553    void    gp_embedded_init(long rsize, long vsize)
1554    GEN     gp_read_str(const char *t)
1555    entree* install(void *f, const char *name, const char *code)
1556    entree* is_entry(const char *s)
1557    void    kill0(const char *e)
1558    void    pari_var_close()
1559    void    pari_var_init()
1560    long    pari_var_next()
1561    long    pari_var_next_temp()
1562    long    pari_var_create(entree *ep)
1563    void    name_var(long n, const char *s)
1564    GEN     readseq(char *t)
1565    GEN*    safegel(GEN x, long l)
1566    long*   safeel(GEN x, long l)
1567    GEN*    safelistel(GEN x, long l)
1568    GEN*    safegcoeff(GEN x, long a, long b)
1569    GEN     strntoGENstr(const char *s, long n0)
1570    GEN     strtoGENstr(const char *s)
1571    GEN     strtoi(const char *s)
1572    GEN     strtor(const char *s, long prec)
1573    GEN     type0(GEN x)
1574    GEN     varhigher(const char *s, long v)
1575    GEN     varlower(const char *s, long v)
1576
1577    # aprcl.c
1578
1579    long    isprimeAPRCL(GEN N)
1580
1581    # Qfb.c
1582
1583    GEN     Qfb0(GEN x, GEN y, GEN z, GEN d, long prec)
1584    void    check_quaddisc(GEN x, long *s, long *r, const char *f)
1585    void    check_quaddisc_imag(GEN x, long *r, const char *f)
1586    void    check_quaddisc_real(GEN x, long *r, const char *f)
1587    long    cornacchia(GEN d, GEN p, GEN *px, GEN *py)
1588    long    cornacchia2(GEN d, GEN p, GEN *px, GEN *py)
1589    GEN     nucomp(GEN x, GEN y, GEN L)
1590    GEN     nudupl(GEN x, GEN L)
1591    GEN     nupow(GEN x, GEN n, GEN L)
1592    GEN     primeform(GEN x, GEN p, long prec)
1593    GEN     primeform_u(GEN x, ulong p)
1594    int     qfb_equal1(GEN f)
1595    GEN     qfbcompraw(GEN x, GEN y)
1596    GEN     qfbpowraw(GEN x, long n)
1597    GEN     qfbred0(GEN x, long flag, GEN D, GEN isqrtD, GEN sqrtD)
1598    GEN     qfbredsl2(GEN q, GEN S)
1599    GEN     qfbsolve(GEN Q, GEN n)
1600    GEN     qfi(GEN x, GEN y, GEN z)
1601    GEN     qfi_1(GEN x)
1602    GEN     qfi_Shanks(GEN a, GEN g, long n)
1603    GEN     qfi_log(GEN a, GEN g, GEN o)
1604    GEN     qfi_order(GEN q, GEN o)
1605    GEN     qficomp(GEN x, GEN y)
1606    GEN     qficompraw(GEN x, GEN y)
1607    GEN     qfipowraw(GEN x, long n)
1608    GEN     qfisolvep(GEN Q, GEN p)
1609    GEN     qfisqr(GEN x)
1610    GEN     qfisqrraw(GEN x)
1611    GEN     qfr(GEN x, GEN y, GEN z, GEN d)
1612    GEN     qfr3_comp(GEN x, GEN y, qfr_data *S)
1613    GEN     qfr3_pow(GEN x, GEN n, qfr_data *S)
1614    GEN     qfr3_red(GEN x, qfr_data *S)
1615    GEN     qfr3_rho(GEN x, qfr_data *S)
1616    GEN     qfr3_to_qfr(GEN x, GEN z)
1617    GEN     qfr5_comp(GEN x, GEN y, qfr_data *S)
1618    GEN     qfr5_dist(GEN e, GEN d, long prec)
1619    GEN     qfr5_pow(GEN x, GEN n, qfr_data *S)
1620    GEN     qfr5_red(GEN x, qfr_data *S)
1621    GEN     qfr5_rho(GEN x, qfr_data *S)
1622    GEN     qfr5_to_qfr(GEN x, GEN d0)
1623    GEN     qfr_1(GEN x)
1624    void    qfr_data_init(GEN D, long prec, qfr_data *S)
1625    GEN     qfr_to_qfr5(GEN x, long prec)
1626    GEN     qfrcomp(GEN x, GEN y)
1627    GEN     qfrcompraw(GEN x, GEN y)
1628    GEN     qfrpow(GEN x, GEN n)
1629    GEN     qfrpowraw(GEN x, long n)
1630    GEN     qfrsolvep(GEN Q, GEN p)
1631    GEN     qfrsqr(GEN x)
1632    GEN     qfrsqrraw(GEN x)
1633    GEN     quadgen(GEN x)
1634    GEN     quadpoly(GEN x)
1635    GEN     quadpoly0(GEN x, long v)
1636    GEN     redimag(GEN x)
1637    GEN     redreal(GEN x)
1638    GEN     redrealnod(GEN x, GEN isqrtD)
1639    GEN     rhoreal(GEN x)
1640    GEN     rhorealnod(GEN x, GEN isqrtD)
1641
1642    # arith1.c
1643
1644    ulong   Fl_order(ulong a, ulong o, ulong p)
1645    GEN     Fl_powers(ulong x, long n, ulong p)
1646    GEN     Fl_powers_pre(ulong x, long n, ulong p, ulong pi)
1647    ulong   Fl_powu(ulong x, ulong n, ulong p)
1648    ulong   Fl_powu_pre(ulong x, ulong n, ulong p, ulong pi)
1649    ulong   Fl_sqrt(ulong a, ulong p)
1650    ulong   Fl_sqrt_pre(ulong a, ulong p, ulong pi)
1651    ulong   Fl_sqrtl(ulong a, ulong l, ulong p)
1652    ulong   Fl_sqrtl_pre(ulong a, ulong l, ulong p, ulong pi)
1653    GEN     Fp_factored_order(GEN a, GEN o, GEN p)
1654    int     Fp_ispower(GEN x, GEN K, GEN p)
1655    GEN     Fp_log(GEN a, GEN g, GEN ord, GEN p)
1656    GEN     Fp_order(GEN a, GEN o, GEN p)
1657    GEN     Fp_pow(GEN a, GEN n, GEN m)
1658    GEN     Fp_powers(GEN x, long n, GEN p)
1659    GEN     Fp_pows(GEN A, long k, GEN N)
1660    GEN     Fp_powu(GEN x, ulong k, GEN p)
1661    GEN     Fp_sqrt(GEN a, GEN p)
1662    GEN     Fp_sqrtn(GEN a, GEN n, GEN p, GEN *zetan)
1663    GEN     Z_ZV_mod(GEN P, GEN xa)
1664    GEN     Z_chinese(GEN a, GEN b, GEN A, GEN B)
1665    GEN     Z_chinese_all(GEN a, GEN b, GEN A, GEN B, GEN *pC)
1666    GEN     Z_chinese_coprime(GEN a, GEN b, GEN A, GEN B, GEN C)
1667    GEN     Z_chinese_post(GEN a, GEN b, GEN C, GEN U, GEN d)
1668    void    Z_chinese_pre(GEN A, GEN B, GEN *pC, GEN *pU, GEN *pd)
1669    GEN     Z_factor_listP(GEN N, GEN L)
1670    long    Z_isanypower(GEN x, GEN *y)
1671    long    Z_isfundamental(GEN x)
1672    long    Z_ispow2(GEN x)
1673    long    Z_ispowerall(GEN x, ulong k, GEN *pt)
1674    long    Z_issquareall(GEN x, GEN *pt)
1675    GEN     Z_nv_mod(GEN P, GEN xa)
1676    GEN     ZV_allpnqn(GEN x)
1677    GEN     ZV_chinese(GEN A, GEN P, GEN *pt_mod)
1678    GEN     ZV_chinese_tree(GEN A, GEN P, GEN tree, GEN *pt_mod)
1679    GEN     ZV_producttree(GEN xa)
1680    GEN     ZX_nv_mod_tree(GEN P, GEN xa, GEN T)
1681    GEN     Zideallog(GEN bid, GEN x)
1682    long    Zp_issquare(GEN a, GEN p)
1683    GEN     bestappr(GEN x, GEN k)
1684    GEN     bestapprPade(GEN x, long B)
1685    long    cgcd(long a, long b)
1686    GEN     chinese(GEN x, GEN y)
1687    GEN     chinese1(GEN x)
1688    GEN     chinese1_coprime_Z(GEN x)
1689    GEN     classno(GEN x)
1690    GEN     classno2(GEN x)
1691    long    clcm(long a, long b)
1692    GEN     contfrac0(GEN x, GEN b, long flag)
1693    GEN     contfracpnqn(GEN x, long n)
1694    GEN     fibo(long n)
1695    GEN     gboundcf(GEN x, long k)
1696    GEN     gcf(GEN x)
1697    GEN     gcf2(GEN b, GEN x)
1698    const bb_field *get_Fp_field(void **E, GEN p)
1699    ulong   pgener_Fl(ulong p)
1700    ulong   pgener_Fl_local(ulong p, GEN L)
1701    GEN     pgener_Fp(GEN p)
1702    GEN     pgener_Fp_local(GEN p, GEN L)
1703    ulong   pgener_Zl(ulong p)
1704    GEN     pgener_Zp(GEN p)
1705    long    gisanypower(GEN x, GEN *pty)
1706    GEN     gissquare(GEN x)
1707    GEN     gissquareall(GEN x, GEN *pt)
1708    GEN     hclassno(GEN x)
1709    long    hilbert(GEN x, GEN y, GEN p)
1710    long    hilbertii(GEN x, GEN y, GEN p)
1711    long    isfundamental(GEN x)
1712    long    ispolygonal(GEN x, GEN S, GEN *N)
1713    long    ispower(GEN x, GEN k, GEN *pty)
1714    long    isprimepower(GEN x, GEN *pty)
1715    long    ispseudoprimepower(GEN n, GEN *pt)
1716    long    issquare(GEN x)
1717    long    issquareall(GEN x, GEN *pt)
1718    long    krois(GEN x, long y)
1719    long    kroiu(GEN x, ulong y)
1720    long    kronecker(GEN x, GEN y)
1721    long    krosi(long s, GEN x)
1722    long    kross(long x, long y)
1723    long    kroui(ulong x, GEN y)
1724    long    krouu(ulong x, ulong y)
1725    GEN     lcmii(GEN a, GEN b)
1726    long    logint0(GEN B, GEN y, GEN *ptq)
1727    GEN     mpfact(long n)
1728    GEN     muls_interval(long a, long b)
1729    GEN     mulu_interval(ulong a, ulong b)
1730    GEN     ncV_chinese_center(GEN A, GEN P, GEN *pt_mod)
1731    GEN     nmV_chinese_center(GEN A, GEN P, GEN *pt_mod)
1732    GEN     odd_prime_divisors(GEN q)
1733    GEN     order(GEN x)
1734    GEN     pnqn(GEN x)
1735    GEN     qfbclassno0(GEN x, long flag)
1736    GEN     quaddisc(GEN x)
1737    GEN     quadregulator(GEN x, long prec)
1738    GEN     quadunit(GEN x)
1739    ulong   rootsof1_Fl(ulong n, ulong p)
1740    GEN     rootsof1_Fp(GEN n, GEN p)
1741    GEN     rootsof1u_Fp(ulong n, GEN p)
1742    long    sisfundamental(long x)
1743    GEN     sqrtint(GEN a)
1744    GEN     ramanujantau(GEN n)
1745    ulong   ugcd(ulong a, ulong b)
1746    long    uisprimepower(ulong n, ulong *p)
1747    long    uissquare(ulong A)
1748    long    uissquareall(ulong A, ulong *sqrtA)
1749    long    unegisfundamental(ulong x)
1750    long    uposisfundamental(ulong x)
1751    GEN     znlog(GEN x, GEN g, GEN o)
1752    GEN     znorder(GEN x, GEN o)
1753    GEN     znprimroot(GEN m)
1754    GEN     znstar(GEN x)
1755    GEN     znstar0(GEN N, long flag)
1756
1757    # arith2.c
1758
1759    GEN     Z_smoothen(GEN N, GEN L, GEN *pP, GEN *pe)
1760    GEN     boundfact(GEN n, ulong lim)
1761    GEN     check_arith_pos(GEN n, const char *f)
1762    GEN     check_arith_non0(GEN n, const char *f)
1763    GEN     check_arith_all(GEN n, const char *f)
1764    GEN     clean_Z_factor(GEN f)
1765    GEN     corepartial(GEN n, long l)
1766    GEN     core0(GEN n, long flag)
1767    GEN     core2(GEN n)
1768    GEN     core2partial(GEN n, long l)
1769    GEN     coredisc(GEN n)
1770    GEN     coredisc0(GEN n, long flag)
1771    GEN     coredisc2(GEN n)
1772    long    corediscs(long D, ulong *f)
1773    GEN     digits(GEN N, GEN B)
1774    GEN     divisors(GEN n)
1775    GEN     divisorsu(ulong n)
1776    GEN     divisorsu_fact(GEN P, GEN e)
1777    GEN     factor_pn_1(GEN p, ulong n)
1778    GEN     factor_pn_1_limit(GEN p, long n, ulong lim)
1779    GEN     factoru_pow(ulong n)
1780    GEN     fromdigits(GEN x, GEN B)
1781    GEN     fuse_Z_factor(GEN f, GEN B)
1782    GEN     gen_digits(GEN x, GEN B, long n, void *E, bb_ring *r,
1783                              GEN (*div)(void *E, GEN x, GEN y, GEN *r))
1784    GEN     gen_fromdigits(GEN x, GEN B, void *E, bb_ring *r)
1785    byteptr initprimes(ulong maxnum, long *lenp, ulong *lastp)
1786    void    initprimetable(ulong maxnum)
1787    ulong   init_primepointer_geq(ulong a, byteptr *pd)
1788    ulong   init_primepointer_gt(ulong a, byteptr *pd)
1789    ulong   init_primepointer_leq(ulong a, byteptr *pd)
1790    ulong   init_primepointer_lt(ulong a, byteptr *pd)
1791    int     is_Z_factor(GEN f)
1792    int     is_Z_factornon0(GEN f)
1793    int     is_Z_factorpos(GEN f)
1794    ulong   maxprime()
1795    void    maxprime_check(ulong c)
1796    GEN     sumdigits(GEN n)
1797    GEN     sumdigits0(GEN n, GEN B)
1798    ulong   sumdigitsu(ulong n)
1799    GEN     usumdiv_fact(GEN f)
1800    GEN     usumdivk_fact(GEN f, ulong k)
1801
1802    # base1.c
1803
1804    GEN     FpX_FpC_nfpoleval(GEN nf, GEN pol, GEN a, GEN p)
1805    GEN     embed_T2(GEN x, long r1)
1806    GEN     embednorm_T2(GEN x, long r1)
1807    GEN     embed_norm(GEN x, long r1)
1808    void    check_ZKmodule(GEN x, const char *s)
1809    void    checkbid(GEN bid)
1810    GEN     checkbnf(GEN bnf)
1811    void    checkbnr(GEN bnr)
1812    void    checkbnrgen(GEN bnr)
1813    void    checkabgrp(GEN v)
1814    void    checksqmat(GEN x, long N)
1815    GEN     checknf(GEN nf)
1816    GEN     checknfelt_mod(GEN nf, GEN x, const char *s)
1817    void    checkprid(GEN bid)
1818    void    checkrnf(GEN rnf)
1819    GEN     factoredpolred(GEN x, GEN fa)
1820    GEN     factoredpolred2(GEN x, GEN fa)
1821    GEN     galoisapply(GEN nf, GEN aut, GEN x)
1822    GEN     get_bnf(GEN x, long *t)
1823    GEN     get_bnfpol(GEN x, GEN *bnf, GEN *nf)
1824    GEN     get_nf(GEN x, long *t)
1825    GEN     get_nfpol(GEN x, GEN *nf)
1826    GEN     get_prid(GEN x)
1827    GEN     idealfrobenius(GEN nf, GEN gal, GEN pr)
1828    GEN     idealfrobenius_aut(GEN nf, GEN gal, GEN pr, GEN aut)
1829    GEN     idealramfrobenius(GEN nf, GEN gal, GEN pr, GEN ram)
1830    GEN     idealramgroups(GEN nf, GEN gal, GEN pr)
1831    GEN     nf_get_allroots(GEN nf)
1832    long    nf_get_prec(GEN x)
1833    GEN     nfcertify(GEN x)
1834    GEN     nfgaloismatrix(GEN nf, GEN s)
1835    GEN     nfgaloispermtobasis(GEN nf, GEN gal)
1836    void    nfinit_step1(nfbasic_t *T, GEN x, long flag)
1837    GEN     nfinit_step2(nfbasic_t *T, long flag, long prec)
1838    GEN     nfinit(GEN x, long prec)
1839    GEN     nfinit0(GEN x, long flag, long prec)
1840    GEN     nfinitall(GEN x, long flag, long prec)
1841    GEN     nfinitred(GEN x, long prec)
1842    GEN     nfinitred2(GEN x, long prec)
1843    GEN     nfisincl(GEN a, GEN b)
1844    GEN     nfisisom(GEN a, GEN b)
1845    GEN     nfnewprec(GEN nf, long prec)
1846    GEN     nfnewprec_shallow(GEN nf, long prec)
1847    GEN     nfpoleval(GEN nf, GEN pol, GEN a)
1848    long    nftyp(GEN x)
1849    GEN     polredord(GEN x)
1850    GEN     polgalois(GEN x, long prec)
1851    GEN     polred(GEN x)
1852    GEN     polred0(GEN x, long flag, GEN fa)
1853    GEN     polred2(GEN x)
1854    GEN     polredabs(GEN x)
1855    GEN     polredabs0(GEN x, long flag)
1856    GEN     polredabs2(GEN x)
1857    GEN     polredabsall(GEN x, long flun)
1858    GEN     polredbest(GEN x, long flag)
1859    GEN     rnfpolredabs(GEN nf, GEN pol, long flag)
1860    GEN     rnfpolredbest(GEN nf, GEN relpol, long flag)
1861    GEN     smallpolred(GEN x)
1862    GEN     smallpolred2(GEN x)
1863    GEN     tschirnhaus(GEN x)
1864    GEN     ZX_Q_normalize(GEN pol, GEN *ptlc)
1865    GEN     ZX_Z_normalize(GEN pol, GEN *ptk)
1866    GEN     ZX_to_monic(GEN pol, GEN *lead)
1867    GEN     ZX_primitive_to_monic(GEN pol, GEN *lead)
1868
1869    # base2.c
1870
1871    GEN     Fq_to_nf(GEN x, GEN modpr)
1872    GEN     FqM_to_nfM(GEN z, GEN modpr)
1873    GEN     FqV_to_nfV(GEN z, GEN modpr)
1874    GEN     FqX_to_nfX(GEN x, GEN modpr)
1875    GEN     Rg_nffix(const char *f, GEN T, GEN c, int lift)
1876    GEN     RgV_nffix(const char *f, GEN T, GEN P, int lift)
1877    GEN     RgX_nffix(const char *s, GEN nf, GEN x, int lift)
1878    long    ZpX_disc_val(GEN f, GEN p)
1879    GEN     ZpX_gcd(GEN f1, GEN f2, GEN p, GEN pm)
1880    GEN     ZpX_reduced_resultant(GEN x, GEN y, GEN p, GEN pm)
1881    GEN     ZpX_reduced_resultant_fast(GEN f, GEN g, GEN p, long M)
1882    long    ZpX_resultant_val(GEN f, GEN g, GEN p, long M)
1883    void    checkmodpr(GEN modpr)
1884    GEN     ZX_compositum_disjoint(GEN A, GEN B)
1885    GEN     compositum(GEN P, GEN Q)
1886    GEN     compositum2(GEN P, GEN Q)
1887    GEN     nfdisc(GEN x)
1888    GEN     get_modpr(GEN x)
1889    GEN     indexpartial(GEN P, GEN DP)
1890    GEN     modpr_genFq(GEN modpr)
1891    GEN     nf_to_Fq_init(GEN nf, GEN *pr, GEN *T, GEN *p)
1892    GEN     nf_to_Fq(GEN nf, GEN x, GEN modpr)
1893    GEN     nfM_to_FqM(GEN z, GEN nf, GEN modpr)
1894    GEN     nfV_to_FqV(GEN z, GEN nf, GEN modpr)
1895    GEN     nfX_to_FqX(GEN x, GEN nf, GEN modpr)
1896    GEN     nfbasis(GEN x, GEN *y, GEN p)
1897    GEN     nfcompositum(GEN nf, GEN A, GEN B, long flag)
1898    void    nfmaxord(nfmaxord_t *S, GEN T, long flag)
1899    GEN     nfmodprinit(GEN nf, GEN pr)
1900    GEN     nfreducemodpr(GEN nf, GEN x, GEN modpr)
1901    GEN     nfsplitting(GEN T, GEN D)
1902    GEN     polcompositum0(GEN P, GEN Q, long flag)
1903    GEN     idealprimedec(GEN nf, GEN p)
1904    GEN     idealprimedec_limit_f(GEN nf, GEN p, long f)
1905    GEN     idealprimedec_limit_norm(GEN nf, GEN p, GEN B)
1906    GEN     rnfbasis(GEN bnf, GEN order)
1907    GEN     rnfdedekind(GEN nf, GEN T, GEN pr, long flag)
1908    GEN     rnfdet(GEN nf, GEN order)
1909    GEN     rnfdiscf(GEN nf, GEN pol)
1910    GEN     rnfequation(GEN nf, GEN pol)
1911    GEN     rnfequation0(GEN nf, GEN pol, long flall)
1912    GEN     rnfequation2(GEN nf, GEN pol)
1913    GEN     nf_rnfeq(GEN nf, GEN relpol)
1914    GEN     nf_rnfeqsimple(GEN nf, GEN relpol)
1915    GEN     rnfequationall(GEN A, GEN B, long *pk, GEN *pLPRS)
1916    GEN     rnfhnfbasis(GEN bnf, GEN order)
1917    long    rnfisfree(GEN bnf, GEN order)
1918    GEN     rnflllgram(GEN nf, GEN pol, GEN order, long prec)
1919    GEN     rnfpolred(GEN nf, GEN pol, long prec)
1920    GEN     rnfpseudobasis(GEN nf, GEN pol)
1921    GEN     rnfsimplifybasis(GEN bnf, GEN order)
1922    GEN     rnfsteinitz(GEN nf, GEN order)
1923    long    factorial_lval(ulong n, ulong p)
1924    GEN     zk_to_Fq_init(GEN nf, GEN *pr, GEN *T, GEN *p)
1925    GEN     zk_to_Fq(GEN x, GEN modpr)
1926    GEN     zkmodprinit(GEN nf, GEN pr)
1927
1928    # base3.c
1929
1930    GEN     Idealstar(GEN nf, GEN x, long flun)
1931    GEN     RgC_to_nfC(GEN nf, GEN x)
1932    GEN     RgM_to_nfM(GEN nf, GEN x)
1933    GEN     RgX_to_nfX(GEN nf, GEN pol)
1934    GEN     algtobasis(GEN nf, GEN x)
1935    GEN     basistoalg(GEN nf, GEN x)
1936    GEN     gpnfvalrem(GEN nf, GEN x, GEN pr, GEN *py)
1937    GEN     ideallist(GEN nf, long bound)
1938    GEN     ideallist0(GEN nf, long bound, long flag)
1939    GEN     ideallistarch(GEN nf, GEN list, GEN arch)
1940    GEN     idealprincipalunits(GEN nf, GEN pr, long e)
1941    GEN     idealstar0(GEN nf, GEN x, long flag)
1942    GEN     indices_to_vec01(GEN archp, long r)
1943    GEN     matalgtobasis(GEN nf, GEN x)
1944    GEN     matbasistoalg(GEN nf, GEN x)
1945    GEN     nf_to_scalar_or_alg(GEN nf, GEN x)
1946    GEN     nf_to_scalar_or_basis(GEN nf, GEN x)
1947    GEN     nfadd(GEN nf, GEN x, GEN y)
1948    GEN     nfarchstar(GEN nf, GEN x, GEN arch)
1949    GEN     nfdiv(GEN nf, GEN x, GEN y)
1950    GEN     nfdiveuc(GEN nf, GEN a, GEN b)
1951    GEN     nfdivrem(GEN nf, GEN a, GEN b)
1952    GEN     nfembed(GEN nf, GEN x, long k)
1953    GEN     nfinv(GEN nf, GEN x)
1954    GEN     nfinvmodideal(GEN nf, GEN x, GEN ideal)
1955    int     nfchecksigns(GEN nf, GEN x, GEN pl)
1956    GEN     nfmod(GEN nf, GEN a, GEN b)
1957    GEN     nfmul(GEN nf, GEN x, GEN y)
1958    GEN     nfmuli(GEN nf, GEN x, GEN y)
1959    GEN     nfnorm(GEN nf, GEN x)
1960    GEN     nfpow(GEN nf, GEN x, GEN k)
1961    GEN     nfpow_u(GEN nf, GEN z, ulong n)
1962    GEN     nfpowmodideal(GEN nf, GEN x, GEN k, GEN ideal)
1963    GEN     nfsign(GEN nf, GEN alpha)
1964    GEN     nfsign_arch(GEN nf, GEN alpha, GEN arch)
1965    GEN     nfsign_from_logarch(GEN Larch, GEN invpi, GEN archp)
1966    GEN     nfsqr(GEN nf, GEN x)
1967    GEN     nfsqri(GEN nf, GEN x)
1968    GEN     nftrace(GEN nf, GEN x)
1969    long    nfval(GEN nf, GEN x, GEN vp)
1970    long    nfvalrem(GEN nf, GEN x, GEN pr, GEN *py)
1971    GEN     polmod_nffix(const char *f, GEN rnf, GEN x, int lift)
1972    GEN     polmod_nffix2(const char *f, GEN T, GEN relpol, GEN x, int lift)
1973    int     pr_equal(GEN nf, GEN P, GEN Q)
1974    GEN     rnfalgtobasis(GEN rnf, GEN x)
1975    GEN     rnfbasistoalg(GEN rnf, GEN x)
1976    GEN     rnfeltnorm(GEN rnf, GEN x)
1977    GEN     rnfelttrace(GEN rnf, GEN x)
1978    GEN     set_sign_mod_divisor(GEN nf, GEN x, GEN y, GEN idele, GEN sarch)
1979    GEN     vec01_to_indices(GEN arch)
1980    GEN     vecsmall01_to_indices(GEN v)
1981    GEN     vecmodii(GEN a, GEN b)
1982    GEN     ideallog(GEN nf, GEN x, GEN bigideal)
1983
1984    GEN     multable(GEN nf, GEN x)
1985    GEN     tablemul(GEN TAB, GEN x, GEN y)
1986    GEN     tablemul_ei(GEN M, GEN x, long i)
1987    GEN     tablemul_ei_ej(GEN M, long i, long j)
1988    GEN     tablemulvec(GEN M, GEN x, GEN v)
1989    GEN     tablesqr(GEN tab, GEN x)
1990    GEN     ei_multable(GEN nf, long i)
1991    long    ZC_nfval(GEN nf, GEN x, GEN P)
1992    long    ZC_nfvalrem(GEN nf, GEN x, GEN P, GEN *t)
1993    GEN     zk_multable(GEN nf, GEN x)
1994    GEN     zk_scalar_or_multable(GEN, GEN x)
1995    int     ZC_prdvd(GEN nf, GEN x, GEN P)
1996
1997    # base4.c
1998
1999    GEN     RM_round_maxrank(GEN G)
2000    GEN     ZM_famat_limit(GEN fa, GEN limit)
2001    GEN     famat_Z_gcd(GEN M, GEN n)
2002    GEN     famat_inv(GEN f)
2003    GEN     famat_inv_shallow(GEN f)
2004    GEN     famat_makecoprime(GEN nf, GEN g, GEN e, GEN pr, GEN prk, GEN EX)
2005    GEN     famat_mul(GEN f, GEN g)
2006    GEN     famat_pow(GEN f, GEN n)
2007    GEN     famat_sqr(GEN f)
2008    GEN     famat_reduce(GEN fa)
2009    GEN     famat_to_nf(GEN nf, GEN f)
2010    GEN     famat_to_nf_modideal_coprime(GEN nf, GEN g, GEN e, GEN id, GEN EX)
2011    GEN     famat_to_nf_moddivisor(GEN nf, GEN g, GEN e, GEN bid)
2012    GEN     famatsmall_reduce(GEN fa)
2013    GEN     gpidealval(GEN nf, GEN ix, GEN P)
2014    GEN     idealtwoelt(GEN nf, GEN ix)
2015    GEN     idealtwoelt0(GEN nf, GEN ix, GEN a)
2016    GEN     idealtwoelt2(GEN nf, GEN x, GEN a)
2017    GEN     idealadd(GEN nf, GEN x, GEN y)
2018    GEN     idealaddmultoone(GEN nf, GEN list)
2019    GEN     idealaddtoone(GEN nf, GEN x, GEN y)
2020    GEN     idealaddtoone_i(GEN nf, GEN x, GEN y)
2021    GEN     idealaddtoone0(GEN nf, GEN x, GEN y)
2022    GEN     idealappr(GEN nf, GEN x)
2023    GEN     idealappr0(GEN nf, GEN x, long fl)
2024    GEN     idealapprfact(GEN nf, GEN x)
2025    GEN     idealchinese(GEN nf, GEN x, GEN y)
2026    GEN     idealcoprime(GEN nf, GEN x, GEN y)
2027    GEN     idealcoprimefact(GEN nf, GEN x, GEN fy)
2028    GEN     idealdiv(GEN nf, GEN x, GEN y)
2029    GEN     idealdiv0(GEN nf, GEN x, GEN y, long flag)
2030    GEN     idealdivexact(GEN nf, GEN x, GEN y)
2031    GEN     idealdivpowprime(GEN nf, GEN x, GEN vp, GEN n)
2032    GEN     idealmulpowprime(GEN nf, GEN x, GEN vp, GEN n)
2033    GEN     idealfactor(GEN nf, GEN x)
2034    GEN     idealhnf(GEN nf, GEN x)
2035    GEN     idealhnf_principal(GEN nf, GEN x)
2036    GEN     idealhnf_shallow(GEN nf, GEN x)
2037    GEN     idealhnf_two(GEN nf, GEN vp)
2038    GEN     idealhnf0(GEN nf, GEN a, GEN b)
2039    GEN     idealintersect(GEN nf, GEN x, GEN y)
2040    GEN     idealinv(GEN nf, GEN ix)
2041    GEN     idealinv_HNF(GEN nf, GEN I)
2042    GEN     idealred0(GEN nf, GEN I, GEN vdir)
2043    GEN     idealmul(GEN nf, GEN ix, GEN iy)
2044    GEN     idealmul0(GEN nf, GEN ix, GEN iy, long flag)
2045    GEN     idealmul_HNF(GEN nf, GEN ix, GEN iy)
2046    GEN     idealmulred(GEN nf, GEN ix, GEN iy)
2047    GEN     idealnorm(GEN nf, GEN x)
2048    GEN     idealnumden(GEN nf, GEN x)
2049    GEN     idealpow(GEN nf, GEN ix, GEN n)
2050    GEN     idealpow0(GEN nf, GEN ix, GEN n, long flag)
2051    GEN     idealpowred(GEN nf, GEN ix, GEN n)
2052    GEN     idealpows(GEN nf, GEN ideal, long iexp)
2053    GEN     idealprodprime(GEN nf, GEN L)
2054    GEN     idealsqr(GEN nf, GEN x)
2055    long    idealtyp(GEN *ideal, GEN *arch)
2056    long    idealval(GEN nf, GEN ix, GEN vp)
2057    long    isideal(GEN nf, GEN x)
2058    GEN     idealmin(GEN nf, GEN ix, GEN vdir)
2059    GEN     nf_get_Gtwist(GEN nf, GEN vdir)
2060    GEN     nf_get_Gtwist1(GEN nf, long i)
2061    GEN     nfC_nf_mul(GEN nf, GEN v, GEN x)
2062    GEN     nfdetint(GEN nf, GEN pseudo)
2063    GEN     nfdivmodpr(GEN nf, GEN x, GEN y, GEN modpr)
2064    GEN     nfhnf(GEN nf, GEN x)
2065    GEN     nfhnf0(GEN nf, GEN x, long flag)
2066    GEN     nfhnfmod(GEN nf, GEN x, GEN d)
2067    GEN     nfkermodpr(GEN nf, GEN x, GEN modpr)
2068    GEN     nfmulmodpr(GEN nf, GEN x, GEN y, GEN modpr)
2069    GEN     nfpowmodpr(GEN nf, GEN x, GEN k, GEN modpr)
2070    GEN     nfreduce(GEN nf, GEN x, GEN ideal)
2071    GEN     nfsnf(GEN nf, GEN x)
2072    GEN     nfsnf0(GEN nf, GEN x, long flag)
2073    GEN     nfsolvemodpr(GEN nf, GEN a, GEN b, GEN modpr)
2074    GEN     to_famat(GEN x, GEN y)
2075    GEN     to_famat_shallow(GEN x, GEN y)
2076    GEN     vecdiv(GEN x, GEN y)
2077    GEN     vecinv(GEN x)
2078    GEN     vecmul(GEN x, GEN y)
2079    GEN     vecpow(GEN x, GEN n)
2080
2081    # base5.c
2082
2083    GEN     eltreltoabs(GEN rnfeq, GEN x)
2084    GEN     eltabstorel(GEN eq, GEN P)
2085    GEN     eltabstorel_lift(GEN rnfeq, GEN P)
2086    GEN     rnfeltabstorel(GEN rnf, GEN x)
2087    GEN     rnfeltdown(GEN rnf, GEN x)
2088    GEN     rnfeltdown0(GEN rnf, GEN x, long flag)
2089    GEN     rnfeltreltoabs(GEN rnf, GEN x)
2090    GEN     rnfeltup(GEN rnf, GEN x)
2091    GEN     rnfeltup0(GEN rnf, GEN x, long flag)
2092    GEN     rnfidealabstorel(GEN rnf, GEN x)
2093    GEN     rnfidealdown(GEN rnf, GEN x)
2094    GEN     rnfidealhnf(GEN rnf, GEN x)
2095    GEN     rnfidealmul(GEN rnf, GEN x, GEN y)
2096    GEN     rnfidealnormabs(GEN rnf, GEN x)
2097    GEN     rnfidealnormrel(GEN rnf, GEN x)
2098    GEN     rnfidealprimedec(GEN rnf, GEN pr)
2099    GEN     rnfidealreltoabs(GEN rnf, GEN x)
2100    GEN     rnfidealreltoabs0(GEN rnf, GEN x, long flag)
2101    GEN     rnfidealtwoelement(GEN rnf, GEN x)
2102    GEN     rnfidealup(GEN rnf, GEN x)
2103    GEN     rnfidealup0(GEN rnf, GEN x, long flag)
2104    GEN     rnfinit(GEN nf, GEN pol)
2105    GEN     rnfinit0(GEN nf, GEN pol, long flag)
2106
2107    # bb_group.c
2108
2109    GEN dlog_get_ordfa(GEN o)
2110    GEN dlog_get_ord(GEN o)
2111    GEN gen_PH_log(GEN a, GEN g, GEN ord, void *E, const bb_group *grp)
2112    GEN gen_Shanks_init(GEN g, long n, void *E, const bb_group *grp)
2113    GEN gen_Shanks(GEN T, GEN x, ulong N, void *E, const bb_group *grp)
2114    GEN gen_Shanks_sqrtn(GEN a, GEN n, GEN q, GEN *zetan, void *E, const bb_group *grp)
2115    GEN gen_gener(GEN o, void *E, const bb_group *grp)
2116    GEN gen_ellgens(GEN d1, GEN d2, GEN m, void *E, const bb_group *grp,
2117                     GEN pairorder(void *E, GEN P, GEN Q, GEN m, GEN F))
2118    GEN gen_ellgroup(GEN N, GEN F, GEN *pt_m, void *E, const bb_group *grp,
2119                     GEN pairorder(void *E, GEN P, GEN Q, GEN m, GEN F))
2120    GEN gen_factored_order(GEN a, GEN o, void *E, const bb_group *grp)
2121    GEN gen_order(GEN x, GEN o, void *E, const bb_group *grp)
2122    GEN gen_select_order(GEN o, void *E, const bb_group *grp)
2123
2124    GEN gen_plog(GEN x, GEN g0, GEN q, void *E, const bb_group *grp)
2125    GEN gen_pow(GEN x, GEN n, void *E, GEN (*sqr)(void*, GEN), GEN (*mul)(void*, GEN, GEN))
2126    GEN gen_pow_i(GEN x, GEN n, void *E, GEN (*sqr)(void*, GEN), GEN (*mul)(void*, GEN, GEN))
2127    GEN gen_pow_fold(GEN x, GEN n, void *E, GEN (*sqr)(void*, GEN), GEN (*msqr)(void*, GEN))
2128    GEN gen_pow_fold_i(GEN x, GEN n, void *E, GEN (*sqr)(void*, GEN), GEN (*msqr)(void*, GEN))
2129    GEN gen_powers(GEN x, long l, int use_sqr, void *E, GEN (*sqr)(void*, GEN), GEN (*mul)(void*, GEN, GEN), GEN (*one)(void*))
2130    GEN gen_powu(GEN x, ulong n, void *E, GEN (*sqr)(void*, GEN), GEN (*mul)(void*, GEN, GEN))
2131    GEN gen_powu_i(GEN x, ulong n, void *E, GEN (*sqr)(void*, GEN), GEN (*mul)(void*, GEN, GEN))
2132    GEN gen_powu_fold(GEN x, ulong n, void *E, GEN (*sqr)(void*, GEN), GEN (*msqr)(void*, GEN))
2133    GEN gen_powu_fold_i(GEN x, ulong n, void *E, GEN  (*sqr)(void*, GEN), GEN (*msqr)(void*, GEN))
2134    GEN gen_product(GEN x, void *data, GEN (*mul)(void*, GEN, GEN))
2135
2136    # bibli1.c
2137
2138    int     QR_init(GEN x, GEN *pB, GEN *pQ, GEN *pL, long prec)
2139    GEN     R_from_QR(GEN x, long prec)
2140    GEN     RgM_Babai(GEN B, GEN t)
2141    int     RgM_QR_init(GEN x, GEN *pB, GEN *pQ, GEN *pL, long prec)
2142    GEN     RgM_gram_schmidt(GEN e, GEN *ptB)
2143    GEN     Xadic_lindep(GEN x)
2144    GEN     algdep(GEN x, long n)
2145    GEN     algdep0(GEN x, long n, long bit)
2146    void    forqfvec(void *E, long (*fun)(void *, GEN, GEN, double), GEN a, GEN BORNE)
2147    void    forqfvec0(GEN a, GEN BORNE, GEN code)
2148    GEN     gaussred_from_QR(GEN x, long prec)
2149    GEN     lindep0(GEN x, long flag)
2150    GEN     lindep(GEN x)
2151    GEN     lindep2(GEN x, long bit)
2152    GEN     mathouseholder(GEN Q, GEN v)
2153    GEN     matqr(GEN x, long flag, long prec)
2154    GEN     minim(GEN a, GEN borne, GEN stockmax)
2155    GEN     minim_raw(GEN a, GEN borne, GEN stockmax)
2156    GEN     minim2(GEN a, GEN borne, GEN stockmax)
2157    GEN     padic_lindep(GEN x)
2158    GEN     perf(GEN a)
2159    GEN     qfrep0(GEN a, GEN borne, long flag)
2160    GEN     qfminim0(GEN a, GEN borne, GEN stockmax, long flag, long prec)
2161    GEN     seralgdep(GEN s, long p, long r)
2162    GEN     zncoppersmith(GEN P0, GEN N, GEN X, GEN B)
2163
2164    # bibli2.c
2165
2166    GEN     QXQ_reverse(GEN a, GEN T)
2167    GEN     RgV_polint(GEN X, GEN Y, long v)
2168    GEN     RgXQ_reverse(GEN a, GEN T)
2169    GEN     ZV_indexsort(GEN L)
2170    long    ZV_search(GEN x, GEN y)
2171    GEN     ZV_sort(GEN L)
2172    GEN     ZV_sort_uniq(GEN L)
2173    GEN     ZV_union_shallow(GEN x, GEN y)
2174    GEN     binomial(GEN x, long k)
2175    GEN     binomialuu(ulong n, ulong k)
2176    int     cmp_Flx(GEN x, GEN y)
2177    int     cmp_RgX(GEN x, GEN y)
2178    int     cmp_nodata(void *data, GEN x, GEN y)
2179    int     cmp_prime_ideal(GEN x, GEN y)
2180    int     cmp_prime_over_p(GEN x, GEN y)
2181    int     cmp_universal(GEN x, GEN y)
2182    GEN     convol(GEN x, GEN y)
2183    int     gen_cmp_RgX(void *data, GEN x, GEN y)
2184    GEN     polcyclo(long n, long v)
2185    GEN     polcyclo_eval(long n, GEN x)
2186    GEN     dirdiv(GEN x, GEN y)
2187    GEN     dirmul(GEN x, GEN y)
2188    GEN     gen_indexsort(GEN x, void *E, int (*cmp)(void*, GEN, GEN))
2189    GEN     gen_indexsort_uniq(GEN x, void *E, int (*cmp)(void*, GEN, GEN))
2190    long    gen_search(GEN x, GEN y, long flag, void *data, int (*cmp)(void*, GEN, GEN))
2191    GEN     gen_setminus(GEN set1, GEN set2, int (*cmp)(GEN, GEN))
2192    GEN     gen_sort(GEN x, void *E, int (*cmp)(void*, GEN, GEN))
2193    void    gen_sort_inplace(GEN x, void *E, int (*cmp)(void*, GEN, GEN), GEN *perm)
2194    GEN     gen_sort_uniq(GEN x, void *E, int (*cmp)(void*, GEN, GEN))
2195    long    getstack()
2196    long    gettime()
2197    long    getabstime()
2198    GEN     getwalltime()
2199    GEN     gprec(GEN x, long l)
2200    GEN     gprec_wtrunc(GEN x, long pr)
2201    GEN     gprec_w(GEN x, long pr)
2202    GEN     gtoset(GEN x)
2203    GEN     indexlexsort(GEN x)
2204    GEN     indexsort(GEN x)
2205    GEN     indexvecsort(GEN x, GEN k)
2206    GEN     laplace(GEN x)
2207    GEN     lexsort(GEN x)
2208    GEN     mathilbert(long n)
2209    GEN     matqpascal(long n, GEN q)
2210    GEN     merge_factor(GEN fx, GEN fy, void *data, int (*cmp)(void *, GEN, GEN))
2211    GEN     merge_sort_uniq(GEN x, GEN y, void *data, int (*cmp)(void *, GEN, GEN))
2212    GEN     modreverse(GEN x)
2213    GEN     numtoperm(long n, GEN x)
2214    GEN     permtonum(GEN x)
2215    GEN     polhermite(long n, long v)
2216    GEN     polhermite_eval(long n, GEN x)
2217    GEN     pollegendre(long n, long v)
2218    GEN     pollegendre_eval(long n, GEN x)
2219    GEN     polint(GEN xa, GEN ya, GEN x, GEN *dy)
2220    GEN     polchebyshev(long n, long kind, long v)
2221    GEN     polchebyshev_eval(long n, long kind, GEN x)
2222    GEN     polchebyshev1(long n, long v)
2223    GEN     polchebyshev2(long n, long v)
2224    GEN     polrecip(GEN x)
2225    GEN     setbinop(GEN f, GEN x, GEN y)
2226    GEN     setintersect(GEN x, GEN y)
2227    long    setisset(GEN x)
2228    GEN     setminus(GEN x, GEN y)
2229    long    setsearch(GEN x, GEN y, long flag)
2230    GEN     setunion(GEN x, GEN y)
2231    GEN     sort(GEN x)
2232    GEN     sort_factor(GEN y, void *data, int (*cmp)(void*, GEN, GEN))
2233    GEN     stirling(long n, long m, long flag)
2234    GEN     stirling1(ulong n, ulong m)
2235    GEN     stirling2(ulong n, ulong m)
2236    long    tablesearch(GEN T, GEN x, int (*cmp)(GEN, GEN))
2237    GEN     vecbinome(long n)
2238    long    vecsearch(GEN v, GEN x, GEN k)
2239    GEN     vecsort(GEN x, GEN k)
2240    GEN     vecsort0(GEN x, GEN k, long flag)
2241    long    zv_search(GEN x, long y)
2242
2243    # bit.c
2244
2245    GEN     bits_to_int(GEN x, long l)
2246    ulong   bits_to_u(GEN v, long l)
2247    GEN     binaire(GEN x)
2248    GEN     binary_2k(GEN x, long k)
2249    GEN     binary_2k_nv(GEN x, long k)
2250    GEN     binary_zv(GEN x)
2251    long    bittest(GEN x, long n)
2252    GEN     fromdigits_2k(GEN x, long k)
2253    GEN     gbitand(GEN x, GEN y)
2254    GEN     gbitneg(GEN x, long n)
2255    GEN     gbitnegimply(GEN x, GEN y)
2256    GEN     gbitor(GEN x, GEN y)
2257    GEN     gbittest(GEN x, long n)
2258    GEN     gbitxor(GEN x, GEN y)
2259    long    hammingweight(GEN n)
2260    GEN     ibitand(GEN x, GEN y)
2261    GEN     ibitnegimply(GEN x, GEN y)
2262    GEN     ibitor(GEN x, GEN y)
2263    GEN     ibitxor(GEN x, GEN y)
2264    GEN     nv_fromdigits_2k(GEN x, long k)
2265
2266    # buch1.c
2267
2268    GEN     Buchquad(GEN D, double c1, double c2, long prec)
2269    GEN     quadclassunit0(GEN x, long flag, GEN data, long prec)
2270    GEN     quadhilbert(GEN D, long prec)
2271    GEN     quadray(GEN bnf, GEN f, long prec)
2272
2273    # buch2.c
2274
2275    GEN     Buchall(GEN P, long flag, long prec)
2276    GEN     Buchall_param(GEN P, double bach, double bach2, long nbrelpid, long flun, long prec)
2277    GEN     bnfcompress(GEN bnf)
2278    GEN     bnfinit0(GEN P, long flag, GEN data, long prec)
2279    GEN     bnfisprincipal0(GEN bnf, GEN x, long flall)
2280    GEN     bnfisunit(GEN bignf, GEN x)
2281    GEN     bnfnewprec(GEN nf, long prec)
2282    GEN     bnfnewprec_shallow(GEN nf, long prec)
2283    GEN     bnrnewprec(GEN bnr, long prec)
2284    GEN     bnrnewprec_shallow(GEN bnr, long prec)
2285    GEN     isprincipalfact(GEN bnf, GEN C, GEN L, GEN f, long flag)
2286    GEN     isprincipalfact_or_fail(GEN bnf, GEN C, GEN P, GEN e)
2287    GEN     isprincipal(GEN bnf, GEN x)
2288    GEN     nfcyclotomicunits(GEN nf, GEN zu)
2289    GEN     nfsign_units(GEN bnf, GEN archp, int add_zu)
2290    GEN     signunits(GEN bignf)
2291
2292    # buch3.c
2293
2294    GEN     ABC_to_bnr(GEN A, GEN B, GEN C, GEN *H, int gen)
2295    GEN     Buchray(GEN bnf, GEN module, long flag)
2296    GEN     bnrautmatrix(GEN bnr, GEN aut)
2297    GEN     bnrchar(GEN bnr, GEN g, GEN v)
2298    GEN     bnrchar_primitive(GEN bnr, GEN chi, GEN bnrc)
2299    GEN     bnrclassno(GEN bignf, GEN ideal)
2300    GEN     bnrclassno0(GEN A, GEN B, GEN C)
2301    GEN     bnrclassnolist(GEN bnf, GEN listes)
2302    GEN     bnrconductor0(GEN A, GEN B, GEN C, long flag)
2303    GEN     bnrconductor(GEN bnr, GEN H0, long flag)
2304    GEN     bnrconductor_i(GEN bnr, GEN H0, long flag)
2305    GEN     bnrconductorofchar(GEN bnr, GEN chi)
2306    GEN     bnrdisc0(GEN A, GEN B, GEN C, long flag)
2307    GEN     bnrdisc(GEN bnr, GEN H, long flag)
2308    GEN     bnrdisclist0(GEN bnf, GEN borne, GEN arch)
2309    GEN     bnrgaloismatrix(GEN bnr, GEN aut)
2310    GEN     bnrgaloisapply(GEN bnr, GEN mat, GEN x)
2311    GEN     bnrinit0(GEN bignf, GEN ideal, long flag)
2312    long    bnrisconductor0(GEN A, GEN B, GEN C)
2313    long    bnrisconductor(GEN bnr, GEN H)
2314    long    bnrisgalois(GEN bnr, GEN M, GEN H)
2315    GEN     bnrisprincipal(GEN bnf, GEN x, long flag)
2316    GEN     bnrsurjection(GEN bnr1, GEN bnr2)
2317    GEN     buchnarrow(GEN bignf)
2318    long    bnfcertify(GEN bnf)
2319    long    bnfcertify0(GEN bnf, long flag)
2320    GEN     decodemodule(GEN nf, GEN fa)
2321    GEN     discrayabslist(GEN bnf, GEN listes)
2322    GEN     discrayabslistarch(GEN bnf, GEN arch, ulong bound)
2323    GEN     discrayabslistlong(GEN bnf, ulong bound)
2324    GEN     idealmoddivisor(GEN bnr, GEN x)
2325    GEN     isprincipalray(GEN bnf, GEN x)
2326    GEN     isprincipalraygen(GEN bnf, GEN x)
2327    GEN     rnfconductor(GEN bnf, GEN polrel)
2328    long    rnfisabelian(GEN nf, GEN pol)
2329    GEN     rnfnormgroup(GEN bnr, GEN polrel)
2330    GEN     subgrouplist0(GEN bnr, GEN indexbound, long all)
2331
2332    # buch4.c
2333
2334    GEN     bnfisnorm(GEN bnf, GEN x, long flag)
2335    GEN     rnfisnorm(GEN S, GEN x, long flag)
2336    GEN     rnfisnorminit(GEN bnf, GEN relpol, int galois)
2337    GEN     bnfissunit(GEN bnf, GEN suni, GEN x)
2338    GEN     bnfsunit(GEN bnf, GEN s, long PREC)
2339    long    nfhilbert(GEN bnf, GEN a, GEN b)
2340    long    nfhilbert0(GEN bnf, GEN a, GEN b, GEN p)
2341    long    hyperell_locally_soluble(GEN pol, GEN p)
2342    long    nf_hyperell_locally_soluble(GEN nf, GEN pol, GEN p)
2343
2344    # char.c
2345
2346    int     char_check(GEN cyc, GEN chi)
2347    GEN     charconj(GEN cyc, GEN chi)
2348    GEN     charconj0(GEN cyc, GEN chi)
2349    GEN     chardiv(GEN x, GEN a, GEN b)
2350    GEN     chardiv0(GEN x, GEN a, GEN b)
2351    GEN     chareval(GEN G, GEN chi, GEN n, GEN z)
2352    GEN     charker(GEN cyc, GEN chi)
2353    GEN     charker0(GEN cyc, GEN chi)
2354    GEN     charmul(GEN x, GEN a, GEN b)
2355    GEN     charmul0(GEN x, GEN a, GEN b)
2356    GEN     charorder(GEN cyc, GEN x)
2357    GEN     charorder0(GEN x, GEN chi)
2358    GEN     char_denormalize(GEN cyc, GEN D, GEN chic)
2359    GEN     char_normalize(GEN chi, GEN ncyc)
2360    GEN     char_rootof1(GEN d, long prec)
2361    GEN     char_rootof1_u(ulong d, long prec)
2362    GEN     char_simplify(GEN D, GEN C)
2363    GEN     cyc_normalize(GEN c)
2364    int     zncharcheck(GEN G, GEN chi)
2365    GEN     zncharconj(GEN G, GEN chi)
2366    GEN     znchardiv(GEN G, GEN a, GEN b)
2367    GEN     zncharker(GEN G, GEN chi)
2368    GEN     znchareval(GEN G, GEN chi, GEN n, GEN z)
2369    GEN     zncharinduce(GEN G, GEN chi, GEN N)
2370    long    zncharisodd(GEN G, GEN chi)
2371    GEN     zncharmul(GEN G, GEN a, GEN b)
2372    GEN     zncharorder(GEN G, GEN chi)
2373    int     znconrey_check(GEN cyc, GEN chi)
2374    GEN     znconrey_normalized(GEN G, GEN chi)
2375    GEN     znconreychar(GEN bid, GEN m)
2376    GEN     znconreyfromchar_normalized(GEN bid, GEN chi)
2377    GEN     znconreyconductor(GEN bid, GEN co, GEN *pm)
2378    GEN     znconreyexp(GEN bid, GEN x)
2379    GEN     znconreyfromchar(GEN bid, GEN chi)
2380    GEN     znconreylog(GEN bid, GEN x)
2381    GEN     znconreylog_normalize(GEN G, GEN m)
2382
2383    # compile.c
2384
2385    GEN     closure_deriv(GEN G)
2386    long    localvars_find(GEN pack, entree *ep)
2387    GEN     localvars_read_str(const char *str, GEN pack)
2388    GEN     snm_closure(entree *ep, GEN data)
2389    GEN     strtoclosure(const char *s, long n, ...)
2390    GEN     strtofunction(const char *s)
2391
2392    # concat.c
2393
2394    GEN     gconcat(GEN x, GEN y)
2395    GEN     gconcat1(GEN x)
2396    GEN     matconcat(GEN v)
2397    GEN     shallowconcat(GEN x, GEN y)
2398    GEN     shallowconcat1(GEN x)
2399    GEN     shallowmatconcat(GEN v)
2400    GEN     vconcat(GEN A, GEN B)
2401
2402    # default.c
2403    extern int d_SILENT, d_ACKNOWLEDGE, d_INITRC, d_RETURN
2404
2405    GEN default0(const char *a, const char *b)
2406    long getrealprecision()
2407    entree *pari_is_default(const char *s)
2408    GEN sd_TeXstyle(const char *v, long flag)
2409    GEN sd_colors(const char *v, long flag)
2410    GEN sd_compatible(const char *v, long flag)
2411    GEN sd_datadir(const char *v, long flag)
2412    GEN sd_debug(const char *v, long flag)
2413    GEN sd_debugfiles(const char *v, long flag)
2414    GEN sd_debugmem(const char *v, long flag)
2415    GEN sd_factor_add_primes(const char *v, long flag)
2416    GEN sd_factor_proven(const char *v, long flag)
2417    GEN sd_format(const char *v, long flag)
2418    GEN sd_histsize(const char *v, long flag)
2419    GEN sd_log(const char *v, long flag)
2420    GEN sd_logfile(const char *v, long flag)
2421    GEN sd_nbthreads(const char *v, long flag)
2422    GEN sd_new_galois_format(const char *v, long flag)
2423    GEN sd_output(const char *v, long flag)
2424    GEN sd_parisize(const char *v, long flag)
2425    GEN sd_parisizemax(const char *v, long flag)
2426    GEN sd_path(const char *v, long flag)
2427    GEN sd_prettyprinter(const char *v, long flag)
2428    GEN sd_primelimit(const char *v, long flag)
2429    GEN sd_realbitprecision(const char *v, long flag)
2430    GEN sd_realprecision(const char *v, long flag)
2431    GEN sd_secure(const char *v, long flag)
2432    GEN sd_seriesprecision(const char *v, long flag)
2433    GEN sd_simplify(const char *v, long flag)
2434    GEN sd_sopath(char *v, int flag)
2435    GEN sd_strictargs(const char *v, long flag)
2436    GEN sd_strictmatch(const char *v, long flag)
2437    GEN sd_string(const char *v, long flag, const char *s, char **f)
2438    GEN sd_threadsize(const char *v, long flag)
2439    GEN sd_threadsizemax(const char *v, long flag)
2440    GEN sd_toggle(const char *v, long flag, const char *s, int *ptn)
2441    GEN sd_ulong(const char *v, long flag, const char *s, ulong *ptn, ulong Min, ulong Max, const char **msg)
2442    GEN setdefault(const char *s, const char *v, long flag)
2443    long setrealprecision(long n, long *prec)
2444
2445    # gplib.c
2446    GEN sd_breakloop(const char *v, long flag)
2447    GEN sd_echo(const char *v, long flag)
2448    GEN sd_graphcolormap(const char *v, long flag)
2449    GEN sd_graphcolors(const char *v, long flag)
2450    GEN sd_help(const char *v, long flag)
2451    GEN sd_histfile(const char *v, long flag)
2452    GEN sd_lines(const char *v, long flag)
2453    GEN sd_linewrap(const char *v, long flag)
2454    GEN sd_prompt(const char *v, long flag)
2455    GEN sd_prompt_cont(const char *v, long flag)
2456    GEN sd_psfile(const char *v, long flag)
2457    GEN sd_readline(const char *v, long flag)
2458    GEN sd_recover(const char *v, long flag)
2459    GEN sd_timer(const char *v, long flag)
2460    void pari_hit_return()
2461    void gp_load_gprc()
2462    int  gp_meta(const char *buf, int ismain)
2463    const char **gphelp_keyword_list()
2464    void pari_center(const char *s)
2465    void pari_print_version()
2466    const char *gp_format_time(long delay)
2467    const char *gp_format_prompt(const char *p)
2468    void pari_alarm(long s)
2469    GEN  gp_alarm(long s, GEN code)
2470    GEN  gp_input()
2471    void gp_allocatemem(GEN z)
2472    int  gp_handle_exception(long numerr)
2473    void gp_alarm_handler(int sig)
2474    void gp_sigint_fun()
2475    extern int h_REGULAR, h_LONG, h_APROPOS, h_RL
2476    void gp_help(const char *s, long flag)
2477    void gp_echo_and_log(const char *prompt, const char *s)
2478    void print_fun_list(char **list, long nbli)
2479
2480    # dirichlet.c
2481
2482    GEN     direxpand(GEN a, long L)
2483    GEN     direuler(void *E, GEN (*eval)(void *, GEN), GEN a, GEN b, GEN c)
2484
2485    # ellanal.c
2486
2487    GEN     ellanalyticrank(GEN e, GEN eps, long prec)
2488    GEN     ellanalyticrank_bitprec(GEN e, GEN eps, long bitprec)
2489    GEN     ellanal_globalred_all(GEN e, GEN *N, GEN *cb, GEN *tam)
2490    GEN     ellheegner(GEN e)
2491    GEN     ellL1(GEN E, long r, long prec)
2492    GEN     ellL1_bitprec(GEN E, long r, long bitprec)
2493
2494    # elldata.c
2495
2496    GEN     ellconvertname(GEN s)
2497    GEN     elldatagenerators(GEN E)
2498    GEN     ellidentify(GEN E)
2499    GEN     ellsearch(GEN A)
2500    GEN     ellsearchcurve(GEN name)
2501    void    forell(void *E, long call(void*, GEN), long a, long b, long flag)
2502
2503    # ellfromeqn.c
2504
2505    GEN     ellfromeqn(GEN s)
2506
2507    # elliptic.c
2508    extern int t_ELL_Rg, t_ELL_Q, t_ELL_Qp, t_ELL_Fp, t_ELL_Fq, t_ELL_NF
2509    long    ellQ_get_CM(GEN e)
2510    int     ell_is_integral(GEN E)
2511    GEN     ellbasechar(GEN E)
2512    GEN     akell(GEN e, GEN n)
2513    GEN     anell(GEN e, long n)
2514    GEN     anellsmall(GEN e, long n)
2515    GEN     bilhell(GEN e, GEN z1, GEN z2, long prec)
2516    void    checkell(GEN e)
2517    void    checkell_Fq(GEN e)
2518    void    checkell_Q(GEN e)
2519    void    checkell_Qp(GEN e)
2520    void    checkellisog(GEN v)
2521    void    checkellpt(GEN z)
2522    void    checkell5(GEN e)
2523    GEN     ec_bmodel(GEN e)
2524    GEN     ec_f_evalx(GEN E, GEN x)
2525    GEN     ec_h_evalx(GEN e, GEN x)
2526    GEN     ec_dFdx_evalQ(GEN E, GEN Q)
2527    GEN     ec_dFdy_evalQ(GEN E, GEN Q)
2528    GEN     ec_dmFdy_evalQ(GEN e, GEN Q)
2529    GEN     ec_2divpol_evalx(GEN E, GEN x)
2530    GEN     ec_half_deriv_2divpol_evalx(GEN E, GEN x)
2531    GEN     ellanal_globalred(GEN e, GEN *gr)
2532    GEN     ellQ_get_N(GEN e)
2533    void    ellQ_get_Nfa(GEN e, GEN *N, GEN *faN)
2534    GEN     ellQp_Tate_uniformization(GEN E, long prec)
2535    GEN     ellQp_u(GEN E, long prec)
2536    GEN     ellQp_u2(GEN E, long prec)
2537    GEN     ellQp_q(GEN E, long prec)
2538    GEN     ellQp_ab(GEN E, long prec)
2539    GEN     ellQp_root(GEN E, long prec)
2540    GEN     ellR_ab(GEN E, long prec)
2541    GEN     ellR_eta(GEN E, long prec)
2542    GEN     ellR_omega(GEN x, long prec)
2543    GEN     ellR_roots(GEN E, long prec)
2544    GEN     elladd(GEN e, GEN z1, GEN z2)
2545    GEN     ellap(GEN e, GEN p)
2546    long    ellap_CM_fast(GEN E, ulong p, long CM)
2547    GEN     ellcard(GEN E, GEN p)
2548    GEN     ellchangecurve(GEN e, GEN ch)
2549    GEN     ellchangeinvert(GEN w)
2550    GEN     ellchangepoint(GEN x, GEN ch)
2551    GEN     ellchangepointinv(GEN x, GEN ch)
2552    GEN     elldivpol(GEN e, long n, long v)
2553    GEN     elleisnum(GEN om, long k, long flag, long prec)
2554    GEN     elleta(GEN om, long prec)
2555    GEN     ellff_get_card(GEN E)
2556    GEN     ellff_get_gens(GEN E)
2557    GEN     ellff_get_group(GEN E)
2558    GEN     ellff_get_o(GEN x)
2559    GEN     ellff_get_p(GEN E)
2560    GEN     ellfromj(GEN j)
2561    GEN     ellformaldifferential(GEN e, long n, long v)
2562    GEN     ellformalexp(GEN e, long n, long v)
2563    GEN     ellformallog(GEN e, long n, long v)
2564    GEN     ellformalpoint(GEN e, long n, long v)
2565    GEN     ellformalw(GEN e, long n, long v)
2566    GEN     ellgenerators(GEN E)
2567    GEN     ellglobalred(GEN e1)
2568    GEN     ellgroup(GEN E, GEN p)
2569    GEN     ellgroup0(GEN E, GEN p, long flag)
2570    GEN     ellheight0(GEN e, GEN a, GEN b, long prec)
2571    GEN     ellheight(GEN e, GEN a, long prec)
2572    GEN     ellheightmatrix(GEN E, GEN x, long n)
2573    GEN     ellheightoo(GEN e, GEN z, long prec)
2574    GEN     ellinit(GEN x, GEN p, long prec)
2575    GEN     ellintegralmodel(GEN e, GEN *pv)
2576    GEN     ellisoncurve(GEN e, GEN z)
2577    int     ellissupersingular(GEN x, GEN p)
2578    int     elljissupersingular(GEN x)
2579    GEN     elllseries(GEN e, GEN s, GEN A, long prec)
2580    GEN     elllocalred(GEN e, GEN p1)
2581    GEN     elllog(GEN e, GEN a, GEN g, GEN o)
2582    GEN     ellminimalmodel(GEN E, GEN *ptv)
2583    GEN     ellminimaltwist(GEN e)
2584    GEN     ellminimaltwist0(GEN e, long fl)
2585    GEN     ellminimaltwistcond(GEN e)
2586    GEN     ellmul(GEN e, GEN z, GEN n)
2587    GEN     ellnonsingularmultiple(GEN e, GEN P)
2588    GEN     ellneg(GEN e, GEN z)
2589    GEN     ellorder(GEN e, GEN p, GEN o)
2590    long    ellorder_Q(GEN E, GEN P)
2591    GEN     ellordinate(GEN e, GEN x, long prec)
2592    GEN     ellpadicfrobenius(GEN E, ulong p, long n)
2593    GEN     ellpadicheight(GEN e, GEN p, long n, GEN P)
2594    GEN     ellpadicheight0(GEN e, GEN p, long n, GEN P, GEN Q)
2595    GEN     ellpadicheightmatrix(GEN e, GEN p, long n, GEN P)
2596    GEN     ellpadiclog(GEN E, GEN p, long n, GEN P)
2597    GEN     ellpadics2(GEN E, GEN p, long n)
2598    GEN     ellperiods(GEN w, long flag, long prec)
2599    GEN     elltwist(GEN E, GEN D)
2600    GEN     ellrandom(GEN e)
2601    long    ellrootno(GEN e, GEN p)
2602    long    ellrootno_global(GEN e)
2603    GEN     ellsea(GEN E, ulong smallfact)
2604    GEN     ellsigma(GEN om, GEN z, long flag, long prec)
2605    GEN     ellsub(GEN e, GEN z1, GEN z2)
2606    GEN     elltaniyama(GEN e, long prec)
2607    GEN     elltatepairing(GEN E, GEN t, GEN s, GEN m)
2608    GEN     elltors(GEN e)
2609    GEN     elltors0(GEN e, long flag)
2610    GEN     ellweilpairing(GEN E, GEN t, GEN s, GEN m)
2611    GEN     ellwp(GEN w, GEN z, long prec)
2612    GEN     ellwp0(GEN w, GEN z, long flag, long prec)
2613    GEN     ellwpseries(GEN e, long v, long PRECDL)
2614    GEN     ellxn(GEN e, long n, long v)
2615    GEN     ellzeta(GEN om, GEN z, long prec)
2616    GEN     expIxy(GEN x, GEN y, long prec)
2617    int     oncurve(GEN e, GEN z)
2618    GEN     orderell(GEN e, GEN p)
2619    GEN     pointell(GEN e, GEN z, long prec)
2620    GEN     point_to_a4a6(GEN E, GEN P, GEN p, GEN *pa4)
2621    GEN     point_to_a4a6_Fl(GEN E, GEN P, ulong p, ulong *pa4)
2622    GEN     zell(GEN e, GEN z, long prec)
2623
2624    # elltors.c
2625    long    ellisdivisible(GEN E, GEN P, GEN n, GEN *Q)
2626
2627    # ellisogeny.c
2628
2629    GEN     ellisogenyapply(GEN f, GEN P)
2630    GEN     ellisogeny(GEN e, GEN G, long only_image, long vx, long vy)
2631    GEN     ellisomat(GEN E, long flag)
2632
2633    # ellsea.c
2634
2635    GEN     Fp_ellcard_SEA(GEN a4, GEN a6, GEN p, long early_abort)
2636    GEN     Fq_ellcard_SEA(GEN a4, GEN a6, GEN q, GEN T, GEN p, long early_abort)
2637    GEN     ellmodulareqn(long l, long vx, long vy)
2638
2639    # es.c
2640
2641    GEN     externstr(const char *cmd)
2642    char    *gp_filter(const char *s)
2643    GEN     gpextern(const char *cmd)
2644    void    gpsystem(const char *s)
2645    GEN     readstr(const char *s)
2646    GEN     GENtoGENstr_nospace(GEN x)
2647    GEN     GENtoGENstr(GEN x)
2648    char*   GENtoTeXstr(GEN x)
2649    char*   GENtostr(GEN x)
2650    char*   GENtostr_raw(GEN x)
2651    char*   GENtostr_unquoted(GEN x)
2652    GEN     Str(GEN g)
2653    GEN     Strchr(GEN g)
2654    GEN     Strexpand(GEN g)
2655    GEN     Strtex(GEN g)
2656    void    brute(GEN g, char format, long dec)
2657    void    dbgGEN(GEN x, long nb)
2658    void    error0(GEN g)
2659    void    dbg_pari_heap()
2660    int     file_is_binary(FILE *f)
2661    void    err_flush()
2662    void    err_printf(const char* pat, ...)
2663    GEN     gp_getenv(const char *s)
2664    GEN     gp_read_file(const char *s)
2665    GEN     gp_read_str_multiline(const char *s, char *last)
2666    GEN     gp_read_stream(FILE *f)
2667    GEN     gp_readvec_file(char *s)
2668    GEN     gp_readvec_stream(FILE *f)
2669    void    gpinstall(const char *s, const char *code,
2670                      const char *gpname, const char *lib)
2671    GEN     gsprintf(const char *fmt, ...)
2672    GEN     gvsprintf(const char *fmt, va_list ap)
2673    char*   itostr(GEN x)
2674    void    matbrute(GEN g, char format, long dec)
2675    char*   os_getenv(const char *s)
2676    void    (*os_signal(int sig, void (*f)(int)))(int)
2677    void    outmat(GEN x)
2678    void    output(GEN x)
2679    char*   RgV_to_str(GEN g, long flag)
2680    void    pari_add_hist(GEN z, long t)
2681    void    pari_ask_confirm(const char *s)
2682    void    pari_fclose(pariFILE *f)
2683    void    pari_flush()
2684    pariFILE* pari_fopen(const char *s, const char *mode)
2685    pariFILE* pari_fopen_or_fail(const char *s, const char *mode)
2686    pariFILE* pari_fopengz(const char *s)
2687    void    pari_fprintf(FILE *file, const char *fmt, ...)
2688    void    pari_fread_chars(void *b, size_t n, FILE *f)
2689    GEN     pari_get_hist(long p)
2690    long    pari_get_histtime(long p)
2691    char*   pari_get_homedir(const char *user)
2692    int     pari_is_dir(const char *name)
2693    int     pari_is_file(const char *name)
2694    int     pari_last_was_newline()
2695    void    pari_set_last_newline(int last)
2696    ulong   pari_nb_hist()
2697    void    pari_printf(const char *fmt, ...)
2698    void    pari_putc(char c)
2699    void    pari_puts(const char *s)
2700    pariFILE* pari_safefopen(const char *s, const char *mode)
2701    char*   pari_sprintf(const char *fmt, ...)
2702    int     pari_stdin_isatty()
2703    char*   pari_strdup(const char *s)
2704    char*   pari_strndup(const char *s, long n)
2705    char*   pari_unique_dir(const char *s)
2706    char*   pari_unique_filename(const char *s)
2707    void    pari_unlink(const char *s)
2708    void    pari_vfprintf(FILE *file, const char *fmt, va_list ap)
2709    void    pari_vprintf(const char *fmt, va_list ap)
2710    char*   pari_vsprintf(const char *fmt, va_list ap)
2711    char*   path_expand(const char *s)
2712    void    out_print0(PariOUT *out, const char *sep, GEN g, long flag)
2713    void    out_printf(PariOUT *out, const char *fmt, ...)
2714    void    out_putc(PariOUT *out, char c)
2715    void    out_puts(PariOUT *out, const char *s)
2716    void    out_term_color(PariOUT *out, long c)
2717    void    out_vprintf(PariOUT *out, const char *fmt, va_list ap)
2718    char*   pari_sprint0(const char *msg, GEN g, long flag)
2719    extern int f_RAW, f_PRETTYMAT, f_PRETTY, f_TEX
2720    void    print0(GEN g, long flag)
2721    void    print1(GEN g)
2722    void    printf0(const char *fmt, GEN args)
2723    void    printsep(const char *s, GEN g)
2724    void    printsep1(const char *s, GEN g)
2725    void    printtex(GEN g)
2726    char*   stack_sprintf(const char *fmt, ...)
2727    char*   stack_strcat(const char *s, const char *t)
2728    char*   stack_strdup(const char *s)
2729    void    strftime_expand(const char *s, char *buf, long max)
2730    GEN     Strprintf(const char *fmt, GEN args)
2731    FILE*   switchin(const char *name)
2732    void    switchout(const char *name)
2733    void    term_color(long c)
2734    char*   term_get_color(char *s, long c)
2735    void    texe(GEN g, char format, long dec)
2736    const char* type_name(long t)
2737    void    warning0(GEN g)
2738    void    write0(const char *s, GEN g)
2739    void    write1(const char *s, GEN g)
2740    void    writebin(const char *name, GEN x)
2741    void    writetex(const char *s, GEN g)
2742
2743    # eval.c
2744
2745    extern int br_NONE, br_BREAK, br_NEXT, br_MULTINEXT, br_RETURN
2746    void    bincopy_relink(GEN C, GEN vi)
2747    GEN     break0(long n)
2748    GEN     call0(GEN fun, GEN args)
2749    GEN     closure_callgen1(GEN C, GEN x)
2750    GEN     closure_callgen1prec(GEN C, GEN x, long prec)
2751    GEN     closure_callgen2(GEN C, GEN x, GEN y)
2752    GEN     closure_callgenall(GEN C, long n, ...)
2753    GEN     closure_callgenvec(GEN C, GEN args)
2754    GEN     closure_callgenvecprec(GEN C, GEN args, long prec)
2755    void    closure_callvoid1(GEN C, GEN x)
2756    long    closure_context(long start, long level)
2757    void    closure_disassemble(GEN n)
2758    void    closure_err(long level)
2759    GEN     closure_evalbrk(GEN C, long *status)
2760    GEN     closure_evalgen(GEN C)
2761    GEN     closure_evalnobrk(GEN C)
2762    GEN     closure_evalres(GEN C)
2763    void    closure_evalvoid(GEN C)
2764    GEN     closure_trapgen(GEN C, long numerr)
2765    GEN     copybin_unlink(GEN C)
2766    GEN     get_lex(long vn)
2767    long    get_localprec()
2768    long    get_localbitprec()
2769    GEN     gp_call(void *E, GEN x)
2770    GEN     gp_callprec(void *E, GEN x, long prec)
2771    GEN     gp_call2(void *E, GEN x, GEN y)
2772    long    gp_callbool(void *E, GEN x)
2773    long    gp_callvoid(void *E, GEN x)
2774    GEN     gp_eval(void *E, GEN x)
2775    long    gp_evalbool(void *E, GEN x)
2776    GEN     gp_evalprec(void *E, GEN x, long prec)
2777    GEN     gp_evalupto(void *E, GEN x)
2778    long    gp_evalvoid(void *E, GEN x)
2779    void    localprec(long p)
2780    void    localbitprec(long p)
2781    long    loop_break()
2782    GEN     next0(long n)
2783    GEN     pareval(GEN C)
2784    GEN     pari_self()
2785    GEN     parsum(GEN a, GEN b, GEN code, GEN x)
2786    GEN     parvector(long n, GEN code)
2787    void    pop_lex(long n)
2788    void    pop_localprec()
2789    void    push_lex(GEN a, GEN C)
2790    void    push_localbitprec(long p)
2791    void    push_localprec(long p)
2792    GEN     return0(GEN x)
2793    void    set_lex(long vn, GEN x)
2794
2795    # FF.c
2796
2797    GEN     FF_1(GEN a)
2798    GEN     FF_Z_Z_muldiv(GEN x, GEN y, GEN z)
2799    GEN     FF_Q_add(GEN x, GEN y)
2800    GEN     FF_Z_add(GEN a, GEN b)
2801    GEN     FF_Z_mul(GEN a, GEN b)
2802    GEN     FF_add(GEN a, GEN b)
2803    GEN     FF_charpoly(GEN x)
2804    GEN     FF_conjvec(GEN x)
2805    GEN     FF_div(GEN a, GEN b)
2806    GEN     FF_ellcard(GEN E)
2807    GEN     FF_ellcard_SEA(GEN E, long smallfact)
2808    GEN     FF_ellgens(GEN E)
2809    GEN     FF_ellgroup(GEN E)
2810    GEN     FF_elllog(GEN E, GEN P, GEN Q, GEN o)
2811    GEN     FF_ellmul(GEN E, GEN P, GEN n)
2812    GEN     FF_ellorder(GEN E, GEN P, GEN o)
2813    GEN     FF_elltwist(GEN E)
2814    GEN     FF_ellrandom(GEN E)
2815    GEN     FF_elltatepairing(GEN E, GEN P, GEN Q, GEN m)
2816    GEN     FF_ellweilpairing(GEN E, GEN P, GEN Q, GEN m)
2817    int     FF_equal(GEN a, GEN b)
2818    int     FF_equal0(GEN x)
2819    int     FF_equal1(GEN x)
2820    int     FF_equalm1(GEN x)
2821    long    FF_f(GEN x)
2822    GEN     FF_inv(GEN a)
2823    long    FF_issquare(GEN x)
2824    long    FF_issquareall(GEN x, GEN *pt)
2825    long    FF_ispower(GEN x, GEN K, GEN *pt)
2826    GEN     FF_log(GEN a, GEN b, GEN o)
2827    GEN     FF_minpoly(GEN x)
2828    GEN     FF_mod(GEN x)
2829    GEN     FF_mul(GEN a, GEN b)
2830    GEN     FF_mul2n(GEN a, long n)
2831    GEN     FF_neg(GEN a)
2832    GEN     FF_neg_i(GEN a)
2833    GEN     FF_norm(GEN x)
2834    GEN     FF_order(GEN x, GEN o)
2835    GEN     FF_p(GEN x)
2836    GEN     FF_p_i(GEN x)
2837    GEN     FF_pow(GEN x, GEN n)
2838    GEN     FF_primroot(GEN x, GEN *o)
2839    GEN     FF_q(GEN x)
2840    int     FF_samefield(GEN x, GEN y)
2841    GEN     FF_sqr(GEN a)
2842    GEN     FF_sqrt(GEN a)
2843    GEN     FF_sqrtn(GEN x, GEN n, GEN *zetan)
2844    GEN     FF_sub(GEN x, GEN y)
2845    GEN     FF_to_F2xq(GEN x)
2846    GEN     FF_to_F2xq_i(GEN x)
2847    GEN     FF_to_Flxq(GEN x)
2848    GEN     FF_to_Flxq_i(GEN x)
2849    GEN     FF_to_FpXQ(GEN x)
2850    GEN     FF_to_FpXQ_i(GEN x)
2851    GEN     FF_trace(GEN x)
2852    GEN     FF_zero(GEN a)
2853    GEN     FFM_FFC_mul(GEN M, GEN C, GEN ff)
2854    GEN     FFM_det(GEN M, GEN ff)
2855    GEN     FFM_image(GEN M, GEN ff)
2856    GEN     FFM_inv(GEN M, GEN ff)
2857    GEN     FFM_ker(GEN M, GEN ff)
2858    GEN     FFM_mul(GEN M, GEN N, GEN ff)
2859    long    FFM_rank(GEN M, GEN ff)
2860    GEN     FFX_factor(GEN f, GEN x)
2861    GEN     FFX_roots(GEN f, GEN x)
2862    GEN     FqX_to_FFX(GEN x, GEN ff)
2863    GEN     Fq_to_FF(GEN x, GEN ff)
2864    GEN     Z_FF_div(GEN a, GEN b)
2865    GEN     ffgen(GEN T, long v)
2866    GEN     fflog(GEN x, GEN g, GEN o)
2867    GEN     fforder(GEN x, GEN o)
2868    GEN     ffprimroot(GEN x, GEN *o)
2869    GEN     ffrandom(GEN ff)
2870    int     Rg_is_FF(GEN c, GEN *ff)
2871    int     RgC_is_FFC(GEN x, GEN *ff)
2872    int     RgM_is_FFM(GEN x, GEN *ff)
2873    GEN     p_to_FF(GEN p, long v)
2874    GEN     Tp_to_FF(GEN T, GEN p)
2875
2876    # galconj.c
2877
2878    GEN     checkgal(GEN gal)
2879    GEN     checkgroup(GEN g, GEN *S)
2880    GEN     embed_disc(GEN r, long r1, long prec)
2881    GEN     embed_roots(GEN r, long r1)
2882    GEN     galois_group(GEN gal)
2883    GEN     galoisconj(GEN nf, GEN d)
2884    GEN     galoisconj0(GEN nf, long flag, GEN d, long prec)
2885    GEN     galoisexport(GEN gal, long format)
2886    GEN     galoisfixedfield(GEN gal, GEN v, long flag, long y)
2887    GEN     galoisidentify(GEN gal)
2888    GEN     galoisinit(GEN nf, GEN den)
2889    GEN     galoisisabelian(GEN gal, long flag)
2890    long    galoisisnormal(GEN gal, GEN sub)
2891    GEN     galoispermtopol(GEN gal, GEN perm)
2892    GEN     galoissubgroups(GEN G)
2893    GEN     galoissubfields(GEN G, long flag, long v)
2894    long    numberofconjugates(GEN T, long pdepart)
2895    GEN     vandermondeinverse(GEN L, GEN T, GEN den, GEN prep)
2896
2897    # galpol.c
2898
2899    GEN     galoisnbpol(long a)
2900    GEN     galoisgetpol(long a, long b, long s)
2901
2902    # gen1.c
2903    GEN     conjvec(GEN x, long prec)
2904    GEN     gadd(GEN x, GEN y)
2905    GEN     gaddsg(long x, GEN y)
2906    GEN     gconj(GEN x)
2907    GEN     gdiv(GEN x, GEN y)
2908    GEN     gdivgs(GEN x, long s)
2909    GEN     ginv(GEN x)
2910    GEN     gmul(GEN x, GEN y)
2911    GEN     gmul2n(GEN x, long n)
2912    GEN     gmulsg(long s, GEN y)
2913    GEN     gsqr(GEN x)
2914    GEN     gsub(GEN x, GEN y)
2915    GEN     gsubsg(long x, GEN y)
2916    GEN     inv_ser(GEN b)
2917    GEN     mulcxI(GEN x)
2918    GEN     mulcxmI(GEN x)
2919    GEN     ser_normalize(GEN x)
2920
2921    # gen2.c
2922
2923    GEN     gassoc_proto(GEN f(GEN, GEN), GEN, GEN)
2924    GEN     map_proto_G(GEN f(GEN), GEN x)
2925    GEN     map_proto_lG(long f(GEN), GEN x)
2926    GEN     map_proto_lGL(long f(GEN, long), GEN x, long y)
2927
2928    long    Q_pval(GEN x, GEN p)
2929    long    Q_pvalrem(GEN x, GEN p, GEN *y)
2930    long    RgX_val(GEN x)
2931    long    RgX_valrem(GEN x, GEN *z)
2932    long    RgX_valrem_inexact(GEN x, GEN *Z)
2933    int     ZV_Z_dvd(GEN v, GEN p)
2934    long    ZV_pval(GEN x, GEN p)
2935    long    ZV_pvalrem(GEN x, GEN p, GEN *px)
2936    long    ZV_lval(GEN x, ulong p)
2937    long    ZV_lvalrem(GEN x, ulong p, GEN *px)
2938    long    ZX_lvalrem(GEN x, ulong p, GEN *px)
2939    long    ZX_lval(GEN x, ulong p)
2940    long    ZX_pval(GEN x, GEN p)
2941    long    ZX_pvalrem(GEN x, GEN p, GEN *px)
2942    long    Z_lval(GEN n, ulong p)
2943    long    Z_lvalrem(GEN n, ulong p, GEN *py)
2944    long    Z_lvalrem_stop(GEN *n, ulong p, int *stop)
2945    long    Z_pval(GEN n, GEN p)
2946    long    Z_pvalrem(GEN x, GEN p, GEN *py)
2947    GEN     cgetp(GEN x)
2948    GEN     cvstop2(long s, GEN y)
2949    GEN     cvtop(GEN x, GEN p, long l)
2950    GEN     cvtop2(GEN x, GEN y)
2951    GEN     gabs(GEN x, long prec)
2952    void    gaffect(GEN x, GEN y)
2953    void    gaffsg(long s, GEN x)
2954    int     gcmp(GEN x, GEN y)
2955    int     gequal0(GEN x)
2956    int     gequal1(GEN x)
2957    int     gequalX(GEN x)
2958    int     gequalm1(GEN x)
2959    int     gcmpsg(long x, GEN y)
2960    GEN     gcvtop(GEN x, GEN p, long r)
2961    int     gequal(GEN x, GEN y)
2962    int     gequalsg(long s, GEN x)
2963    long    gexpo(GEN x)
2964    GEN     gpvaluation(GEN x, GEN p)
2965    long    gvaluation(GEN x, GEN p)
2966    int     gidentical(GEN x, GEN y)
2967    long    glength(GEN x)
2968    GEN     gmax(GEN x, GEN y)
2969    GEN     gmaxgs(GEN x, long y)
2970    GEN     gmin(GEN x, GEN y)
2971    GEN     gmings(GEN x, long y)
2972    GEN     gneg(GEN x)
2973    GEN     gneg_i(GEN x)
2974    GEN     RgX_to_ser(GEN x, long l)
2975    GEN     RgX_to_ser_inexact(GEN x, long l)
2976    int     gsigne(GEN x)
2977    GEN     gtolist(GEN x)
2978    long    gtolong(GEN x)
2979    int     lexcmp(GEN x, GEN y)
2980    GEN     listcreate_typ(long t)
2981    GEN     listcreate()
2982    GEN     listinsert(GEN list, GEN object, long index)
2983    void    listpop(GEN L, long index)
2984    void    listpop0(GEN L, long index)
2985    GEN     listput(GEN list, GEN object, long index)
2986    GEN     listput0(GEN list, GEN object, long index)
2987    void    listsort(GEN list, long flag)
2988    GEN     matsize(GEN x)
2989    GEN     mklist()
2990    GEN     mklistcopy(GEN x)
2991    GEN     normalize(GEN x)
2992    GEN     normalizepol(GEN x)
2993    GEN     normalizepol_approx(GEN x, long lx)
2994    GEN     normalizepol_lg(GEN x, long lx)
2995    ulong   padic_to_Fl(GEN x, ulong p)
2996    GEN     padic_to_Fp(GEN x, GEN Y)
2997    GEN     quadtofp(GEN x, long l)
2998    GEN     rfrac_to_ser(GEN x, long l)
2999    long    sizedigit(GEN x)
3000    long    u_lval(ulong x, ulong p)
3001    long    u_lvalrem(ulong x, ulong p, ulong *py)
3002    long    u_lvalrem_stop(ulong *n, ulong p, int *stop)
3003    long    u_pval(ulong x, GEN p)
3004    long    u_pvalrem(ulong x, GEN p, ulong *py)
3005    long    vecindexmax(GEN x)
3006    long    vecindexmin(GEN x)
3007    GEN     vecmax0(GEN x, GEN *pv)
3008    GEN     vecmax(GEN x)
3009    GEN     vecmin0(GEN x, GEN *pv)
3010    GEN     vecmin(GEN x)
3011    long    z_lval(long s, ulong p)
3012    long    z_lvalrem(long s, ulong p, long *py)
3013    long    z_pval(long n, GEN p)
3014    long    z_pvalrem(long n, GEN p, long *py)
3015
3016
3017    # gen3.c
3018
3019    GEN     padic_to_Q(GEN x)
3020    GEN     padic_to_Q_shallow(GEN x)
3021    GEN     QpV_to_QV(GEN v)
3022    GEN     RgM_mulreal(GEN x, GEN y)
3023    GEN     RgX_cxeval(GEN T, GEN u, GEN ui)
3024    GEN     RgX_deflate_max(GEN x0, long *m)
3025    long    RgX_deflate_order(GEN x)
3026    long    ZX_deflate_order(GEN x)
3027    GEN     ZX_deflate_max(GEN x, long *m)
3028    long    RgX_degree(GEN x, long v)
3029    GEN     RgX_integ(GEN x)
3030    GEN     bitprecision0(GEN x, long n)
3031    GEN     ceil_safe(GEN x)
3032    GEN     ceilr(GEN x)
3033    GEN     centerlift(GEN x)
3034    GEN     centerlift0(GEN x, long v)
3035    GEN     compo(GEN x, long n)
3036    GEN     deg1pol(GEN x1, GEN x0, long v)
3037    GEN     deg1pol_shallow(GEN x1, GEN x0, long v)
3038    long    degree(GEN x)
3039    GEN     denom(GEN x)
3040    GEN     deriv(GEN x, long v)
3041    GEN     derivser(GEN x)
3042    GEN     diffop(GEN x, GEN v, GEN dv)
3043    GEN     diffop0(GEN x, GEN v, GEN dv, long n)
3044    GEN     diviiround(GEN x, GEN y)
3045    GEN     divrem(GEN x, GEN y, long v)
3046    GEN     floor_safe(GEN x)
3047    GEN     gceil(GEN x)
3048    GEN     gcvtoi(GEN x, long *e)
3049    GEN     gdeflate(GEN x, long v, long d)
3050    GEN     gdivent(GEN x, GEN y)
3051    GEN     gdiventgs(GEN x, long y)
3052    GEN     gdiventsg(long x, GEN y)
3053    GEN     gdiventres(GEN x, GEN y)
3054    GEN     gdivmod(GEN x, GEN y, GEN *pr)
3055    GEN     gdivround(GEN x, GEN y)
3056    int     gdvd(GEN x, GEN y)
3057    GEN     geq(GEN x, GEN y)
3058    GEN     geval(GEN x)
3059    GEN     gfloor(GEN x)
3060    GEN     gtrunc2n(GEN x, long s)
3061    GEN     gfrac(GEN x)
3062    GEN     gge(GEN x, GEN y)
3063    GEN     ggrando(GEN x, long n)
3064    GEN     ggt(GEN x, GEN y)
3065    GEN     gimag(GEN x)
3066    GEN     gisexactzero(GEN g)
3067    GEN     gle(GEN x, GEN y)
3068    GEN     glt(GEN x, GEN y)
3069    GEN     gmod(GEN x, GEN y)
3070    GEN     gmodgs(GEN x, long y)
3071    GEN     gmodsg(long x, GEN y)
3072    GEN     gmodulo(GEN x, GEN y)
3073    GEN     gmodulsg(long x, GEN y)
3074    GEN     gmodulss(long x, long y)
3075    GEN     gne(GEN x, GEN y)
3076    GEN     gnot(GEN x)
3077    GEN     gpolvar(GEN y)
3078    GEN     gppadicprec(GEN x, GEN p)
3079    GEN     gppoldegree(GEN x, long v)
3080    long    gprecision(GEN x)
3081    GEN     gpserprec(GEN x, long v)
3082    GEN     greal(GEN x)
3083    GEN     grndtoi(GEN x, long *e)
3084    GEN     ground(GEN x)
3085    GEN     gshift(GEN x, long n)
3086    GEN     gsubst(GEN x, long v, GEN y)
3087    GEN     gsubstpol(GEN x, GEN v, GEN y)
3088    GEN     gsubstvec(GEN x, GEN v, GEN y)
3089    GEN     gtocol(GEN x)
3090    GEN     gtocol0(GEN x, long n)
3091    GEN     gtocolrev(GEN x)
3092    GEN     gtocolrev0(GEN x, long n)
3093    GEN     gtopoly(GEN x, long v)
3094    GEN     gtopolyrev(GEN x, long v)
3095    GEN     gtoser(GEN x, long v, long precdl)
3096    GEN     gtovec(GEN x)
3097    GEN     gtovec0(GEN x, long n)
3098    GEN     gtovecrev(GEN x)
3099    GEN     gtovecrev0(GEN x, long n)
3100    GEN     gtovecsmall(GEN x)
3101    GEN     gtovecsmall0(GEN x, long n)
3102    GEN     gtrunc(GEN x)
3103    long    gvar(GEN x)
3104    long    gvar2(GEN x)
3105    GEN     hqfeval(GEN q, GEN x)
3106    GEN     imag_i(GEN x)
3107    GEN     integ(GEN x, long v)
3108    GEN     integser(GEN x)
3109    GEN     inv_ser(GEN b)
3110    int     iscomplex(GEN x)
3111    int     isexactzero(GEN g)
3112    int     isrationalzeroscalar(GEN g)
3113    int     isinexact(GEN x)
3114    int     isinexactreal(GEN x)
3115    int     isint(GEN n, GEN *ptk)
3116    int     isrationalzero(GEN g)
3117    int     issmall(GEN n, long *ptk)
3118    GEN     lift(GEN x)
3119    GEN     lift0(GEN x, long v)
3120    GEN     liftall(GEN x)
3121    GEN     liftall_shallow(GEN x)
3122    GEN     liftint(GEN x)
3123    GEN     liftint_shallow(GEN x)
3124    GEN     liftpol(GEN x)
3125    GEN     liftpol_shallow(GEN x)
3126    GEN     mkcoln(long n, ...)
3127    GEN     mkintn(long n, ...)
3128    GEN     mkpoln(long n, ...)
3129    GEN     mkvecn(long n, ...)
3130    GEN     mkvecsmalln(long n, ...)
3131    GEN     mulreal(GEN x, GEN y)
3132    GEN     numer(GEN x)
3133    long    padicprec(GEN x, GEN p)
3134    long    padicprec_relative(GEN x)
3135    GEN     polcoeff0(GEN x, long n, long v)
3136    GEN     polcoeff_i(GEN x, long n, long v)
3137    long    poldegree(GEN x, long v)
3138    GEN     poleval(GEN x, GEN y)
3139    GEN     pollead(GEN x, long v)
3140    long    precision(GEN x)
3141    GEN     precision0(GEN x, long n)
3142    GEN     qf_apply_RgM(GEN q, GEN M)
3143    GEN     qf_apply_ZM(GEN q, GEN M)
3144    GEN     qfbil(GEN x, GEN y, GEN q)
3145    GEN     qfeval(GEN q, GEN x)
3146    GEN     qfevalb(GEN q, GEN x, GEN y)
3147    GEN     qfnorm(GEN x, GEN q)
3148    GEN     real_i(GEN x)
3149    GEN     round0(GEN x, GEN *pte)
3150    GEN     roundr(GEN x)
3151    GEN     roundr_safe(GEN x)
3152    GEN     scalarpol(GEN x, long v)
3153    GEN     scalarpol_shallow(GEN x, long v)
3154    GEN     scalarser(GEN x, long v, long prec)
3155    GEN     ser_unscale(GEN P, GEN h)
3156    long    serprec(GEN x, long v)
3157    GEN     serreverse(GEN x)
3158    GEN     sertoser(GEN x, long prec)
3159    GEN     simplify(GEN x)
3160    GEN     simplify_shallow(GEN x)
3161    GEN     tayl(GEN x, long v, long precdl)
3162    GEN     toser_i(GEN x)
3163    GEN     trunc0(GEN x, GEN *pte)
3164    GEN     uu32toi(ulong a, ulong b)
3165    GEN     vars_sort_inplace(GEN z)
3166    GEN     vars_to_RgXV(GEN h)
3167    GEN     variables_vecsmall(GEN x)
3168    GEN     variables_vec(GEN x)
3169
3170    # genus2red.c
3171
3172    GEN     genus2red(GEN PQ, GEN p)
3173
3174    # groupid.c
3175
3176    long    group_ident(GEN G, GEN S)
3177    long    group_ident_trans(GEN G, GEN S)
3178
3179    # hash.c
3180
3181    hashtable *hash_create_ulong(ulong s, long stack)
3182    hashtable *hash_create_str(ulong s, long stack)
3183    hashtable *hash_create(ulong minsize, ulong (*hash)(void*), int (*eq)(void*, void*), int use_stack)
3184    void hash_insert(hashtable *h, void *k, void *v)
3185    void hash_insert2(hashtable *h, void *k, void *v, ulong hash)
3186    GEN hash_keys(hashtable *h)
3187    GEN hash_values(hashtable *h)
3188    hashentry *hash_search(hashtable *h, void *k)
3189    hashentry *hash_search2(hashtable *h, void *k, ulong hash)
3190    hashentry *hash_select(hashtable *h, void *k, void *E, int(*select)(void *, hashentry *))
3191    hashentry *hash_remove(hashtable *h, void *k)
3192    hashentry *hash_remove_select(hashtable *h, void *k, void *E, int (*select)(void*, hashentry*))
3193    void hash_destroy(hashtable *h)
3194    ulong hash_str(const char *str)
3195    ulong hash_str2(const char *s)
3196    ulong hash_GEN(GEN x)
3197
3198    # hyperell.c
3199
3200    GEN     hyperellpadicfrobenius(GEN x, ulong p, long e)
3201    GEN     hyperellcharpoly(GEN x)
3202    GEN     nfhyperellpadicfrobenius(GEN H, GEN T, ulong p, long n)
3203
3204    # hnf_snf.c
3205
3206    GEN     RgM_hnfall(GEN A, GEN *pB, long remove)
3207    GEN     ZM_hnf(GEN x)
3208    GEN     ZM_hnfall(GEN A, GEN *ptB, long remove)
3209    GEN     ZM_hnfcenter(GEN M)
3210    GEN     ZM_hnflll(GEN A, GEN *ptB, int remove)
3211    GEN     ZV_extgcd(GEN A)
3212    GEN     ZV_snfall(GEN D, GEN *pU, GEN *pV)
3213    GEN     ZV_snf_group(GEN d, GEN *newU, GEN *newUi)
3214    GEN     ZM_hnfmod(GEN x, GEN d)
3215    GEN     ZM_hnfmodall(GEN x, GEN dm, long flag)
3216    GEN     ZM_hnfmodid(GEN x, GEN d)
3217    GEN     ZM_hnfperm(GEN A, GEN *ptU, GEN *ptperm)
3218    void    ZM_snfclean(GEN d, GEN u, GEN v)
3219    GEN     ZM_snf(GEN x)
3220    GEN     ZM_snf_group(GEN H, GEN *newU, GEN *newUi)
3221    GEN     ZM_snfall(GEN x, GEN *ptU, GEN *ptV)
3222    GEN     ZM_snfall_i(GEN x, GEN *ptU, GEN *ptV, int return_vec)
3223    GEN     zlm_echelon(GEN x, long early_abort, ulong p, ulong pm)
3224    GEN     ZpM_echelon(GEN x, long early_abort, GEN p, GEN pm)
3225    GEN     gsmith(GEN x)
3226    GEN     gsmithall(GEN x)
3227    GEN     hnf(GEN x)
3228    GEN     hnf_divscale(GEN A, GEN B, GEN t)
3229    GEN     hnf_solve(GEN A, GEN B)
3230    GEN     hnf_invimage(GEN A, GEN b)
3231    GEN     hnfall(GEN x)
3232    int     hnfdivide(GEN A, GEN B)
3233    GEN     hnflll(GEN x)
3234    GEN     hnfmerge_get_1(GEN A, GEN B)
3235    GEN     hnfmod(GEN x, GEN d)
3236    GEN     hnfmodid(GEN x, GEN p)
3237    GEN     hnfperm(GEN x)
3238    GEN     matfrobenius(GEN M, long flag, long v)
3239    GEN     mathnf0(GEN x, long flag)
3240    GEN     matsnf0(GEN x, long flag)
3241    GEN     smith(GEN x)
3242    GEN     smithall(GEN x)
3243    GEN     smithclean(GEN z)
3244
3245    # ifactor1.c
3246
3247    GEN     Z_factor(GEN n)
3248    GEN     Z_factor_limit(GEN n, ulong all)
3249    GEN     Z_factor_until(GEN n, GEN limit)
3250    long    Z_issmooth(GEN m, ulong lim)
3251    GEN     Z_issmooth_fact(GEN m, ulong lim)
3252    long    Z_issquarefree(GEN x)
3253    GEN     absi_factor(GEN n)
3254    GEN     absi_factor_limit(GEN n, ulong all)
3255    long    bigomega(GEN n)
3256    long    bigomegau(ulong n)
3257    GEN     core(GEN n)
3258    ulong   coreu(ulong n)
3259    GEN     eulerphi(GEN n)
3260    ulong   eulerphiu(ulong n)
3261    ulong   eulerphiu_fact(GEN f)
3262    GEN     factorint(GEN n, long flag)
3263    GEN     factoru(ulong n)
3264    int     ifac_isprime(GEN x)
3265    int     ifac_next(GEN *part, GEN *p, long *e)
3266    int     ifac_read(GEN part, GEN *p, long *e)
3267    void    ifac_skip(GEN part)
3268    GEN     ifac_start(GEN n, int moebius)
3269    int     is_357_power(GEN x, GEN *pt, ulong *mask)
3270    int     is_pth_power(GEN x, GEN *pt, forprime_t *T, ulong cutoffbits)
3271    long    ispowerful(GEN n)
3272    long    issquarefree(GEN x)
3273    long    istotient(GEN n, GEN *px)
3274    long    moebius(GEN n)
3275    long    moebiusu(ulong n)
3276    GEN     nextprime(GEN n)
3277    GEN     numdiv(GEN n)
3278    long    omega(GEN n)
3279    long    omegau(ulong n)
3280    GEN     precprime(GEN n)
3281    GEN     sumdiv(GEN n)
3282    GEN     sumdivk(GEN n, long k)
3283    ulong   tridiv_bound(GEN n)
3284    int     uis_357_power(ulong x, ulong *pt, ulong *mask)
3285    int     uis_357_powermod(ulong x, ulong *mask)
3286    long    uissquarefree(ulong n)
3287    long    uissquarefree_fact(GEN f)
3288    ulong   unextprime(ulong n)
3289    ulong   uprecprime(ulong n)
3290    GEN     usumdivkvec(ulong n, GEN K)
3291
3292    # init.c
3293
3294    long    timer_delay(pari_timer *T)
3295    long    timer_get(pari_timer *T)
3296    void    timer_start(pari_timer *T)
3297    int     chk_gerepileupto(GEN x)
3298    GENbin* copy_bin(GEN x)
3299    GENbin* copy_bin_canon(GEN x)
3300    void    dbg_gerepile(pari_sp av)
3301    void    dbg_gerepileupto(GEN q)
3302    GEN     errname(GEN err)
3303    GEN     gclone(GEN x)
3304    GEN     gcloneref(GEN x)
3305    void    gclone_refc(GEN x)
3306    GEN     gcopy(GEN x)
3307    GEN     gcopy_avma(GEN x, pari_sp *AVMA)
3308    GEN     gcopy_lg(GEN x, long lx)
3309    GEN     gerepile(pari_sp ltop, pari_sp lbot, GEN q)
3310    void    gerepileallsp(pari_sp av, pari_sp tetpil, int n, ...)
3311    void    gerepilecoeffssp(pari_sp av, pari_sp tetpil, long *g, int n)
3312    void    gerepilemanysp(pari_sp av, pari_sp tetpil, GEN* g[], int n)
3313    GEN     getheap()
3314    void    gp_context_save(gp_context* rec)
3315    void    gp_context_restore(gp_context* rec)
3316    long    gsizeword(GEN x)
3317    long    gsizebyte(GEN x)
3318    void    gunclone(GEN x)
3319    void    gunclone_deep(GEN x)
3320    GEN     listcopy(GEN x)
3321    void    timer_printf(pari_timer *T, const char *format, ...)
3322    void    msgtimer(const char *format, ...)
3323    long    name_numerr(const char *s)
3324    void    new_chunk_resize(size_t x)
3325    GEN     newblock(size_t n)
3326    const char * numerr_name(long errnum)
3327    GEN     obj_check(GEN S, long K)
3328    GEN     obj_checkbuild(GEN S, long tag, GEN (*build)(GEN))
3329    GEN     obj_checkbuild_padicprec(GEN S, long tag, GEN (*build)(GEN, long), long prec)
3330    GEN     obj_checkbuild_realprec(GEN S, long tag, GEN (*build)(GEN, long), long prec)
3331    GEN     obj_checkbuild_prec(GEN S, long tag, GEN (*build)(GEN, long), long (*pr)(GEN), long prec)
3332    void    obj_free(GEN S)
3333    GEN     obj_init(long d, long n)
3334    GEN     obj_insert(GEN S, long K, GEN O)
3335    GEN     obj_insert_shallow(GEN S, long K, GEN O)
3336    void    pari_add_function(entree *ep)
3337    void    pari_add_module(entree *ep)
3338    void    pari_add_defaults_module(entree *ep)
3339    void    pari_close()
3340    void    pari_close_opts(ulong init_opts)
3341    GEN     pari_compile_str(const char *lex)
3342    int     pari_daemon()
3343    void    pari_err(int numerr, ...)
3344    GEN     pari_err_last()
3345    char *  pari_err2str(GEN err)
3346    void    pari_init_opts(size_t parisize, ulong maxprime, ulong init_opts)
3347    void    pari_init(size_t parisize, ulong maxprime)
3348    void    pari_stackcheck_init(void *pari_stack_base)
3349    void    pari_sighandler(int sig)
3350    void    pari_sig_init(void (*f)(int))
3351    void    pari_thread_alloc(pari_thread *t, size_t s, GEN arg)
3352    void    pari_thread_close()
3353    void    pari_thread_free(pari_thread *t)
3354    void    pari_thread_init()
3355    GEN     pari_thread_start(pari_thread *t)
3356    void    pari_thread_valloc(pari_thread *t, size_t s, size_t v, GEN arg)
3357    GEN     pari_version()
3358    void    pari_warn(int numerr, ...)
3359    void    paristack_newrsize(ulong newsize)
3360    void    paristack_resize(ulong newsize)
3361    void    paristack_setsize(size_t rsize, size_t vsize)
3362    void    parivstack_resize(ulong newsize)
3363    void    parivstack_reset()
3364    GEN     trap0(const char *e, GEN f, GEN r)
3365    void    shiftaddress(GEN x, long dec)
3366    void    shiftaddress_canon(GEN x, long dec)
3367    long    timer()
3368    long    timer2()
3369    void    traverseheap( void(*f)(GEN, void *), void *data )
3370
3371    # intnum.c
3372
3373    GEN     contfraceval(GEN CF, GEN t, long nlim)
3374    GEN     contfracinit(GEN M, long lim)
3375    GEN     intcirc(void *E, GEN (*eval) (void *, GEN), GEN a, GEN R, GEN tab, long prec)
3376    GEN     intfuncinit(void *E, GEN (*eval) (void *, GEN), GEN a, GEN b, long m, long prec)
3377    GEN     intnum(void *E, GEN (*eval) (void *, GEN), GEN a, GEN b, GEN tab, long prec)
3378    GEN     intnumgauss(void *E, GEN (*eval)(void*, GEN), GEN a, GEN b, GEN tab, long prec)
3379    GEN     intnumgaussinit(long n, long prec)
3380    GEN     intnuminit(GEN a, GEN b, long m, long prec)
3381    GEN     intnumromb(void *E, GEN (*eval)(void *, GEN), GEN a, GEN b, long flag, long prec)
3382    GEN     intnumromb_bitprec(void *E, GEN (*eval)(void *, GEN), GEN a, GEN b, long flag, long bit)
3383    GEN     sumnum(void *E, GEN (*eval)(void*, GEN), GEN a, GEN tab, long prec)
3384    GEN     sumnuminit(GEN fast, long prec)
3385    GEN     sumnummonien(void *E, GEN (*eval)(void*, GEN), GEN a, GEN tab, long prec)
3386    GEN     sumnummonieninit(GEN asymp, GEN w, GEN n0, long prec)
3387
3388    # krasner.c
3389
3390    GEN     padicfields0(GEN p, GEN n, long flag)
3391    GEN     padicfields(GEN p, long m, long d, long flag)
3392
3393    # kummer.c
3394
3395    GEN     rnfkummer(GEN bnr, GEN subgroup, long all, long prec)
3396
3397    # lfun.c
3398
3399    long    is_linit(GEN data)
3400    GEN     ldata_get_an(GEN ldata)
3401    GEN     ldata_get_dual(GEN ldata)
3402    GEN     ldata_get_gammavec(GEN ldata)
3403    long    ldata_get_degree(GEN ldata)
3404    long    ldata_get_k(GEN ldata)
3405    GEN     ldata_get_conductor(GEN ldata)
3406    GEN     ldata_get_rootno(GEN ldata)
3407    GEN     ldata_get_residue(GEN ldata)
3408    long    ldata_get_type(GEN ldata)
3409    long    ldata_isreal(GEN ldata)
3410    GEN     ldata_vecan(GEN ldata, long L, long prec)
3411    long    linit_get_type(GEN linit)
3412    GEN     linit_get_ldata(GEN linit)
3413    GEN     linit_get_tech(GEN linit)
3414    GEN     lfun_get_domain(GEN tech)
3415    GEN     lfun_get_dom(GEN tech)
3416    long    lfun_get_bitprec(GEN tech)
3417    GEN     lfun_get_factgammavec(GEN tech)
3418    GEN     lfun_get_step(GEN tech)
3419    GEN     lfun_get_pol(GEN tech)
3420    GEN     lfun_get_Residue(GEN tech)
3421    GEN     lfun_get_k2(GEN tech)
3422    GEN     lfun_get_w2(GEN tech)
3423    GEN     lfun_get_expot(GEN tech)
3424    long    lfun_get_der(GEN tech)
3425    long    lfun_get_bitprec(GEN tech)
3426    GEN     lfun(GEN ldata, GEN s, long bitprec)
3427    GEN     lfun0(GEN ldata, GEN s, long der, long bitprec)
3428    long    lfuncheckfeq(GEN data, GEN t0, long bitprec)
3429    GEN     lfunconductor(GEN data, GEN maxcond, long flag, long bitprec)
3430    GEN     lfuncost(GEN lmisc, GEN dom, long der, long bitprec)
3431    GEN     lfuncost0(GEN L, GEN dom, long der, long bitprec)
3432    GEN     lfuncreate(GEN obj)
3433    GEN     lfunan(GEN ldata, long L, long prec)
3434    GEN     lfunhardy(GEN ldata, GEN t, long bitprec)
3435    GEN     lfuninit(GEN ldata, GEN dom, long der, long bitprec)
3436    GEN     lfuninit0(GEN ldata, GEN dom, long der, long bitprec)
3437    GEN     lfuninit_make(long t, GEN ldata, GEN molin, GEN domain)
3438    long    lfunisvgaell(GEN Vga, long flag)
3439    GEN     lfunlambda(GEN ldata, GEN s, long bitprec)
3440    GEN     lfunlambda0(GEN ldata, GEN s, long der, long bitprec)
3441    GEN     lfunmisc_to_ldata(GEN ldata)
3442    GEN     lfunmisc_to_ldata_shallow(GEN ldata)
3443    long    lfunorderzero(GEN ldata, long m, long bitprec)
3444    GEN     lfunprod_get_fact(GEN tech)
3445    GEN     lfunrootno(GEN data, long bitprec)
3446    GEN     lfunrootres(GEN data, long bitprec)
3447    GEN     lfunrtopoles(GEN r)
3448    GEN     lfuntheta(GEN data, GEN t, long m, long bitprec)
3449    long    lfunthetacost0(GEN L, GEN tdom, long m, long bitprec)
3450    long    lfunthetacost(GEN ldata, GEN tdom, long m, long bitprec)
3451    GEN     lfunthetainit(GEN ldata, GEN tdom, long m, long bitprec)
3452    GEN     lfunthetacheckinit(GEN data, GEN tinf, long m, long *ptbitprec, long fl)
3453    GEN     lfunzeros(GEN ldata, GEN lim, long divz, long bitprec)
3454    int     sdomain_isincl(long k, GEN dom, GEN dom0)
3455    GEN     theta_get_an(GEN tdata)
3456    GEN     theta_get_K(GEN tdata)
3457    GEN     theta_get_R(GEN tdata)
3458    long    theta_get_bitprec(GEN tdata)
3459    long    theta_get_m(GEN tdata)
3460    GEN     theta_get_tdom(GEN tdata)
3461    GEN     theta_get_sqrtN(GEN tdata)
3462
3463    # lfunutils.c
3464
3465    GEN     dirzetak(GEN nf, GEN b)
3466    GEN     ellmoddegree(GEN e, long bitprec)
3467    GEN     lfunabelianrelinit(GEN bnfabs, GEN bnf, GEN polrel, GEN dom, long der, long bitprec)
3468    GEN     lfunartin(GEN N, GEN G, GEN M, long o)
3469    GEN     lfundiv(GEN ldata1, GEN ldata2, long bitprec)
3470    GEN     lfunellmfpeters(GEN E, long bitprec)
3471    GEN     lfunetaquo(GEN eta)
3472    GEN     lfungenus2(GEN PS)
3473    GEN     lfunmfspec(GEN lmisc, long bitprec)
3474    GEN     lfunmfpeters(GEN ldata, long bitprec)
3475    GEN     lfunmul(GEN ldata1, GEN ldata2, long bitprec)
3476    GEN     lfunqf(GEN ldata, long prec)
3477    GEN     lfunsymsq(GEN ldata, GEN known, long prec)
3478    GEN     lfunsymsqspec(GEN lmisc, long bitprec)
3479    GEN     lfunzetakinit(GEN pol, GEN dom, long der, long flag, long bitprec)
3480
3481    # lll.c
3482
3483    GEN     ZM_lll_norms(GEN x, double D, long flag, GEN *B)
3484    GEN     kerint(GEN x)
3485    GEN     lll(GEN x)
3486    GEN     lllfp(GEN x, double D, long flag)
3487    GEN     lllgen(GEN x)
3488    GEN     lllgram(GEN x)
3489    GEN     lllgramgen(GEN x)
3490    GEN     lllgramint(GEN x)
3491    GEN     lllgramkerim(GEN x)
3492    GEN     lllgramkerimgen(GEN x)
3493    GEN     lllint(GEN x)
3494    GEN     lllintpartial(GEN mat)
3495    GEN     lllintpartial_inplace(GEN mat)
3496    GEN     lllkerim(GEN x)
3497    GEN     lllkerimgen(GEN x)
3498    GEN     matkerint0(GEN x, long flag)
3499    GEN     qflll0(GEN x, long flag)
3500    GEN     qflllgram0(GEN x, long flag)
3501
3502    # map.c
3503
3504    GEN     gtomap(GEN M)
3505    void    mapdelete(GEN T, GEN a)
3506    GEN     mapdomain(GEN T)
3507    GEN     mapdomain_shallow(GEN T)
3508    GEN     mapget(GEN T, GEN a)
3509    int     mapisdefined(GEN T, GEN a, GEN *pt_z)
3510    void    mapput(GEN T, GEN a, GEN b)
3511    GEN     maptomat(GEN T)
3512    GEN     maptomat_shallow(GEN T)
3513
3514    # mellininv.c
3515
3516    double  dbllambertW0(double a)
3517    double  dbllambertW_1(double a)
3518    double  dbllemma526(double a, double b, double c, double B)
3519    double  dblcoro526(double a, double c, double B)
3520    GEN     gammamellininv(GEN Vga, GEN s, long m, long bitprec)
3521    GEN     gammamellininvasymp(GEN Vga, long nlimmax, long m)
3522    GEN     gammamellininvinit(GEN Vga, long m, long bitprec)
3523    GEN     gammamellininvrt(GEN K, GEN s, long bitprec)
3524
3525    # members.c
3526
3527    GEN     member_a1(GEN x)
3528    GEN     member_a2(GEN x)
3529    GEN     member_a3(GEN x)
3530    GEN     member_a4(GEN x)
3531    GEN     member_a6(GEN x)
3532    GEN     member_area(GEN x)
3533    GEN     member_b2(GEN x)
3534    GEN     member_b4(GEN x)
3535    GEN     member_b6(GEN x)
3536    GEN     member_b8(GEN x)
3537    GEN     member_bid(GEN x)
3538    GEN     member_bnf(GEN x)
3539    GEN     member_c4(GEN x)
3540    GEN     member_c6(GEN x)
3541    GEN     member_clgp(GEN x)
3542    GEN     member_codiff(GEN x)
3543    GEN     member_cyc(GEN clg)
3544    GEN     member_diff(GEN x)
3545    GEN     member_disc(GEN x)
3546    GEN     member_e(GEN x)
3547    GEN     member_eta(GEN x)
3548    GEN     member_f(GEN x)
3549    GEN     member_fu(GEN x)
3550    GEN     member_futu(GEN x)
3551    GEN     member_gen(GEN x)
3552    GEN     member_group(GEN x)
3553    GEN     member_index(GEN x)
3554    GEN     member_j(GEN x)
3555    GEN     member_mod(GEN x)
3556    GEN     member_nf(GEN x)
3557    GEN     member_no(GEN clg)
3558    GEN     member_omega(GEN x)
3559    GEN     member_orders(GEN x)
3560    GEN     member_p(GEN x)
3561    GEN     member_pol(GEN x)
3562    GEN     member_polabs(GEN x)
3563    GEN     member_reg(GEN x)
3564    GEN     member_r1(GEN x)
3565    GEN     member_r2(GEN x)
3566    GEN     member_roots(GEN x)
3567    GEN     member_sign(GEN x)
3568    GEN     member_t2(GEN x)
3569    GEN     member_tate(GEN x)
3570    GEN     member_tufu(GEN x)
3571    GEN     member_tu(GEN x)
3572    GEN     member_zk(GEN x)
3573    GEN     member_zkst(GEN bid)
3574
3575    # mp.c
3576
3577    GEN     addmulii(GEN x, GEN y, GEN z)
3578    GEN     addmulii_inplace(GEN x, GEN y, GEN z)
3579    ulong   Fl_inv(ulong x, ulong p)
3580    ulong   Fl_invgen(ulong x, ulong p, ulong *pg)
3581    ulong   Fl_invsafe(ulong x, ulong p)
3582    int     Fp_ratlift(GEN x, GEN m, GEN amax, GEN bmax, GEN *a, GEN *b)
3583    int     absi_cmp(GEN x, GEN y)
3584    int     absi_equal(GEN x, GEN y)
3585    int     absr_cmp(GEN x, GEN y)
3586    GEN     addii_sign(GEN x, long sx, GEN y, long sy)
3587    GEN     addir_sign(GEN x, long sx, GEN y, long sy)
3588    GEN     addrr_sign(GEN x, long sx, GEN y, long sy)
3589    GEN     addsi_sign(long x, GEN y, long sy)
3590    GEN     addui_sign(ulong x, GEN y, long sy)
3591    GEN     addsr(long x, GEN y)
3592    GEN     addumului(ulong a, ulong b, GEN Y)
3593    void    affir(GEN x, GEN y)
3594    void    affrr(GEN x, GEN y)
3595    GEN     bezout(GEN a, GEN b, GEN *u, GEN *v)
3596    long    cbezout(long a, long b, long *uu, long *vv)
3597    GEN     cbrtr_abs(GEN x)
3598    int     cmpii(GEN x, GEN y)
3599    int     cmprr(GEN x, GEN y)
3600    long    dblexpo(double x)
3601    ulong   dblmantissa(double x)
3602    GEN     dbltor(double x)
3603    GEN     diviiexact(GEN x, GEN y)
3604    GEN     divir(GEN x, GEN y)
3605    GEN     divis(GEN y, long x)
3606    GEN     divis_rem(GEN x, long y, long *rem)
3607    GEN     diviu_rem(GEN y, ulong x, ulong *rem)
3608    GEN     diviuuexact(GEN x, ulong y, ulong z)
3609    GEN     diviuexact(GEN x, ulong y)
3610    GEN     divri(GEN x, GEN y)
3611    GEN     divrr(GEN x, GEN y)
3612    GEN     divrs(GEN x, long y)
3613    GEN     divru(GEN x, ulong y)
3614    GEN     divsi(long x, GEN y)
3615    GEN     divsr(long x, GEN y)
3616    GEN     divur(ulong x, GEN y)
3617    GEN     dvmdii(GEN x, GEN y, GEN *z)
3618    int     equalii(GEN x, GEN y)
3619    int     equalrr(GEN x, GEN y)
3620    GEN     floorr(GEN x)
3621    GEN     gcdii(GEN x, GEN y)
3622    GEN     int2n(long n)
3623    GEN     int2u(ulong n)
3624    GEN     int_normalize(GEN x, long known_zero_words)
3625    int     invmod(GEN a, GEN b, GEN *res)
3626    ulong   invmod2BIL(ulong b)
3627    GEN     invr(GEN b)
3628    GEN     mantissa_real(GEN x, long *e)
3629    GEN     modii(GEN x, GEN y)
3630    void    modiiz(GEN x, GEN y, GEN z)
3631    GEN     mulii(GEN x, GEN y)
3632    GEN     mulir(GEN x, GEN y)
3633    GEN     mulrr(GEN x, GEN y)
3634    GEN     mulsi(long x, GEN y)
3635    GEN     mulsr(long x, GEN y)
3636    GEN     mulss(long x, long y)
3637    GEN     mului(ulong x, GEN y)
3638    GEN     mulur(ulong x, GEN y)
3639    GEN     muluu(ulong x, ulong y)
3640    GEN     muluui(ulong x, ulong y, GEN z)
3641    GEN     remi2n(GEN x, long n)
3642    double  rtodbl(GEN x)
3643    GEN     shifti(GEN x, long n)
3644    GEN     sqri(GEN x)
3645    GEN     sqrr(GEN x)
3646    GEN     sqrs(long x)
3647    GEN     sqrtr_abs(GEN x)
3648    GEN     sqrtremi(GEN S, GEN *R)
3649    GEN     sqru(ulong x)
3650    GEN     subsr(long x, GEN y)
3651    GEN     truedvmdii(GEN x, GEN y, GEN *z)
3652    GEN     truedvmdis(GEN x, long y, GEN *z)
3653    GEN     truedvmdsi(long x, GEN y, GEN *z)
3654    GEN     trunc2nr(GEN x, long n)
3655    GEN     mantissa2nr(GEN x, long n)
3656    GEN     truncr(GEN x)
3657    ulong   umodiu(GEN y, ulong x)
3658    long    vals(ulong x)
3659
3660    # nffactor.c
3661
3662    GEN     FpC_ratlift(GEN P, GEN mod, GEN amax, GEN bmax, GEN denom)
3663    GEN     FpM_ratlift(GEN M, GEN mod, GEN amax, GEN bmax, GEN denom)
3664    GEN     FpX_ratlift(GEN P, GEN mod, GEN amax, GEN bmax, GEN denom)
3665    GEN     nffactor(GEN nf, GEN x)
3666    GEN     nffactormod(GEN nf, GEN pol, GEN pr)
3667    GEN     nfgcd(GEN P, GEN Q, GEN nf, GEN den)
3668    GEN     nfgcd_all(GEN P, GEN Q, GEN T, GEN den, GEN *Pnew)
3669    int     nfissquarefree(GEN nf, GEN x)
3670    GEN     nfroots(GEN nf, GEN pol)
3671    GEN     polfnf(GEN a, GEN t)
3672    GEN     rootsof1(GEN x)
3673    GEN     rootsof1_kannan(GEN nf)
3674
3675    # paricfg.c
3676
3677    extern const char *paricfg_datadir
3678    extern const char *paricfg_version
3679    extern const char *paricfg_buildinfo
3680    extern const long  paricfg_version_code
3681    extern const char *paricfg_vcsversion
3682    extern const char *paricfg_compiledate
3683    extern const char *paricfg_mt_engine
3684
3685    # part.c
3686
3687    void    forpart(void *E, long call(void*, GEN), long k, GEN nbound, GEN abound)
3688    void    forpart_init(forpart_t *T, long k, GEN abound, GEN nbound)
3689    GEN     forpart_next(forpart_t *T)
3690    GEN     forpart_prev(forpart_t *T)
3691    GEN     numbpart(GEN x)
3692    GEN     partitions(long k, GEN nbound, GEN abound)
3693
3694    # perm.c
3695
3696    GEN     abelian_group(GEN G)
3697    GEN     cyclicgroup(GEN g, long s)
3698    GEN     cyc_pow(GEN cyc, long exp)
3699    GEN     cyc_pow_perm(GEN cyc, long exp)
3700    GEN     dicyclicgroup(GEN g1, GEN g2, long s1, long s2)
3701    GEN     group_abelianHNF(GEN G, GEN L)
3702    GEN     group_abelianSNF(GEN G, GEN L)
3703    long    group_domain(GEN G)
3704    GEN     group_elts(GEN G, long n)
3705    GEN     group_export(GEN G, long format)
3706    long    group_isA4S4(GEN G)
3707    long    group_isabelian(GEN G)
3708    GEN     group_leftcoset(GEN G, GEN g)
3709    long    group_order(GEN G)
3710    long    group_perm_normalize(GEN N, GEN g)
3711    GEN     group_quotient(GEN G, GEN H)
3712    GEN     group_rightcoset(GEN G, GEN g)
3713    GEN     group_set(GEN G, long n)
3714    long    group_subgroup_isnormal(GEN G, GEN H)
3715    GEN     group_subgroups(GEN G)
3716    GEN     groupelts_abelian_group(GEN S)
3717    GEN     groupelts_center(GEN S)
3718    GEN     groupelts_set(GEN G, long n)
3719    int     perm_commute(GEN p, GEN q)
3720    GEN     perm_cycles(GEN v)
3721    long    perm_order(GEN perm)
3722    GEN     perm_pow(GEN perm, long exp)
3723    GEN     quotient_group(GEN C, GEN G)
3724    GEN     quotient_perm(GEN C, GEN p)
3725    GEN     quotient_subgroup_lift(GEN C, GEN H, GEN S)
3726    GEN     subgroups_tableset(GEN S, long n)
3727    long    tableset_find_index(GEN tbl, GEN set)
3728    GEN     trivialgroup()
3729    GEN     vecperm_orbits(GEN v, long n)
3730    GEN     vec_insert(GEN v, long n, GEN x)
3731    int     vec_is1to1(GEN v)
3732    int     vec_isconst(GEN v)
3733    long    vecsmall_duplicate(GEN x)
3734    long    vecsmall_duplicate_sorted(GEN x)
3735    GEN     vecsmall_indexsort(GEN V)
3736    void    vecsmall_sort(GEN V)
3737    GEN     vecsmall_uniq(GEN V)
3738    GEN     vecsmall_uniq_sorted(GEN V)
3739    GEN     vecvecsmall_indexsort(GEN x)
3740    long    vecvecsmall_search(GEN x, GEN y, long flag)
3741    GEN     vecvecsmall_sort(GEN x)
3742    GEN     vecvecsmall_sort_uniq(GEN x)
3743
3744    # mt.c
3745
3746    void    mt_broadcast(GEN code)
3747    void    mt_sigint_block()
3748    void    mt_sigint_unblock()
3749    void    mt_queue_end(pari_mt *pt)
3750    GEN     mt_queue_get(pari_mt *pt, long *jobid, long *pending)
3751    void    mt_queue_start(pari_mt *pt, GEN worker)
3752    void    mt_queue_submit(pari_mt *pt, long jobid, GEN work)
3753    void    pari_mt_init()
3754    void    pari_mt_close()
3755
3756    # plotport.c
3757
3758    void    color_to_rgb(GEN c, int *r, int *g, int *b)
3759    void    colorname_to_rgb(const char *s, int *r, int *g, int *b)
3760    void    pari_plot_by_file(const char *env, const char *suf, const char *img)
3761    void    pari_set_plot_engine(void (*plot)(PARI_plot *))
3762    void    pari_kill_plot_engine()
3763    void    plotbox(long ne, GEN gx2, GEN gy2)
3764    void    plotclip(long rect)
3765    void    plotcolor(long ne, long color)
3766    void    plotcopy(long source, long dest, GEN xoff, GEN yoff, long flag)
3767    GEN     plotcursor(long ne)
3768    void    plotdraw(GEN list, long flag)
3769    GEN     ploth(void *E, GEN(*f)(void*, GEN), GEN a, GEN b, long flags, long n, long prec)
3770    GEN     plothraw(GEN listx, GEN listy, long flag)
3771    GEN     plothsizes(long flag)
3772    void    plotinit(long ne, GEN x, GEN y, long flag)
3773    void    plotkill(long ne)
3774    void    plotline(long ne, GEN gx2, GEN gy2)
3775    void    plotlines(long ne, GEN listx, GEN listy, long flag)
3776    void    plotlinetype(long ne, long t)
3777    void    plotmove(long ne, GEN x, GEN y)
3778    void    plotpoints(long ne, GEN listx, GEN listy)
3779    void    plotpointsize(long ne, GEN size)
3780    void    plotpointtype(long ne, long t)
3781    void    plotrbox(long ne, GEN x2, GEN y2)
3782    GEN     plotrecth(void *E, GEN(*f)(void*, GEN), long ne, GEN a, GEN b, ulong flags, long n, long prec)
3783    GEN     plotrecthraw(long ne, GEN data, long flags)
3784    void    plotrline(long ne, GEN x2, GEN y2)
3785    void    plotrmove(long ne, GEN x, GEN y)
3786    void    plotrpoint(long ne, GEN x, GEN y)
3787    void    plotscale(long ne, GEN x1, GEN x2, GEN y1, GEN y2)
3788    void    plotstring(long ne, char *x, long dir)
3789    void    psdraw(GEN list, long flag)
3790    GEN     psploth(void *E, GEN(*f)(void*, GEN), GEN a, GEN b, long flags, long n, long prec)
3791    GEN     psplothraw(GEN listx, GEN listy, long flag)
3792    char*   rect2ps(GEN w, GEN x, GEN y, PARI_plot *T)
3793    char*   rect2ps_i(GEN w, GEN x, GEN y, PARI_plot *T, int plotps)
3794    char*   rect2svg(GEN w, GEN x, GEN y, PARI_plot *T)
3795
3796    # polarit1.c
3797
3798    GEN     ZX_Zp_root(GEN f, GEN a, GEN p, long prec)
3799    GEN     Zp_appr(GEN f, GEN a)
3800    GEN     factorpadic(GEN x, GEN p, long r)
3801    GEN     gdeuc(GEN x, GEN y)
3802    GEN     grem(GEN x, GEN y)
3803    GEN     padicappr(GEN f, GEN a)
3804    GEN     poldivrem(GEN x, GEN y, GEN *pr)
3805    GEN     rootpadic(GEN f, GEN p, long r)
3806
3807    # polarit2.c
3808
3809    GEN     FpV_factorback(GEN L, GEN e, GEN p)
3810    GEN     Q_content(GEN x)
3811    GEN     Q_denom(GEN x)
3812    GEN     Q_div_to_int(GEN x, GEN c)
3813    GEN     Q_gcd(GEN x, GEN y)
3814    GEN     Q_mul_to_int(GEN x, GEN c)
3815    GEN     Q_muli_to_int(GEN x, GEN d)
3816    GEN     Q_primitive_part(GEN x, GEN *ptc)
3817    GEN     Q_primpart(GEN x)
3818    GEN     Q_remove_denom(GEN x, GEN *ptd)
3819    GEN     RgXQ_charpoly(GEN x, GEN T, long v)
3820    GEN     RgXQ_inv(GEN x, GEN y)
3821    GEN     RgX_disc(GEN x)
3822    GEN     RgX_extgcd(GEN x, GEN y, GEN *U, GEN *V)
3823    GEN     RgX_extgcd_simple(GEN a, GEN b, GEN *pu, GEN *pv)
3824    GEN     RgX_gcd(GEN x, GEN y)
3825    GEN     RgX_gcd_simple(GEN x, GEN y)
3826    int     RgXQ_ratlift(GEN y, GEN x, long amax, long bmax, GEN *P, GEN *Q)
3827    GEN     RgX_resultant_all(GEN P, GEN Q, GEN *sol)
3828    long    RgX_sturmpart(GEN x, GEN ab)
3829    long    RgX_type(GEN x, GEN *ptp, GEN *ptpol, long *ptpa)
3830    void    RgX_type_decode(long x, long *t1, long *t2)
3831    int     RgX_type_is_composite(long t)
3832    GEN     ZX_content(GEN x)
3833    GEN     centermod(GEN x, GEN p)
3834    GEN     centermod_i(GEN x, GEN p, GEN ps2)
3835    GEN     centermodii(GEN x, GEN p, GEN po2)
3836    GEN     content(GEN x)
3837    GEN     deg1_from_roots(GEN L, long v)
3838    GEN     factor(GEN x)
3839    GEN     factor0(GEN x, long flag)
3840    GEN     factorback(GEN fa)
3841    GEN     factorback2(GEN fa, GEN e)
3842    GEN     famat_mul_shallow(GEN f, GEN g)
3843    GEN     gbezout(GEN x, GEN y, GEN *u, GEN *v)
3844    GEN     gdivexact(GEN x, GEN y)
3845    GEN     gen_factorback(GEN L, GEN e, GEN (*_mul)(void*, GEN, GEN), GEN (*_pow)(void*, GEN, GEN), void *data)
3846    GEN     ggcd(GEN x, GEN y)
3847    GEN     ggcd0(GEN x, GEN y)
3848    GEN     ginvmod(GEN x, GEN y)
3849    GEN     glcm(GEN x, GEN y)
3850    GEN     glcm0(GEN x, GEN y)
3851    GEN     gp_factor0(GEN x, GEN flag)
3852    GEN     idealfactorback(GEN nf, GEN L, GEN e, int red)
3853    GEN     newtonpoly(GEN x, GEN p)
3854    GEN     nffactorback(GEN nf, GEN L, GEN e)
3855    GEN     nfrootsQ(GEN x)
3856    GEN     poldisc0(GEN x, long v)
3857    GEN     polresultant0(GEN x, GEN y, long v, long flag)
3858    GEN     polsym(GEN x, long n)
3859    GEN     primitive_part(GEN x, GEN *c)
3860    GEN     primpart(GEN x)
3861    GEN     reduceddiscsmith(GEN pol)
3862    GEN     resultant2(GEN x, GEN y)
3863    GEN     resultant_all(GEN u, GEN v, GEN *sol)
3864    GEN     rnfcharpoly(GEN nf, GEN T, GEN alpha, long v)
3865    GEN     roots_from_deg1(GEN x)
3866    GEN     roots_to_pol(GEN a, long v)
3867    GEN     roots_to_pol_r1(GEN a, long v, long r1)
3868    long    sturmpart(GEN x, GEN a, GEN b)
3869    GEN     subresext(GEN x, GEN y, GEN *U, GEN *V)
3870    GEN     sylvestermatrix(GEN x, GEN y)
3871    GEN     trivial_fact()
3872    GEN     gcdext0(GEN x, GEN y)
3873    GEN     polresultantext0(GEN x, GEN y, long v)
3874    GEN     polresultantext(GEN x, GEN y)
3875    GEN     prime_fact(GEN x)
3876
3877    # polarit3.c
3878
3879    GEN     Flx_FlxY_resultant(GEN a, GEN b, ulong pp)
3880    GEN     Flx_factorff_irred(GEN P, GEN Q, ulong p)
3881    void    Flx_ffintersect(GEN P, GEN Q, long n, ulong l, GEN *SP, GEN *SQ, GEN MA, GEN MB)
3882    GEN     Flx_ffisom(GEN P, GEN Q, ulong l)
3883    GEN     Flx_roots_naive(GEN f, ulong p)
3884    GEN     FlxX_resultant(GEN u, GEN v, ulong p, long sx)
3885    GEN     Flxq_ffisom_inv(GEN S, GEN Tp, ulong p)
3886    GEN     FpX_FpXY_resultant(GEN a, GEN b0, GEN p)
3887    GEN     FpX_factorff_irred(GEN P, GEN Q, GEN p)
3888    void    FpX_ffintersect(GEN P, GEN Q, long n, GEN l, GEN *SP, GEN *SQ, GEN MA, GEN MB)
3889    GEN     FpX_ffisom(GEN P, GEN Q, GEN l)
3890    GEN     FpX_translate(GEN P, GEN c, GEN p)
3891    GEN     FpXQ_ffisom_inv(GEN S, GEN Tp, GEN p)
3892    GEN     FpXQX_normalize(GEN z, GEN T, GEN p)
3893    GEN     FpXV_FpC_mul(GEN V, GEN W, GEN p)
3894    GEN     FpXY_Fq_evaly(GEN Q, GEN y, GEN T, GEN p, long vx)
3895    GEN     Fq_Fp_mul(GEN x, GEN y, GEN T, GEN p)
3896    GEN     Fq_add(GEN x, GEN y, GEN T, GEN p)
3897    GEN     Fq_div(GEN x, GEN y, GEN T, GEN p)
3898    GEN     Fq_halve(GEN x, GEN T, GEN p)
3899    GEN     Fq_inv(GEN x, GEN T, GEN p)
3900    GEN     Fq_invsafe(GEN x, GEN T, GEN p)
3901    GEN     Fq_mul(GEN x, GEN y, GEN T, GEN p)
3902    GEN     Fq_mulu(GEN x, ulong y, GEN T, GEN p)
3903    GEN     Fq_neg(GEN x, GEN T, GEN p)
3904    GEN     Fq_neg_inv(GEN x, GEN T, GEN p)
3905    GEN     Fq_pow(GEN x, GEN n, GEN T, GEN p)
3906    GEN     Fq_powu(GEN x, ulong n, GEN pol, GEN p)
3907    GEN     Fq_sub(GEN x, GEN y, GEN T, GEN p)
3908    GEN     Fq_sqr(GEN x, GEN T, GEN p)
3909    GEN     Fq_sqrt(GEN x, GEN T, GEN p)
3910    GEN     Fq_sqrtn(GEN x, GEN n, GEN T, GEN p, GEN *zeta)
3911    GEN     FqC_add(GEN x, GEN y, GEN T, GEN p)
3912    GEN     FqC_sub(GEN x, GEN y, GEN T, GEN p)
3913    GEN     FqC_Fq_mul(GEN x, GEN y, GEN T, GEN p)
3914    GEN     FqC_to_FlxC(GEN v, GEN T, GEN pp)
3915    GEN     FqM_to_FlxM(GEN x, GEN T, GEN pp)
3916    GEN     FqV_roots_to_pol(GEN V, GEN T, GEN p, long v)
3917    GEN     FqV_red(GEN z, GEN T, GEN p)
3918    GEN     FqV_to_FlxV(GEN v, GEN T, GEN pp)
3919    GEN     FqX_Fq_add(GEN y, GEN x, GEN T, GEN p)
3920    GEN     FqX_Fq_mul_to_monic(GEN P, GEN U, GEN T, GEN p)
3921    GEN     FqX_eval(GEN x, GEN y, GEN T, GEN p)
3922    GEN     FqX_translate(GEN P, GEN c, GEN T, GEN p)
3923    GEN     FqXQ_powers(GEN x, long l, GEN S, GEN T, GEN p)
3924    GEN     FqXQ_matrix_pow(GEN y, long n, long m, GEN S, GEN T, GEN p)
3925    GEN     FqXY_eval(GEN Q, GEN y, GEN x, GEN T, GEN p)
3926    GEN     FqXY_evalx(GEN Q, GEN x, GEN T, GEN p)
3927    GEN     QX_disc(GEN x)
3928    GEN     QX_gcd(GEN a, GEN b)
3929    GEN     QX_resultant(GEN A, GEN B)
3930    GEN     QXQ_intnorm(GEN A, GEN B)
3931    GEN     QXQ_inv(GEN A, GEN B)
3932    GEN     QXQ_norm(GEN A, GEN B)
3933    int     Rg_is_Fp(GEN x, GEN *p)
3934    int     Rg_is_FpXQ(GEN x, GEN *pT, GEN *pp)
3935    GEN     Rg_to_Fp(GEN x, GEN p)
3936    GEN     Rg_to_FpXQ(GEN x, GEN T, GEN p)
3937    GEN     RgC_to_FpC(GEN x, GEN p)
3938    int     RgM_is_FpM(GEN x, GEN *p)
3939    GEN     RgM_to_Flm(GEN x, ulong p)
3940    GEN     RgM_to_FpM(GEN x, GEN p)
3941    int     RgV_is_FpV(GEN x, GEN *p)
3942    GEN     RgV_to_Flv(GEN x, ulong p)
3943    GEN     RgV_to_FpV(GEN x, GEN p)
3944    int     RgX_is_FpX(GEN x, GEN *p)
3945    GEN     RgX_to_FpX(GEN x, GEN p)
3946    int     RgX_is_FpXQX(GEN x, GEN *pT, GEN *pp)
3947    GEN     RgX_to_FpXQX(GEN x, GEN T, GEN p)
3948    GEN     RgX_to_FqX(GEN x, GEN T, GEN p)
3949    GEN     ZX_ZXY_rnfequation(GEN A, GEN B, long *Lambda)
3950    GEN     ZXQ_charpoly(GEN A, GEN T, long v)
3951    GEN     ZX_disc(GEN x)
3952    int     ZX_is_squarefree(GEN x)
3953    GEN     ZX_gcd(GEN A, GEN B)
3954    GEN     ZX_gcd_all(GEN A, GEN B, GEN *Anew)
3955    GEN     ZX_resultant(GEN A, GEN B)
3956    int     Z_incremental_CRT(GEN *H, ulong Hp, GEN *q, ulong p)
3957    GEN     Z_init_CRT(ulong Hp, ulong p)
3958    int     ZM_incremental_CRT(GEN *H, GEN Hp, GEN *q, ulong p)
3959    GEN     ZM_init_CRT(GEN Hp, ulong p)
3960    int     ZX_incremental_CRT(GEN *ptH, GEN Hp, GEN *q, ulong p)
3961    GEN     ZX_init_CRT(GEN Hp, ulong p, long v)
3962    GEN     characteristic(GEN x)
3963    GEN     ffinit(GEN p, long n, long v)
3964    GEN     ffnbirred(GEN p, long n)
3965    GEN     ffnbirred0(GEN p, long n, long flag)
3966    GEN     ffsumnbirred(GEN p, long n)
3967    const bb_field *get_Fq_field(void **E, GEN T, GEN p)
3968    GEN     init_Fq(GEN p, long n, long v)
3969    GEN     pol_x_powers(long N, long v)
3970    GEN     residual_characteristic(GEN x)
3971
3972    # polclass.c
3973
3974    GEN     polclass(GEN D, long inv, long xvar)
3975
3976    # polmodular.c
3977
3978    GEN     Flm_Fl_polmodular_evalx(GEN phi, long L, ulong j, ulong p, ulong pi)
3979    GEN     Fp_polmodular_evalx(long L, long inv, GEN J, GEN P, long v, int compute_derivs)
3980    GEN     polmodular(long L, long inv, GEN x, long yvar, long compute_derivs)
3981    GEN     polmodular_ZM(long L, long inv)
3982    GEN     polmodular_ZXX(long L, long inv, long xvar, long yvar)
3983
3984    # prime.c
3985
3986    long    BPSW_isprime(GEN x)
3987    long    BPSW_psp(GEN N)
3988    GEN     addprimes(GEN primes)
3989    GEN     gisprime(GEN x, long flag)
3990    GEN     gispseudoprime(GEN x, long flag)
3991    GEN     gprimepi_upper_bound(GEN x)
3992    GEN     gprimepi_lower_bound(GEN x)
3993    long    isprime(GEN x)
3994    long    ispseudoprime(GEN x, long flag)
3995    long    millerrabin(GEN n, long k)
3996    GEN     prime(long n)
3997    GEN     primepi(GEN x)
3998    double  primepi_upper_bound(double x)
3999    double  primepi_lower_bound(double x)
4000    GEN     primes(long n)
4001    GEN     primes_interval(GEN a, GEN b)
4002    GEN     primes_interval_zv(ulong a, ulong b)
4003    GEN     primes_upto_zv(ulong b)
4004    GEN     primes0(GEN n)
4005    GEN     primes_zv(long m)
4006    GEN     randomprime(GEN N)
4007    GEN     removeprimes(GEN primes)
4008    int     uislucaspsp(ulong n)
4009    int     uisprime(ulong n)
4010    ulong   uprime(long n)
4011    ulong   uprimepi(ulong n)
4012
4013    # qfisom.c
4014
4015    GEN     qfauto(GEN g, GEN flags)
4016    GEN     qfauto0(GEN g, GEN flags)
4017    GEN     qfautoexport(GEN g, long flag)
4018    GEN     qfisom(GEN g, GEN h, GEN flags)
4019    GEN     qfisom0(GEN g, GEN h, GEN flags)
4020    GEN     qfisominit(GEN g, GEN flags, GEN minvec)
4021    GEN     qfisominit0(GEN g, GEN flags, GEN minvec)
4022    GEN     qforbits(GEN G, GEN V)
4023
4024    # qfparam.c
4025
4026    GEN     qfsolve(GEN G)
4027    GEN     qfparam(GEN G, GEN sol, long fl)
4028
4029    # random.c
4030
4031    GEN     genrand(GEN N)
4032    GEN     getrand()
4033    ulong   pari_rand()
4034    GEN     randomi(GEN x)
4035    GEN     randomr(long prec)
4036    ulong   random_Fl(ulong n)
4037    long    random_bits(long k)
4038    void    setrand(GEN seed)
4039
4040    # rootpol.c
4041
4042    GEN     QX_complex_roots(GEN p, long l)
4043    GEN     ZX_graeffe(GEN p)
4044    GEN     cleanroots(GEN x, long l)
4045    double  fujiwara_bound(GEN p)
4046    double  fujiwara_bound_real(GEN p, long sign)
4047    int     isrealappr(GEN x, long l)
4048    GEN     polgraeffe(GEN p)
4049    GEN     polmod_to_embed(GEN x, long prec)
4050    GEN     roots(GEN x, long l)
4051    GEN     realroots(GEN P, GEN ab, long prec)
4052    long    ZX_sturm(GEN P)
4053    long    ZX_sturmpart(GEN P, GEN ab)
4054    GEN     ZX_Uspensky(GEN P, GEN ab, long flag, long prec)
4055
4056    # subcyclo.c
4057
4058    GEN     factor_Aurifeuille(GEN p, long n)
4059    GEN     factor_Aurifeuille_prime(GEN p, long n)
4060    GEN     galoissubcyclo(GEN N, GEN sg, long flag, long v)
4061    GEN     polsubcyclo(long n, long d, long v)
4062
4063    # subfield.c
4064
4065    GEN     nfsubfields(GEN nf, long d)
4066
4067    # subgroup.c
4068
4069    GEN     subgrouplist(GEN cyc, GEN bound)
4070    void    forsubgroup(void *E, long fun(void*, GEN), GEN cyc, GEN B)
4071
4072    # stark.c
4073
4074    GEN     bnrL1(GEN bnr, GEN sbgrp, long flag, long prec)
4075    GEN     bnrrootnumber(GEN bnr, GEN chi, long flag, long prec)
4076    GEN     bnrstark(GEN bnr, GEN subgroup, long prec)
4077    GEN     cyc2elts(GEN cyc)
4078
4079    # sumiter.c
4080
4081    GEN     asympnum(void *E, GEN (*f)(void *, GEN, long), long muli, GEN alpha, long prec)
4082    GEN     derivnum(void *E, GEN (*eval)(void *, GEN, long prec), GEN x, long prec)
4083    GEN     derivfun(void *E, GEN (*eval)(void *, GEN, long prec), GEN x, long prec)
4084    int     forcomposite_init(forcomposite_t *C, GEN a, GEN b)
4085    GEN     forcomposite_next(forcomposite_t *C)
4086    GEN     forprime_next(forprime_t *T)
4087    int     forprime_init(forprime_t *T, GEN a, GEN b)
4088    int     forvec_init(forvec_t *T, GEN x, long flag)
4089    GEN     forvec_next(forvec_t *T)
4090    GEN     limitnum(void *E, GEN (*f)(void *, GEN, long), long muli, GEN alpha, long prec)
4091    GEN     polzag(long n, long m)
4092    GEN     prodeuler(void *E, GEN (*eval)(void *, GEN), GEN ga, GEN gb, long prec)
4093    GEN     prodinf(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4094    GEN     prodinf1(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4095    GEN     sumalt(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4096    GEN     sumalt2(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4097    GEN     sumpos(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4098    GEN     sumpos2(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4099    GEN     suminf(void *E, GEN (*eval)(void *, GEN), GEN a, long prec)
4100    ulong   u_forprime_next(forprime_t *T)
4101    int     u_forprime_init(forprime_t *T, ulong a, ulong b)
4102    void    u_forprime_restrict(forprime_t *T, ulong c)
4103    int     u_forprime_arith_init(forprime_t *T, ulong a, ulong b, ulong c, ulong q)
4104    GEN     zbrent(void *E, GEN (*eval)(void *, GEN), GEN a, GEN b, long prec)
4105    GEN     solvestep(void *E, GEN (*eval)(void *, GEN), GEN a, GEN b, GEN step, long flag, long prec)
4106
4107    # thue.c
4108
4109    GEN     bnfisintnorm(GEN x, GEN y)
4110    GEN     bnfisintnormabs(GEN bnf, GEN a)
4111    GEN     thue(GEN thueres, GEN rhs, GEN ne)
4112    GEN     thueinit(GEN pol, long flag, long prec)
4113
4114    # trans1.c
4115
4116    GEN     Pi2n(long n, long prec)
4117    GEN     PiI2(long prec)
4118    GEN     PiI2n(long n, long prec)
4119    GEN     Qp_exp(GEN x)
4120    GEN     Qp_log(GEN x)
4121    GEN     Qp_sqrt(GEN x)
4122    GEN     Qp_sqrtn(GEN x, GEN n, GEN *zetan)
4123    long    Zn_ispower(GEN a, GEN q, GEN K, GEN *pt)
4124    long    Zn_issquare(GEN x, GEN n)
4125    GEN     Zn_sqrt(GEN x, GEN n)
4126    GEN     Zp_teichmuller(GEN x, GEN p, long n, GEN q)
4127    GEN     agm(GEN x, GEN y, long prec)
4128    GEN     constcatalan(long prec)
4129    GEN     consteuler(long prec)
4130    GEN     constlog2(long prec)
4131    GEN     constpi(long prec)
4132    GEN     cxexpm1(GEN z, long prec)
4133    GEN     expIr(GEN x)
4134    GEN     exp1r_abs(GEN x)
4135    GEN     gcos(GEN x, long prec)
4136    GEN     gcotan(GEN x, long prec)
4137    GEN     gcotanh(GEN x, long prec)
4138    GEN     gexp(GEN x, long prec)
4139    GEN     gexpm1(GEN x, long prec)
4140    GEN     glog(GEN x, long prec)
4141    GEN     gpow(GEN x, GEN n, long prec)
4142    GEN     gpowers(GEN x, long n)
4143    GEN     gpowers0(GEN x, long n, GEN x0)
4144    GEN     gpowgs(GEN x, long n)
4145    GEN     grootsof1(long N, long prec)
4146    GEN     gsin(GEN x, long prec)
4147    GEN     gsinc(GEN x, long prec)
4148    void    gsincos(GEN x, GEN *s, GEN *c, long prec)
4149    GEN     gsqrpowers(GEN q, long n)
4150    GEN     gsqrt(GEN x, long prec)
4151    GEN     gsqrtn(GEN x, GEN n, GEN *zetan, long prec)
4152    GEN     gtan(GEN x, long prec)
4153    GEN     logr_abs(GEN x)
4154    GEN     mpcos(GEN x)
4155    GEN     mpeuler(long prec)
4156    GEN     mpcatalan(long prec)
4157    void    mpsincosm1(GEN x, GEN *s, GEN *c)
4158    GEN     mpexp(GEN x)
4159    GEN     mpexpm1(GEN x)
4160    GEN     mplog(GEN x)
4161    GEN     mplog2(long prec)
4162    GEN     mppi(long prec)
4163    GEN     mpsin(GEN x)
4164    void    mpsincos(GEN x, GEN *s, GEN *c)
4165    GEN     powersr(GEN a, long n)
4166    GEN     powis(GEN x, long n)
4167    GEN     powiu(GEN p, ulong k)
4168    GEN     powrfrac(GEN x, long n, long d)
4169    GEN     powrs(GEN x, long n)
4170    GEN     powrshalf(GEN x, long s)
4171    GEN     powru(GEN x, ulong n)
4172    GEN     powruhalf(GEN x, ulong s)
4173    GEN     powuu(ulong p, ulong k)
4174    GEN     powgi(GEN x, GEN n)
4175    GEN     serchop0(GEN s)
4176    GEN     sqrtnint(GEN a, long n)
4177    GEN     teich(GEN x)
4178    GEN     teichmullerinit(long p, long n)
4179    GEN     teichmuller(GEN x, GEN tab)
4180    GEN     trans_eval(const char *fun, GEN (*f) (GEN, long), GEN x, long prec)
4181    ulong   upowuu(ulong p, ulong k)
4182    ulong   usqrtn(ulong a, ulong n)
4183    ulong   usqrt(ulong a)
4184
4185    # trans2.c
4186
4187    GEN     Qp_gamma(GEN x)
4188    GEN     bernfrac(long n)
4189    GEN     bernpol(long k, long v)
4190    GEN     bernreal(long n, long prec)
4191    GEN     gacosh(GEN x, long prec)
4192    GEN     gacos(GEN x, long prec)
4193    GEN     garg(GEN x, long prec)
4194    GEN     gasinh(GEN x, long prec)
4195    GEN     gasin(GEN x, long prec)
4196    GEN     gatan(GEN x, long prec)
4197    GEN     gatanh(GEN x, long prec)
4198    GEN     gcosh(GEN x, long prec)
4199    GEN     ggammah(GEN x, long prec)
4200    GEN     ggamma(GEN x, long prec)
4201    GEN     ggamma1m1(GEN x, long prec)
4202    GEN     glngamma(GEN x, long prec)
4203    GEN     gpsi(GEN x, long prec)
4204    GEN     gsinh(GEN x, long prec)
4205    GEN     gtanh(GEN x, long prec)
4206    void    mpbern(long nomb, long prec)
4207    GEN     mpfactr(long n, long prec)
4208    GEN     sumformal(GEN T, long v)
4209
4210    # trans3.c
4211
4212    double  dblmodulus(GEN x)
4213    GEN     dilog(GEN x, long prec)
4214    GEN     eint1(GEN x, long prec)
4215    GEN     eta(GEN x, long prec)
4216    GEN     eta0(GEN x, long flag, long prec)
4217    GEN     gerfc(GEN x, long prec)
4218    GEN     glambertW(GEN y, long prec)
4219    GEN     gpolylog(long m, GEN x, long prec)
4220    GEN     gzeta(GEN x, long prec)
4221    GEN     hbessel1(GEN n, GEN z, long prec)
4222    GEN     hbessel2(GEN n, GEN z, long prec)
4223    GEN     hyperu(GEN a, GEN b, GEN gx, long prec)
4224    GEN     ibessel(GEN n, GEN z, long prec)
4225    GEN     incgam(GEN a, GEN x, long prec)
4226    GEN     incgam0(GEN a, GEN x, GEN z, long prec)
4227    GEN     incgamc(GEN a, GEN x, long prec)
4228    GEN     jbessel(GEN n, GEN z, long prec)
4229    GEN     jbesselh(GEN n, GEN z, long prec)
4230    GEN     jell(GEN x, long prec)
4231    GEN     kbessel(GEN nu, GEN gx, long prec)
4232    GEN     mpeint1(GEN x, GEN expx)
4233    GEN     mplambertW(GEN y)
4234    GEN     mpveceint1(GEN C, GEN eC, long n)
4235    GEN     nbessel(GEN n, GEN z, long prec)
4236    GEN     polylog0(long m, GEN x, long flag, long prec)
4237    GEN     sumdedekind(GEN h, GEN k)
4238    GEN     sumdedekind_coprime(GEN h, GEN k)
4239    GEN     szeta(long x, long prec)
4240    GEN     theta(GEN q, GEN z, long prec)
4241    GEN     thetanullk(GEN q, long k, long prec)
4242    GEN     trueeta(GEN x, long prec)
4243    GEN     u_sumdedekind_coprime(long h, long k)
4244    GEN     veceint1(GEN nmax, GEN C, long prec)
4245    GEN     vecthetanullk(GEN q, long k, long prec)
4246    GEN     vecthetanullk_tau(GEN tau, long k, long prec)
4247    GEN     veczeta(GEN a, GEN b, long N, long prec)
4248    GEN     weber0(GEN x, long flag, long prec)
4249    GEN     weberf(GEN x, long prec)
4250    GEN     weberf1(GEN x, long prec)
4251    GEN     weberf2(GEN x, long prec)
4252
4253    # modsym.c
4254    GEN     Qevproj_apply(GEN T, GEN pro)
4255    GEN     Qevproj_apply_vecei(GEN T, GEN pro, long k)
4256    GEN     Qevproj_init(GEN M)
4257    GEN     RgX_act_Gl2Q(GEN g, long k)
4258    GEN     RgX_act_ZGl2Q(GEN z, long k)
4259    void    checkms(GEN W)
4260    void    checkmspadic(GEN W)
4261    GEN     ellpadicL(GEN E, GEN p, long n, GEN s, long r, GEN D)
4262    GEN     msfromcusp(GEN W, GEN c)
4263    GEN     msfromell(GEN E, long signe)
4264    GEN     msfromhecke(GEN W, GEN v, GEN H)
4265    long    msgetlevel(GEN W)
4266    long    msgetsign(GEN W)
4267    long    msgetweight(GEN W)
4268    GEN     msatkinlehner(GEN W, long Q, GEN)
4269    GEN     mscuspidal(GEN W, long flag)
4270    GEN     mseisenstein(GEN W)
4271    GEN     mseval(GEN W, GEN s, GEN p)
4272    GEN     mshecke(GEN W, long p, GEN H)
4273    GEN     msinit(GEN N, GEN k, long sign)
4274    long    msissymbol(GEN W, GEN s)
4275    GEN     msomseval(GEN W, GEN phi, GEN path)
4276    GEN     mspadicinit(GEN W, long p, long n, long flag)
4277    GEN     mspadicL(GEN oms, GEN s, long r)
4278    GEN     mspadicmoments(GEN W, GEN phi, long D)
4279    GEN     mspadicseries(GEN M, long teichi)
4280    GEN     mspathgens(GEN W)
4281    GEN     mspathlog(GEN W, GEN path)
4282    GEN     msnew(GEN W)
4283    GEN     msstar(GEN W, GEN)
4284    GEN     msqexpansion(GEN W, GEN proV, ulong B)
4285    GEN     mssplit(GEN W, GEN H, long deglim)
4286    GEN     mstooms(GEN W, GEN phi)
4287
4288    # zetamult.c
4289    GEN zetamult(GEN avec, long prec)
4290
4291    # level1.h
4292
4293    ulong  Fl_add(ulong a, ulong b, ulong p)
4294    ulong  Fl_addmul_pre(ulong x0, ulong x1, ulong y0, ulong p, ulong pi)
4295    ulong  Fl_addmulmul_pre(ulong x0, ulong y0, ulong x1, ulong y1, ulong p, ulong pi)
4296    long   Fl_center(ulong u, ulong p, ulong ps2)
4297    ulong  Fl_div(ulong a, ulong b, ulong p)
4298    ulong  Fl_double(ulong a, ulong p)
4299    ulong  Fl_ellj_pre(ulong a4, ulong a6, ulong p, ulong pi)
4300    ulong  Fl_halve(ulong y, ulong p)
4301    ulong  Fl_mul(ulong a, ulong b, ulong p)
4302    ulong  Fl_mul_pre(ulong a, ulong b, ulong p, ulong pi)
4303    ulong  Fl_neg(ulong x, ulong p)
4304    ulong  Fl_sqr(ulong a, ulong p)
4305    ulong  Fl_sqr_pre(ulong a, ulong p, ulong pi)
4306    ulong  Fl_sub(ulong a, ulong b, ulong p)
4307    ulong  Fl_triple(ulong a, ulong p)
4308    ulong  Mod2(GEN x)
4309    ulong  Mod4(GEN x)
4310    ulong  Mod8(GEN x)
4311    ulong  Mod16(GEN x)
4312    ulong  Mod32(GEN x)
4313    ulong  Mod64(GEN x)
4314    int    abscmpiu(GEN x, ulong y)
4315    int    abscmpui(ulong x, GEN y)
4316    int    absequaliu(GEN x, ulong y)
4317    GEN    absi(GEN x)
4318    GEN    absi_shallow(GEN x)
4319    GEN    absr(GEN x)
4320    int    absrnz_equal1(GEN x)
4321    int    absrnz_equal2n(GEN x)
4322    GEN    addii(GEN x, GEN y)
4323    void   addiiz(GEN x, GEN y, GEN z)
4324    GEN    addir(GEN x, GEN y)
4325    void   addirz(GEN x, GEN y, GEN z)
4326    GEN    addis(GEN x, long s)
4327    GEN    addri(GEN x, GEN y)
4328    void   addriz(GEN x, GEN y, GEN z)
4329    GEN    addrr(GEN x, GEN y)
4330    void   addrrz(GEN x, GEN y, GEN z)
4331    GEN    addrs(GEN x, long s)
4332    GEN    addsi(long x, GEN y)
4333    void   addsiz(long s, GEN y, GEN z)
4334    void   addsrz(long s, GEN y, GEN z)
4335    GEN    addss(long x, long y)
4336    void   addssz(long s, long y, GEN z)
4337    GEN    adduu(ulong x, ulong y)
4338    void   affgr(GEN x, GEN y)
4339    void   affii(GEN x, GEN y)
4340    void   affiz(GEN x, GEN y)
4341    void   affrr_fixlg(GEN y, GEN z)
4342    void   affsi(long s, GEN x)
4343    void   affsr(long s, GEN x)
4344    void   affsz(long x, GEN y)
4345    void   affui(ulong s, GEN x)
4346    void   affur(ulong s, GEN x)
4347    GEN    cgetg(long x, long y)
4348    GEN    cgetg_block(long x, long y)
4349    GEN    cgetg_copy(GEN x, long *plx)
4350    GEN    cgeti(long x)
4351    GEN    cgetineg(long x)
4352    GEN    cgetipos(long x)
4353    GEN    cgetr(long x)
4354    GEN    cgetr_block(long prec)
4355    int    cmpir(GEN x, GEN y)
4356    int    cmpis(GEN x, long y)
4357    int    cmpri(GEN x, GEN y)
4358    int    cmprs(GEN x, long y)
4359    int    cmpsi(long x, GEN y)
4360    int    cmpsr(long x, GEN y)
4361    GEN    cxtofp(GEN x, long prec)
4362    GEN    divii(GEN a, GEN b)
4363    void   diviiz(GEN x, GEN y, GEN z)
4364    void   divirz(GEN x, GEN y, GEN z)
4365    void   divisz(GEN x, long s, GEN z)
4366    void   divriz(GEN x, GEN y, GEN z)
4367    void   divrrz(GEN x, GEN y, GEN z)
4368    void   divrsz(GEN y, long s, GEN z)
4369    GEN    divsi_rem(long x, GEN y, long *rem)
4370    void   divsiz(long x, GEN y, GEN z)
4371    void   divsrz(long s, GEN y, GEN z)
4372    GEN    divss(long x, long y)
4373    GEN    divss_rem(long x, long y, long *rem)
4374    void   divssz(long x, long y, GEN z)
4375    int    dvdii(GEN x, GEN y)
4376    int    dvdiiz(GEN x, GEN y, GEN z)
4377    int    dvdis(GEN x, long y)
4378    int    dvdisz(GEN x, long y, GEN z)
4379    int    dvdiu(GEN x, ulong y)
4380    int    dvdiuz(GEN x, ulong y, GEN z)
4381    int    dvdsi(long x, GEN y)
4382    int    dvdui(ulong x, GEN y)
4383    void   dvmdiiz(GEN x, GEN y, GEN z, GEN t)
4384    GEN    dvmdis(GEN x, long y, GEN *z)
4385    void   dvmdisz(GEN x, long y, GEN z, GEN t)
4386    long   dvmdsBIL(long n, long *r)
4387    GEN    dvmdsi(long x, GEN y, GEN *z)
4388    void   dvmdsiz(long x, GEN y, GEN z, GEN t)
4389    GEN    dvmdss(long x, long y, GEN *z)
4390    void   dvmdssz(long x, long y, GEN z, GEN t)
4391    ulong  dvmduBIL(ulong n, ulong *r)
4392    int    equalis(GEN x, long y)
4393    int    equalsi(long x, GEN y)
4394    int    absequalui(ulong x, GEN y)
4395    ulong  ceildivuu(ulong a, ulong b)
4396    long   evalexpo(long x)
4397    long   evallg(long x)
4398    long   evalprecp(long x)
4399    long   evalvalp(long x)
4400    long   expi(GEN x)
4401    long   expu(ulong x)
4402    void   fixlg(GEN z, long ly)
4403    GEN    fractor(GEN x, long prec)
4404    GEN    icopy(GEN x)
4405    GEN    icopyspec(GEN x, long nx)
4406    GEN    icopy_avma(GEN x, pari_sp av)
4407    ulong  int_bit(GEN x, long n)
4408    GEN    itor(GEN x, long prec)
4409    long   itos(GEN x)
4410    long   itos_or_0(GEN x)
4411    ulong  itou(GEN x)
4412    ulong  itou_or_0(GEN x)
4413    GEN    leafcopy(GEN x)
4414    GEN    leafcopy_avma(GEN x, pari_sp av)
4415    double maxdd(double x, double y)
4416    long   maxss(long x, long y)
4417    long   maxuu(ulong x, ulong y)
4418    double mindd(double x, double y)
4419    long   minss(long x, long y)
4420    long   minuu(ulong x, ulong y)
4421    long   mod16(GEN x)
4422    long   mod2(GEN x)
4423    ulong  mod2BIL(GEN x)
4424    long   mod32(GEN x)
4425    long   mod4(GEN x)
4426    long   mod64(GEN x)
4427    long   mod8(GEN x)
4428    GEN    modis(GEN x, long y)
4429    void   modisz(GEN y, long s, GEN z)
4430    GEN    modsi(long x, GEN y)
4431    void   modsiz(long s, GEN y, GEN z)
4432    GEN    modss(long x, long y)
4433    void   modssz(long s, long y, GEN z)
4434    GEN    mpabs(GEN x)
4435    GEN    mpabs_shallow(GEN x)
4436    GEN    mpadd(GEN x, GEN y)
4437    void   mpaddz(GEN x, GEN y, GEN z)
4438    void   mpaff(GEN x, GEN y)
4439    GEN    mpceil(GEN x)
4440    int    mpcmp(GEN x, GEN y)
4441    GEN    mpcopy(GEN x)
4442    GEN    mpdiv(GEN x, GEN y)
4443    long   mpexpo(GEN x)
4444    GEN    mpfloor(GEN x)
4445    GEN    mpmul(GEN x, GEN y)
4446    void   mpmulz(GEN x, GEN y, GEN z)
4447    GEN    mpneg(GEN x)
4448    int    mpodd(GEN x)
4449    GEN    mpround(GEN x)
4450    GEN    mpshift(GEN x, long s)
4451    GEN    mpsqr(GEN x)
4452    GEN    mpsub(GEN x, GEN y)
4453    void   mpsubz(GEN x, GEN y, GEN z)
4454    GEN    mptrunc(GEN x)
4455    void   muliiz(GEN x, GEN y, GEN z)
4456    void   mulirz(GEN x, GEN y, GEN z)
4457    GEN    mulis(GEN x, long s)
4458    GEN    muliu(GEN x, ulong s)
4459    GEN    mulri(GEN x, GEN s)
4460    void   mulriz(GEN x, GEN y, GEN z)
4461    void   mulrrz(GEN x, GEN y, GEN z)
4462    GEN    mulrs(GEN x, long s)
4463    GEN    mulru(GEN x, ulong s)
4464    void   mulsiz(long s, GEN y, GEN z)
4465    void   mulsrz(long s, GEN y, GEN z)
4466    void   mulssz(long s, long y, GEN z)
4467    GEN    negi(GEN x)
4468    GEN    negr(GEN x)
4469    GEN    new_chunk(size_t x)
4470    GEN    rcopy(GEN x)
4471    GEN    rdivii(GEN x, GEN y, long prec)
4472    void   rdiviiz(GEN x, GEN y, GEN z)
4473    GEN    rdivis(GEN x, long y, long prec)
4474    GEN    rdivsi(long x, GEN y, long prec)
4475    GEN    rdivss(long x, long y, long prec)
4476    GEN    real2n(long n, long prec)
4477    GEN    real_m2n(long n, long prec)
4478    GEN    real_0(long prec)
4479    GEN    real_0_bit(long bitprec)
4480    GEN    real_1(long prec)
4481    GEN    real_1_bit(long bit)
4482    GEN    real_m1(long prec)
4483    GEN    remii(GEN a, GEN b)
4484    void   remiiz(GEN x, GEN y, GEN z)
4485    GEN    remis(GEN x, long y)
4486    void   remisz(GEN y, long s, GEN z)
4487    ulong  remlll_pre(ulong u2, ulong u1, ulong u0, ulong p, ulong pi)
4488    GEN    remsi(long x, GEN y)
4489    void   remsiz(long s, GEN y, GEN z)
4490    GEN    remss(long x, long y)
4491    void   remssz(long s, long y, GEN z)
4492    GEN    rtor(GEN x, long prec)
4493    long   sdivsi(long x, GEN y)
4494    long   sdivsi_rem(long x, GEN y, long *rem)
4495    long   sdivss_rem(long x, long y, long *rem)
4496    ulong  udiviu_rem(GEN n, ulong d, ulong *r)
4497    ulong  udivuu_rem(ulong x, ulong y, ulong *r)
4498    ulong  umodi2n(GEN x, long n)
4499    void   setabssign(GEN x)
4500    void   shift_left(GEN z2, GEN z1, long min, long M, ulong f, ulong sh)
4501    void   shift_right(GEN z2, GEN z1, long min, long M, ulong f, ulong sh)
4502    ulong  shiftl(ulong x, ulong y)
4503    ulong  shiftlr(ulong x, ulong y)
4504    GEN    shiftr(GEN x, long n)
4505    void   shiftr_inplace(GEN z, long d)
4506    long   smodis(GEN x, long y)
4507    long   smodss(long x, long y)
4508    void   stackdummy(pari_sp av, pari_sp ltop)
4509    char  *stack_malloc(size_t N)
4510    char  *stack_malloc_align(size_t N, long k)
4511    char  *stack_calloc(size_t N)
4512    GEN    stoi(long x)
4513    GEN    stor(long x, long prec)
4514    GEN    subii(GEN x, GEN y)
4515    void   subiiz(GEN x, GEN y, GEN z)
4516    GEN    subir(GEN x, GEN y)
4517    void   subirz(GEN x, GEN y, GEN z)
4518    GEN    subis(GEN x, long y)
4519    void   subisz(GEN y, long s, GEN z)
4520    GEN    subri(GEN x, GEN y)
4521    void   subriz(GEN x, GEN y, GEN z)
4522    GEN    subrr(GEN x, GEN y)
4523    void   subrrz(GEN x, GEN y, GEN z)
4524    GEN    subrs(GEN x, long y)
4525    void   subrsz(GEN y, long s, GEN z)
4526    GEN    subsi(long x, GEN y)
4527    void   subsiz(long s, GEN y, GEN z)
4528    void   subsrz(long s, GEN y, GEN z)
4529    GEN    subss(long x, long y)
4530    void   subssz(long x, long y, GEN z)
4531    GEN    subuu(ulong x, ulong y)
4532    void   togglesign(GEN x)
4533    void   togglesign_safe(GEN *px)
4534    void   affectsign(GEN x, GEN y)
4535    void   affectsign_safe(GEN x, GEN *py)
4536    GEN    truedivii(GEN a, GEN b)
4537    GEN    truedivis(GEN a, long b)
4538    GEN    truedivsi(long a, GEN b)
4539    ulong  udivui_rem(ulong x, GEN y, ulong *rem)
4540    ulong  umodsu(long x, ulong y)
4541    ulong  umodui(ulong x, GEN y)
4542    ulong  umuluu_or_0(ulong x, ulong y)
4543    GEN    utoi(ulong x)
4544    GEN    utoineg(ulong x)
4545    GEN    utoipos(ulong x)
4546    GEN    utor(ulong s, long prec)
4547    GEN    uutoi(ulong x, ulong y)
4548    GEN    uutoineg(ulong x, ulong y)
4549    long   vali(GEN x)
4550    int    varncmp(long x, long y)
4551    long   varnmax(long x, long y)
4552    long   varnmin(long x, long y)
4553
4554    # pariinl.h
4555
4556    GEN    abgrp_get_cyc(GEN x)
4557    GEN    abgrp_get_gen(GEN x)
4558    GEN    abgrp_get_no(GEN x)
4559    GEN    bid_get_arch(GEN bid)
4560    GEN    bid_get_archp(GEN bid)
4561    GEN    bid_get_cyc(GEN bid)
4562    GEN    bid_get_fact(GEN bid)
4563    GEN    bid_get_gen(GEN bid)
4564    GEN    bid_get_gen_nocheck(GEN bid)
4565    GEN    bid_get_grp(GEN bid)
4566    GEN    bid_get_ideal(GEN bid)
4567    GEN    bid_get_mod(GEN bid)
4568    GEN    bid_get_no(GEN bid)
4569    GEN    bid_get_sarch(GEN bid)
4570    GEN    bid_get_sprk(GEN bid)
4571    GEN    bid_get_U(GEN bid)
4572    GEN    bnf_get_clgp(GEN bnf)
4573    GEN    bnf_get_cyc(GEN bnf)
4574    GEN    bnf_get_fu(GEN bnf)
4575    GEN    bnf_get_fu_nocheck(GEN bnf)
4576    GEN    bnf_get_gen(GEN bnf)
4577    GEN    bnf_get_logfu(GEN bnf)
4578    GEN    bnf_get_nf(GEN bnf)
4579    GEN    bnf_get_no(GEN bnf)
4580    GEN    bnf_get_reg(GEN bnf)
4581    GEN    bnf_get_tuU(GEN bnf)
4582    long   bnf_get_tuN(GEN bnf)
4583    GEN    bnr_get_bnf(GEN bnr)
4584    GEN    bnr_get_clgp(GEN bnr)
4585    GEN    bnr_get_cyc(GEN bnr)
4586    GEN    bnr_get_gen(GEN bnr)
4587    GEN    bnr_get_gen_nocheck(GEN bnr)
4588    GEN    bnr_get_no(GEN bnr)
4589    GEN    bnr_get_bid(GEN bnr)
4590    GEN    bnr_get_mod(GEN bnr)
4591    GEN    bnr_get_nf(GEN bnr)
4592    GEN    ell_get_a1(GEN e)
4593    GEN    ell_get_a2(GEN e)
4594    GEN    ell_get_a3(GEN e)
4595    GEN    ell_get_a4(GEN e)
4596    GEN    ell_get_a6(GEN e)
4597    GEN    ell_get_b2(GEN e)
4598    GEN    ell_get_b4(GEN e)
4599    GEN    ell_get_b6(GEN e)
4600    GEN    ell_get_b8(GEN e)
4601    GEN    ell_get_c4(GEN e)
4602    GEN    ell_get_c6(GEN e)
4603    GEN    ell_get_disc(GEN e)
4604    GEN    ell_get_j(GEN e)
4605    long   ell_get_type(GEN e)
4606    int    ell_is_inf(GEN z)
4607    GEN    ellinf()
4608    GEN    ellff_get_field(GEN x)
4609    GEN    ellff_get_a4a6(GEN x)
4610    GEN    ellnf_get_nf(GEN x)
4611    GEN    ellQp_get_p(GEN E)
4612    long   ellQp_get_prec(GEN E)
4613    GEN    ellQp_get_zero(GEN x)
4614    long   ellR_get_prec(GEN x)
4615    long   ellR_get_sign(GEN x)
4616    GEN    gal_get_pol(GEN gal)
4617    GEN    gal_get_p(GEN gal)
4618    GEN    gal_get_e(GEN gal)
4619    GEN    gal_get_mod(GEN gal)
4620    GEN    gal_get_roots(GEN gal)
4621    GEN    gal_get_invvdm(GEN gal)
4622    GEN    gal_get_den(GEN gal)
4623    GEN    gal_get_group(GEN gal)
4624    GEN    gal_get_gen(GEN gal)
4625    GEN    gal_get_orders(GEN gal)
4626    GEN    idealchineseinit(GEN nf, GEN x)
4627    GEN    idealpseudomin(GEN I, GEN G)
4628    GEN    idealpseudomin_nonscalar(GEN I, GEN G)
4629    GEN    idealpseudored(GEN I, GEN G)
4630    GEN    idealred_elt(GEN nf, GEN I)
4631    GEN    idealred(GEN nf, GEN I)
4632    long   logint(GEN B, GEN y)
4633    ulong  ulogint(ulong B, ulong y)
4634    GEN    modpr_get_pr(GEN x)
4635    GEN    modpr_get_p(GEN x)
4636    GEN    modpr_get_T(GEN x)
4637    GEN    nf_get_M(GEN nf)
4638    GEN    nf_get_G(GEN nf)
4639    GEN    nf_get_Tr(GEN nf)
4640    GEN    nf_get_diff(GEN nf)
4641    long   nf_get_degree(GEN nf)
4642    GEN    nf_get_disc(GEN nf)
4643    GEN    nf_get_index(GEN nf)
4644    GEN    nf_get_invzk(GEN nf)
4645    GEN    nf_get_pol(GEN nf)
4646    long   nf_get_r1(GEN nf)
4647    long   nf_get_r2(GEN nf)
4648    GEN    nf_get_ramified_primes(GEN nf)
4649    GEN    nf_get_roots(GEN nf)
4650    GEN    nf_get_roundG(GEN nf)
4651    void   nf_get_sign(GEN nf, long *r1, long *r2)
4652    long   nf_get_varn(GEN nf)
4653    GEN    nf_get_zk(GEN nf)
4654    GEN    nf_get_zkden(GEN nf)
4655    GEN    nf_get_zkprimpart(GEN nf)
4656    long   pr_get_e(GEN pr)
4657    long   pr_get_f(GEN pr)
4658    GEN    pr_get_gen(GEN pr)
4659    GEN    pr_get_p(GEN pr)
4660    GEN    pr_get_tau(GEN pr)
4661    int    pr_is_inert(GEN P)
4662    GEN    pr_norm(GEN pr)
4663    GEN    rnf_get_alpha(GEN rnf)
4664    long   rnf_get_absdegree(GEN rnf)
4665    long   rnf_get_degree(GEN rnf)
4666    GEN    rnf_get_idealdisc(GEN rnf)
4667    GEN    rnf_get_invzk(GEN rnf)
4668    GEN    rnf_get_k(GEN rnf)
4669    GEN    rnf_get_map(GEN rnf)
4670    GEN    rnf_get_nf(GEN rnf)
4671    long   rnf_get_nfdegree(GEN rnf)
4672    GEN    rnf_get_nfpol(GEN rnf)
4673    long   rnf_get_nfvarn(GEN rnf)
4674    GEN    rnf_get_pol(GEN rnf)
4675    GEN    rnf_get_polabs(GEN rnf)
4676    GEN    rnf_get_zk(GEN nf)
4677    void   rnf_get_nfzk(GEN rnf, GEN *b, GEN *cb)
4678    long   rnf_get_varn(GEN rnf)
4679    ulong  upr_norm(GEN pr)
4680    GEN    znstar_get_N(GEN G)
4681    GEN    znstar_get_conreycyc(GEN G)
4682    GEN    znstar_get_conreygen(GEN G)
4683    GEN    znstar_get_faN(GEN G)
4684    GEN    znstar_get_no(GEN G)
4685    GEN    znstar_get_pe(GEN G)
4686    GEN    znstar_get_Ui(GEN G)
4687
4688    long   closure_arity(GEN C)
4689    const char * closure_codestr(GEN C)
4690    GEN    closure_get_code(GEN C)
4691    GEN    closure_get_oper(GEN C)
4692    GEN    closure_get_data(GEN C)
4693    GEN    closure_get_dbg(GEN C)
4694    GEN    closure_get_text(GEN C)
4695    GEN    closure_get_frame(GEN C)
4696    long   closure_is_variadic(GEN C)
4697
4698    GEN    addmuliu(GEN x, GEN y, ulong u)
4699    GEN    addmuliu_inplace(GEN x, GEN y, ulong u)
4700    GEN    lincombii(GEN u, GEN v, GEN x, GEN y)
4701    GEN    mulsubii(GEN y, GEN z, GEN x)
4702    GEN    submulii(GEN x, GEN y, GEN z)
4703    GEN    submuliu(GEN x, GEN y, ulong u)
4704    GEN    submuliu_inplace(GEN x, GEN y, ulong u)
4705
4706    GEN    FpXQ_add(GEN x, GEN y, GEN T, GEN p)
4707    GEN    FpXQ_sub(GEN x, GEN y, GEN T, GEN p)
4708    GEN    Flxq_add(GEN x, GEN y, GEN T, ulong p)
4709    GEN    Flxq_sub(GEN x, GEN y, GEN T, ulong p)
4710
4711    GEN    FpXQX_div(GEN x, GEN y, GEN T, GEN p)
4712    GEN    FlxqX_div(GEN x, GEN y, GEN T, ulong p)
4713    GEN    F2xqX_div(GEN x, GEN y, GEN T)
4714
4715    GEN    Fq_red(GEN x, GEN T, GEN p)
4716    GEN    Fq_to_FpXQ(GEN x, GEN T, GEN p)
4717    GEN    gener_Fq_local(GEN T, GEN p, GEN L)
4718    GEN    FqX_Fp_mul(GEN P, GEN U, GEN T, GEN p)
4719    GEN    FqX_Fq_mul(GEN P, GEN U, GEN T, GEN p)
4720    GEN    FqX_add(GEN x, GEN y, GEN T, GEN p)
4721    GEN    FqX_deriv(GEN f, GEN T, GEN p)
4722    GEN    FqX_div(GEN x, GEN y, GEN T, GEN p)
4723    GEN    FqX_div_by_X_x(GEN x, GEN y, GEN T, GEN p, GEN *z)
4724    GEN    FqX_divrem(GEN x, GEN y, GEN T, GEN p, GEN *z)
4725    GEN    FqX_extgcd(GEN P, GEN Q, GEN T, GEN p, GEN *U, GEN *V)
4726    GEN    FqX_factor(GEN f, GEN T, GEN p)
4727    GEN    FqX_gcd(GEN P, GEN Q, GEN T, GEN p)
4728    GEN    FqX_get_red(GEN S, GEN T, GEN p)
4729    GEN    FqX_halfgcd(GEN P, GEN Q, GEN T, GEN p)
4730    GEN    FqX_mul(GEN x, GEN y, GEN T, GEN p)
4731    GEN    FqX_mulu(GEN x, ulong y, GEN T, GEN p)
4732    GEN    FqX_neg(GEN x, GEN T, GEN p)
4733    GEN    FqX_normalize(GEN z, GEN T, GEN p)
4734    GEN    FqX_powu(GEN x, ulong n, GEN T, GEN p)
4735    GEN    FqX_red(GEN z, GEN T, GEN p)
4736    GEN    FqX_rem(GEN x, GEN y, GEN T, GEN p)
4737    GEN    FqX_roots(GEN f, GEN T, GEN p)
4738    GEN    FqX_sqr(GEN x, GEN T, GEN p)
4739    GEN    FqX_sub(GEN x, GEN y, GEN T, GEN p)
4740
4741    GEN    FqXQ_add(GEN x, GEN y, GEN S, GEN T, GEN p)
4742    GEN    FqXQ_div(GEN x, GEN y, GEN S, GEN T, GEN p)
4743    GEN    FqXQ_inv(GEN x, GEN S, GEN T, GEN p)
4744    GEN    FqXQ_invsafe(GEN x, GEN S, GEN T, GEN p)
4745    GEN    FqXQ_mul(GEN x, GEN y, GEN S, GEN T, GEN p)
4746    GEN    FqXQ_pow(GEN x, GEN n, GEN S, GEN T, GEN p)
4747    GEN    FqXQ_sqr(GEN x, GEN S, GEN T, GEN p)
4748    GEN    FqXQ_sub(GEN x, GEN y, GEN S, GEN T, GEN p)
4749
4750    long   get_F2x_degree(GEN T)
4751    GEN    get_F2x_mod(GEN T)
4752    long   get_F2x_var(GEN T)
4753    long   get_F2xqX_degree(GEN T)
4754    GEN    get_F2xqX_mod(GEN T)
4755    long   get_F2xqX_var(GEN T)
4756    long   get_Flx_degree(GEN T)
4757    GEN    get_Flx_mod(GEN T)
4758    long   get_Flx_var(GEN T)
4759    long   get_FlxqX_degree(GEN T)
4760    GEN    get_FlxqX_mod(GEN T)
4761    long   get_FlxqX_var(GEN T)
4762    long   get_FpX_degree(GEN T)
4763    GEN    get_FpX_mod(GEN T)
4764    long   get_FpX_var(GEN T)
4765    long   get_FpXQX_degree(GEN T)
4766    GEN    get_FpXQX_mod(GEN T)
4767    long   get_FpXQX_var(GEN T)
4768
4769    ulong  F2m_coeff(GEN x, long a, long b)
4770    void   F2m_clear(GEN x, long a, long b)
4771    void   F2m_flip(GEN x, long a, long b)
4772    void   F2m_set(GEN x, long a, long b)
4773    void   F2v_clear(GEN x, long v)
4774    ulong  F2v_coeff(GEN x, long v)
4775    void   F2v_flip(GEN x, long v)
4776    GEN    F2v_to_F2x(GEN x, long sv)
4777    void   F2v_set(GEN x, long v)
4778    void   F2x_clear(GEN x, long v)
4779    ulong  F2x_coeff(GEN x, long v)
4780    void   F2x_flip(GEN x, long v)
4781    void   F2x_set(GEN x, long v)
4782    int    F2x_equal1(GEN x)
4783    int    F2x_equal(GEN V, GEN W)
4784    GEN    F2x_div(GEN x, GEN y)
4785    GEN    F2x_renormalize(GEN x, long lx)
4786    GEN    F2m_copy(GEN x)
4787    GEN    F2v_copy(GEN x)
4788    GEN    F2x_copy(GEN x)
4789    GEN    F2v_ei(long n, long i)
4790    GEN    Flm_copy(GEN x)
4791    GEN    Flv_copy(GEN x)
4792    int    Flx_equal1(GEN x)
4793    GEN    Flx_copy(GEN x)
4794    GEN    Flx_div(GEN x, GEN y, ulong p)
4795    ulong  Flx_lead(GEN x)
4796    GEN    Flx_mulu(GEN x, ulong a, ulong p)
4797    GEN    FpV_FpC_mul(GEN x, GEN y, GEN p)
4798    GEN    FpXQX_renormalize(GEN x, long lx)
4799    GEN    FpXX_renormalize(GEN x, long lx)
4800    GEN    FpX_div(GEN x, GEN y, GEN p)
4801    GEN    FpX_renormalize(GEN x, long lx)
4802    GEN    Fp_add(GEN a, GEN b, GEN m)
4803    GEN    Fp_addmul(GEN x, GEN y, GEN z, GEN p)
4804    GEN    Fp_center(GEN u, GEN p, GEN ps2)
4805    GEN    Fp_div(GEN a, GEN b, GEN m)
4806    GEN    Fp_halve(GEN y, GEN p)
4807    GEN    Fp_inv(GEN a, GEN m)
4808    GEN    Fp_invsafe(GEN a, GEN m)
4809    GEN    Fp_mul(GEN a, GEN b, GEN m)
4810    GEN    Fp_muls(GEN a, long b, GEN m)
4811    GEN    Fp_mulu(GEN a, ulong b, GEN m)
4812    GEN    Fp_neg(GEN b, GEN m)
4813    GEN    Fp_red(GEN x, GEN p)
4814    GEN    Fp_sqr(GEN a, GEN m)
4815    GEN    Fp_sub(GEN a, GEN b, GEN m)
4816    GEN    GENbinbase(GENbin *p)
4817    GEN    Q_abs(GEN x)
4818    GEN    Q_abs_shallow(GEN x)
4819    int    QV_isscalar(GEN x)
4820    void   Qtoss(GEN q, long *n, long *d)
4821    GEN    R_abs(GEN x)
4822    GEN    R_abs_shallow(GEN x)
4823    GEN    RgC_fpnorml2(GEN x, long prec)
4824    GEN    RgC_gtofp(GEN x, long prec)
4825    GEN    RgC_gtomp(GEN x, long prec)
4826    void   RgM_dimensions(GEN x, long *m, long *n)
4827    GEN    RgM_fpnorml2(GEN x, long prec)
4828    GEN    RgM_gtofp(GEN x, long prec)
4829    GEN    RgM_gtomp(GEN x, long prec)
4830    GEN    RgM_inv(GEN a)
4831    GEN    RgM_minor(GEN a, long i, long j)
4832    GEN    RgM_shallowcopy(GEN x)
4833    GEN    RgV_gtofp(GEN x, long prec)
4834    int    RgV_isscalar(GEN x)
4835    int    RgV_is_ZV(GEN x)
4836    int    RgV_is_QV(GEN x)
4837    long   RgX_equal_var(GEN x, GEN y)
4838    int    RgX_is_monomial(GEN x)
4839    int    RgX_is_rational(GEN x)
4840    int    RgX_is_QX(GEN x)
4841    int    RgX_is_ZX(GEN x)
4842    int    RgX_isscalar(GEN x)
4843    GEN    RgX_shift_inplace(GEN x, long v)
4844    void   RgX_shift_inplace_init(long v)
4845    GEN    RgXQ_mul(GEN x, GEN y, GEN T)
4846    GEN    RgXQ_sqr(GEN x, GEN T)
4847    GEN    RgXQX_div(GEN x, GEN y, GEN T)
4848    GEN    RgXQX_rem(GEN x, GEN y, GEN T)
4849    GEN    RgX_coeff(GEN x, long n)
4850    GEN    RgX_copy(GEN x)
4851    GEN    RgX_div(GEN x, GEN y)
4852    GEN    RgX_fpnorml2(GEN x, long prec)
4853    GEN    RgX_gtofp(GEN x, long prec)
4854    GEN    RgX_rem(GEN x, GEN y)
4855    GEN    RgX_renormalize(GEN x)
4856    GEN    Rg_col_ei(GEN x, long n, long i)
4857    GEN    ZC_hnfrem(GEN x, GEN y)
4858    GEN    ZM_hnfrem(GEN x, GEN y)
4859    GEN    ZM_lll(GEN x, double D, long f)
4860    int    ZV_dvd(GEN x, GEN y)
4861    int    ZV_isscalar(GEN x)
4862    GEN    ZV_to_zv(GEN x)
4863    int    ZX_equal1(GEN x)
4864    GEN    ZX_renormalize(GEN x, long lx)
4865    GEN    ZXQ_mul(GEN x, GEN y, GEN T)
4866    GEN    ZXQ_sqr(GEN x, GEN T)
4867    long   Z_ispower(GEN x, ulong k)
4868    long   Z_issquare(GEN x)
4869    GEN    absfrac(GEN x)
4870    GEN    absfrac_shallow(GEN x)
4871    GEN    affc_fixlg(GEN x, GEN res)
4872    GEN    bin_copy(GENbin *p)
4873    long   bit_accuracy(long x)
4874    double bit_accuracy_mul(long x, double y)
4875    long   bit_prec(GEN x)
4876    int    both_odd(long x, long y)
4877    GEN    cbrtr(GEN x)
4878    GEN    cbrtr_abs(GEN x)
4879    GEN    cgetc(long x)
4880    GEN    cgetalloc(long t, size_t l)
4881    GEN    cxcompotor(GEN z, long prec)
4882    void   cgiv(GEN x)
4883    GEN    col_ei(long n, long i)
4884    GEN    const_col(long n, GEN x)
4885    GEN    const_vec(long n, GEN x)
4886    GEN    const_vecsmall(long n, long c)
4887    GEN    constant_coeff(GEN x)
4888    GEN    cxnorm(GEN x)
4889    GEN    cyclic_perm(long l, long d)
4890    double dbllog2r(GEN x)
4891    long   degpol(GEN x)
4892    long   divsBIL(long n)
4893    void   gabsz(GEN x, long prec, GEN z)
4894    GEN    gaddgs(GEN y, long s)
4895    void   gaddz(GEN x, GEN y, GEN z)
4896    int    gcmpgs(GEN y, long s)
4897    void   gdiventz(GEN x, GEN y, GEN z)
4898    GEN    gdivsg(long s, GEN y)
4899    void   gdivz(GEN x, GEN y, GEN z)
4900    GEN    gen_I()
4901    void   gerepileall(pari_sp av, int n, ...)
4902    void   gerepilecoeffs(pari_sp av, GEN x, int n)
4903    GEN    gerepilecopy(pari_sp av, GEN x)
4904    void   gerepilemany(pari_sp av, GEN* g[], int n)
4905    int    gequalgs(GEN y, long s)
4906    GEN    gerepileupto(pari_sp av, GEN q)
4907    GEN    gerepileuptoint(pari_sp av, GEN q)
4908    GEN    gerepileuptoleaf(pari_sp av, GEN q)
4909    GEN    gmaxsg(long s, GEN y)
4910    GEN    gminsg(long s, GEN y)
4911    void   gmodz(GEN x, GEN y, GEN z)
4912    void   gmul2nz(GEN x, long s, GEN z)
4913    GEN    gmulgs(GEN y, long s)
4914    void   gmulz(GEN x, GEN y, GEN z)
4915    void   gnegz(GEN x, GEN z)
4916    void   gshiftz(GEN x, long s, GEN z)
4917    GEN    gsubgs(GEN y, long s)
4918    void   gsubz(GEN x, GEN y, GEN z)
4919    double gtodouble(GEN x)
4920    GEN    gtofp(GEN z, long prec)
4921    GEN    gtomp(GEN z, long prec)
4922    long   gtos(GEN x)
4923    long   gval(GEN x, long v)
4924    GEN    identity_perm(long l)
4925    int    equali1(GEN n)
4926    int    equalim1(GEN n)
4927    long   inf_get_sign(GEN x)
4928    int    is_bigint(GEN n)
4929    int    is_const_t(long t)
4930    int    is_extscalar_t(long t)
4931    int    is_intreal_t(long t)
4932    int    is_matvec_t(long t)
4933    int    is_noncalc_t(long tx)
4934    int    is_pm1(GEN n)
4935    int    is_rational_t(long t)
4936    int    is_real_t(long t)
4937    int    is_recursive_t(long t)
4938    int    is_scalar_t(long t)
4939    int    _is_universal_constant "is_universal_constant"(GEN x)
4940    int    is_vec_t(long t)
4941    int    isint1(GEN x)
4942    int    isintm1(GEN x)
4943    int    isintzero(GEN x)
4944    int    ismpzero(GEN x)
4945    int    isonstack(GEN x)
4946    void   killblock(GEN x)
4947    GEN    leading_coeff(GEN x)
4948    void   lg_increase(GEN x)
4949    long   lgcols(GEN x)
4950    long   lgpol(GEN x)
4951    GEN    matpascal(long n)
4952    GEN    matslice(GEN A, long x1, long x2, long y1, long y2)
4953    GEN    mkcol(GEN x)
4954    GEN    mkcol2(GEN x, GEN y)
4955    GEN    mkcol2s(long x, long y)
4956    GEN    mkcol3(GEN x, GEN y, GEN z)
4957    GEN    mkcol3s(long x, long y, long z)
4958    GEN    mkcol4(GEN x, GEN y, GEN z, GEN t)
4959    GEN    mkcol4s(long x, long y, long z, long t)
4960    GEN    mkcol5(GEN x, GEN y, GEN z, GEN t, GEN u)
4961    GEN    mkcol6(GEN x, GEN y, GEN z, GEN t, GEN u, GEN v)
4962    GEN    mkcolcopy(GEN x)
4963    GEN    mkcols(long x)
4964    GEN    mkcomplex(GEN x, GEN y)
4965    GEN    mkerr(long n)
4966    GEN    mkmoo()
4967    GEN    mkoo()
4968    GEN    mkfrac(GEN x, GEN y)
4969    GEN    mkfracss(long x, long y)
4970    GEN    mkfraccopy(GEN x, GEN y)
4971    GEN    mkintmod(GEN x, GEN y)
4972    GEN    mkintmodu(ulong x, ulong y)
4973    GEN    mkmat(GEN x)
4974    GEN    mkmat2(GEN x, GEN y)
4975    GEN    mkmat3(GEN x, GEN y, GEN z)
4976    GEN    mkmat4(GEN x, GEN y, GEN z, GEN t)
4977    GEN    mkmat5(GEN x, GEN y, GEN z, GEN t, GEN u)
4978    GEN    mkmatcopy(GEN x)
4979    GEN    mkpolmod(GEN x, GEN y)
4980    GEN    mkqfi(GEN x, GEN y, GEN z)
4981    GEN    mkquad(GEN n, GEN x, GEN y)
4982    GEN    mkrfrac(GEN x, GEN y)
4983    GEN    mkrfraccopy(GEN x, GEN y)
4984    GEN    mkvec(GEN x)
4985    GEN    mkvec2(GEN x, GEN y)
4986    GEN    mkvec2copy(GEN x, GEN y)
4987    GEN    mkvec2s(long x, long y)
4988    GEN    mkvec3(GEN x, GEN y, GEN z)
4989    GEN    mkvec3s(long x, long y, long z)
4990    GEN    mkvec4(GEN x, GEN y, GEN z, GEN t)
4991    GEN    mkvec4s(long x, long y, long z, long t)
4992    GEN    mkvec5(GEN x, GEN y, GEN z, GEN t, GEN u)
4993    GEN    mkveccopy(GEN x)
4994    GEN    mkvecs(long x)
4995    GEN    mkvecsmall(long x)
4996    GEN    mkvecsmall2(long x, long y)
4997    GEN    mkvecsmall3(long x, long y, long z)
4998    GEN    mkvecsmall4(long x, long y, long z, long t)
4999    void   mpcosz(GEN x, GEN z)
5000    void   mpexpz(GEN x, GEN z)
5001    void   mplogz(GEN x, GEN z)
5002    void   mpsinz(GEN x, GEN z)
5003    GEN    mul_content(GEN cx, GEN cy)
5004    GEN    mul_denom(GEN cx, GEN cy)
5005    long   nbits2nlong(long x)
5006    long   nbits2extraprec(long x)
5007    long   nbits2ndec(long x)
5008    long   nbits2prec(long x)
5009    long   nbits2lg(long x)
5010    long   nbrows(GEN x)
5011    long   nchar2nlong(long x)
5012    long   ndec2nbits(long x)
5013    long   ndec2nlong(long x)
5014    long   ndec2prec(long x)
5015    void   normalize_frac(GEN z)
5016    int    odd(long x)
5017    void   pari_free(void *pointer)
5018    void*  pari_calloc(size_t size)
5019    void*  pari_malloc(size_t bytes)
5020    void*  pari_realloc(void *pointer, size_t size)
5021    GEN    perm_conj(GEN s, GEN t)
5022    GEN    perm_inv(GEN x)
5023    GEN    perm_mul(GEN s, GEN t)
5024    GEN    pol_0(long v)
5025    GEN    pol_1(long v)
5026    GEN    pol_x(long v)
5027    GEN    pol_xn(long n, long v)
5028    GEN    pol_xnall(long n, long v)
5029    GEN    pol0_F2x(long sv)
5030    GEN    pol1_F2x(long sv)
5031    GEN    polx_F2x(long sv)
5032    GEN    pol0_Flx(long sv)
5033    GEN    pol1_Flx(long sv)
5034    GEN    polx_Flx(long sv)
5035    GEN    polx_zx(long sv)
5036    GEN    powii(GEN x, GEN n)
5037    GEN    powIs(long n)
5038    long   prec2nbits(long x)
5039    double prec2nbits_mul(long x, double y)
5040    long   prec2ndec(long x)
5041    long   precdbl(long x)
5042    GEN    quad_disc(GEN x)
5043    GEN    qfb_disc(GEN x)
5044    GEN    qfb_disc3(GEN x, GEN y, GEN z)
5045    GEN    quadnorm(GEN q)
5046    long   remsBIL(long n)
5047    GEN    row(GEN A, long x1)
5048    GEN    Flm_row(GEN A, long x0)
5049    GEN    row_i(GEN A, long x0, long x1, long x2)
5050    GEN    zm_row(GEN x, long i)
5051    GEN    rowcopy(GEN A, long x0)
5052    GEN    rowpermute(GEN A, GEN p)
5053    GEN    rowslice(GEN A, long x1, long x2)
5054    GEN    rowslicepermute(GEN A, GEN p, long x1, long x2)
5055    GEN    rowsplice(GEN a, long j)
5056    int    ser_isexactzero(GEN x)
5057    GEN    shallowcopy(GEN x)
5058    GEN    sqrfrac(GEN x)
5059    GEN    sqrti(GEN x)
5060    GEN    sqrtnr(GEN x, long n)
5061    GEN    sqrtr(GEN x)
5062    GEN    sstoQ(long n, long d)
5063    void   pari_stack_alloc(pari_stack *s, long nb)
5064    void** pari_stack_base(pari_stack *s)
5065    void   pari_stack_delete(pari_stack *s)
5066    void   pari_stack_init(pari_stack *s, size_t size, void **data)
5067    long   pari_stack_new(pari_stack *s)
5068    void   pari_stack_pushp(pari_stack *s, void *u)
5069    long   sturm(GEN x)
5070    GEN    truecoeff(GEN x, long n)
5071    GEN    trunc_safe(GEN x)
5072    GEN    vec_ei(long n, long i)
5073    GEN    vec_append(GEN v, GEN s)
5074    GEN    vec_lengthen(GEN v, long n)
5075    GEN    vec_setconst(GEN v, GEN x)
5076    GEN    vec_shorten(GEN v, long n)
5077    GEN    vec_to_vecsmall(GEN z)
5078    GEN    vecpermute(GEN A, GEN p)
5079    GEN    vecreverse(GEN A)
5080    void   vecreverse_inplace(GEN y)
5081    GEN    vecsmallpermute(GEN A, GEN p)
5082    GEN    vecslice(GEN A, long y1, long y2)
5083    GEN    vecslicepermute(GEN A, GEN p, long y1, long y2)
5084    GEN    vecsplice(GEN a, long j)
5085    GEN    vecsmall_append(GEN V, long s)
5086    long   vecsmall_coincidence(GEN u, GEN v)
5087    GEN    vecsmall_concat(GEN u, GEN v)
5088    GEN    vecsmall_copy(GEN x)
5089    GEN    vecsmall_ei(long n, long i)
5090    long   vecsmall_indexmax(GEN x)
5091    long   vecsmall_indexmin(GEN x)
5092    long   vecsmall_isin(GEN v, long x)
5093    GEN    vecsmall_lengthen(GEN v, long n)
5094    int    vecsmall_lexcmp(GEN x, GEN y)
5095    long   vecsmall_max(GEN v)
5096    long   vecsmall_min(GEN v)
5097    long   vecsmall_pack(GEN V, long base, long mod)
5098    int    vecsmall_prefixcmp(GEN x, GEN y)
5099    GEN    vecsmall_prepend(GEN V, long s)
5100    GEN    vecsmall_reverse(GEN A)
5101    GEN    vecsmall_shorten(GEN v, long n)
5102    GEN    vecsmall_to_col(GEN z)
5103    GEN    vecsmall_to_vec(GEN z)
5104    GEN    vecsmall_to_vec_inplace(GEN z)
5105    void   vecsmalltrunc_append(GEN x, long t)
5106    GEN    vecsmalltrunc_init(long l)
5107    void   vectrunc_append(GEN x, GEN t)
5108    void   vectrunc_append_batch(GEN x, GEN y)
5109    GEN    vectrunc_init(long l)
5110    GEN    zc_to_ZC(GEN x)
5111    GEN    zero_F2m(long n, long m)
5112    GEN    zero_F2m_copy(long n, long m)
5113    GEN    zero_F2v(long m)
5114    GEN    zero_F2x(long sv)
5115    GEN    zero_Flm(long m, long n)
5116    GEN    zero_Flm_copy(long m, long n)
5117    GEN    zero_Flv(long n)
5118    GEN    zero_Flx(long sv)
5119    GEN    zero_zm(long x, long y)
5120    GEN    zero_zv(long x)
5121    GEN    zero_zx(long sv)
5122    GEN    zerocol(long n)
5123    GEN    zeromat(long m, long n)
5124    GEN    zeromatcopy(long m, long n)
5125    GEN    zeropadic(GEN p, long e)
5126    GEN    zeropadic_shallow(GEN p, long e)
5127    GEN    zeropol(long v)
5128    GEN    zeroser(long v, long e)
5129    GEN    zerovec(long n)
5130    GEN    zerovec_block(long len)
5131    GEN    zm_copy(GEN x)
5132    GEN    zm_to_zxV(GEN x, long sv)
5133    GEN    zm_transpose(GEN x)
5134    GEN    zv_copy(GEN x)
5135    GEN    zv_to_ZV(GEN x)
5136    GEN    zv_to_zx(GEN x, long sv)
5137    GEN    zx_renormalize(GEN x, long l)
5138    GEN    zx_shift(GEN x, long n)
5139    GEN    zx_to_zv(GEN x, long N)
5140
5141    GEN    err_get_compo(GEN e, long i)
5142    long   err_get_num(GEN e)
5143    void   pari_err_BUG(const char *f)
5144    void   pari_err_COMPONENT(const char *f, const char *op, GEN l, GEN x)
5145    void   pari_err_CONSTPOL(const char *f)
5146    void   pari_err_COPRIME(const char *f, GEN x, GEN y)
5147    void   pari_err_DIM(const char *f)
5148    void   pari_err_DOMAIN(const char *f, const char *v, const char *op, GEN l, GEN x)
5149    void   pari_err_FILE(const char *f, const char *g)
5150    void   pari_err_FLAG(const char *f)
5151    void   pari_err_IMPL(const char *f)
5152    void   pari_err_INV(const char *f, GEN x)
5153    void   pari_err_IRREDPOL(const char *f, GEN x)
5154    void   pari_err_MAXPRIME(ulong c)
5155    void   pari_err_MODULUS(const char *f, GEN x, GEN y)
5156    void   pari_err_OP(const char *f, GEN x, GEN y)
5157    void   pari_err_OVERFLOW(const char *f)
5158    void   pari_err_PACKAGE(const char *f)
5159    void   pari_err_PREC(const char *f)
5160    void   pari_err_PRIME(const char *f, GEN x)
5161    void   pari_err_PRIORITY(const char *f, GEN x, const char *op, long v)
5162    void   pari_err_SQRTN(const char *f, GEN x)
5163    void   pari_err_TYPE(const char *f, GEN x)
5164    void   pari_err_TYPE2(const char *f, GEN x, GEN y)
5165    void   pari_err_VAR(const char *f, GEN x, GEN y)
5166    void   pari_err_ROOTS0(const char *f)
5167
5168
5169# Work around a bug in PARI's is_universal_constant()
5170cdef inline int is_universal_constant(GEN x):
5171    return _is_universal_constant(x) or (x is err_e_STACK)
5172
5173
5174# Auto-generated declarations. There are taken from the PARI version
5175# on the system, so they more up-to-date than the above. In case of
5176# conflicting declarations, auto_paridecl should have priority.
5177from .auto_paridecl cimport *
5178
5179
5180cdef inline int is_on_stack(GEN x) except -1:
5181    """
5182    Is the GEN ``x`` stored on the PARI stack?
5183    """
5184    s = <pari_sp>x
5185    if avma <= s:
5186        return s < pari_mainstack.top
5187    if pari_mainstack.vbot <= s:
5188        raise SystemError("PARI object in unused part of PARI stack")
5189    return 0
5190