Code coverage tests

This page documents the degree to which the PARI/GP source code is tested by our public test suite, distributed with the source distribution in directory src/test/. This is measured by the gcov utility; we then process gcov output using the lcov frond-end.

We test a few variants depending on Configure flags on the pari.math.u-bordeaux.fr machine (x86_64 architecture), and agregate them in the final report:

The target is 90% coverage for all mathematical modules (given that branches depending on DEBUGLEVEL or DEBUGMEM are not covered). This script is run to produce the results below.

LCOV - code coverage report
Current view: top level - basemath - mftrace.c (source / functions) Hit Total Coverage
Test: PARI/GP v2.11.0 lcov report (development 22860-5579deb0b) Lines: 7109 7275 97.7 %
Date: 2018-07-18 05:36:42 Functions: 734 736 99.7 %
Legend: Lines: hit not hit

Function Name Sort by function name Hit count Sort by hit count
fs2_get_bitprec 0
wt1mulcond 0
Hfind 7
c_twist 7
checkbij_i 7
consttabdihedral 7
err_space 7
lfunfindchi 7
merge_dims 7
mfchiembed 7
mfdihedralall 7
mffromlfun 7
mffvanish 7
mfheckemat_mfcoefs_p2 7
mfisequal 7
mfisnotA5 7
mfisnotS4 7
mfkohneneigenbasis 7
mfmatembed 7
mfpeterssonnoncusp 7
mftocoset 7
mkS 7
nextP 7
pathmattovec 7
wt1newlevel 7
RgX_by_parity 14
RgX_isspherical 14
c_derivE2 14
dim_filter 14
findq 14
fs_set_expan 14
getcache 14
mfcanfindp0 14
mfisCM 14
mfisinkohnen 14
mfkohnenbijection 14
mfkohnenbijection_i 14
mfsearch 14
mftaylor 14
mftraceform_cusp 14
mftwist 14
mycoredisc2pos 14
unact 14
c_bracket 21
c_cusptrace 21
c_deriv 21
checkmfa 21
desc_dihedral 21
fs2_get_den 21
fs2_init 21
get_vP 21
initwt1newtrace 21
mfatkin 21
mfbracket 21
mfderivE2 21
mffindeisen1 21
mffromell 21
mfgaloistype_i 21
mfindex 21
mfkohnenbasis 21
mfkohnenbasis_i 21
mfpetersson2 21
mfunram 21
newd_params2 21
radical_u 21
anyembed 28
c_QFsimple_i 28
c_shimura 28
checkPv 28
checkemb_i 28
deg1ser_shallow 28
findqganew 28
initwt1trace 28
lfunquadneg 28
mfcharconj 28
mfcusps 28
mfderiv 28
mfeigensearch 28
mfinittonew 28
mfwt1olddimall 28
simple_pole 28
symbol_same_mf 28
u_pporad 28
c_QF_i 35
c_shift 35
desc_hecke 35
mfbd 35
mffields 35
mfheckemat_mfcoefs_p 35
mfperiodpol 35
mfs_iscusp 35
mfshimura 35
mfshimura_space_cusp 35
mftonew 35
mysqrtu 35
actal 42
hclassno6u_count 42
intAoo0 42
lfunmf 42
mf1 42
mfatkineigenvalues 42
mfdiv 42
mffromqf 42
mfmanin 42
mfs_checkmf 42
mfshift 42
mfsymbolevalpartial 42
mfval 42
search_levels 42
unpack2 42
vecembed2 42
Mindex_as_coef 49
fs_get_EF 49
mfDelta 49
mfcusps_i 49
mfembed0 49
mfgaloistype0 49
mfisdihedral 49
mfperiodpolbasis 49
mfpow 49
tag0 49
usumpow 49
RgV_approx 56
bestapprnf2 56
fs2_get_F 56
fs2_get_MF 56
fs2_get_W 56
fs2_get_al0 56
fs2_get_cusps 56
mfatkineigenquad 56
mfwt1newdimall 56
NK_eisen2 63
RgX_valrem_root 63
c_F2TH4 63
c_ell 63
constcoredisc 63
constdiv 63
mfEH 63
mfEHmat 63
mffrickeeigen 63
mfgaloistype 63
cache_report 70
constfact 70
mf2init 70
mfcharAL 70
mfcharchiliftprim 70
mfcoef 70
mffrickeeigen_i 70
mfgaexpansionatkin 70
mfsplit 70
mftrivial 70
myusqrt 70
not_in_space 70
sertocol2 70
tp2apply 70
tp2eapply 70
valNC2 70
RgV_pows_RgXn 77
c_pow 77
mfEHcoef 77
mfatkininit 77
mfheckemat 77
heckef2_data 84
findqga 91
mat2cusp 91
mflfuncreateall 91
mftraceform 91
mftraceform_i 91
mfwt1_cusptonew 91
RgV_heckef2 98
RgV_shimura 98
RgXV_embed 98
desc_linear 98
mfatkinmatnewquad 98
mfheckemat_p 98
mfsymboleval_direct 98
normal 98
polishomogeneous 98
col2cusp 105
mfcharpow 105
mfhecke 105
mfheckemat_mfcoefs 105
mflfuncreate 105
mfwt1dims 105
mfpetersson 112
mfstabiter 112
mfstabitermodp 112
paramconst 112
Tpmat 119
dim_sum 119
intAoowithvanall 119
mfcharinv_i 119
mfwt1dimmodp 119
Haberland 126
checkNK 126
consttabh 126
mfpetersson_i 126
RgX_act_gen 133
c_etaquo 133
mfgaexpansionall 133
c_const 140
c_mfEH 140
mfcheapeisen 140
mfcosets 140
mfeigenembed 140
mffrometaquo 140
mfgetvan 140
mfperiodpols_i 140
mfsymbol_i 140
mfsymboleval 140
mintau 140
symbol_type 140
MF_get_r 147
lfunthetaall 147
matdeflate 147
mfsymbol 147
nfcontent 147
ZX_roots 154
cxredga0N 154
mfeigenbasis 154
mfeval 154
mfeval_i 154
mfcuspwidth 161
zero_at_cusp 161
mfatkininit_i 168
getcolswt2 175
mfconductor 175
myimag_i 175
AX_B 182
CX_D 182
act_GL2 182
checkfs2_i 182
val 182
atkin_get_NQ 189
get_P 189
mfEk 189
mfisinspace_i 189
rootspowers 189
mfcuspval 196
mfiscuspidal 196
mf2basis 210
mf2init_Nkchi 210
mfak_i 210
mfintereis 210
mycore 210
findd 217
mfintereismodp 217
c_div 224
c_div_i 224
nf_primpart 224
sertovecslice 224
QabM_to_Flm 231
mfeisensteindim 231
mf2gaexpansion 238
mfthetaexpansion 238
mfthetamultiplier 238
pol_red 238
MF_set_space 245
mfperiod_prelim 245
mfwtkdimsum 252
RgV_div_RgXn 259
bdexpandall 259
mfeisenstein 259
mfeisenstein_i 259
vecmflineardiv_linear 259
mf_get_r 266
vecmflineardiv0 266
RgX_embedall 273
mftonew_i 280
split 280
mfspace 287
mfspace_i 287
van_embedall 287
cmp_ord 294
get_sh 294
getcolsgen 301
mflinear_i 301
mfwt1cuspdim 301
mf_setfield 308
mfbasis 308
unpack23 308
cache_reset 315
mfcuspisregular 315
cache_set 322
mfolddim 322
RgC_embedall 329
mftobasisES 329
mfvec_first_cusp 329
QabX_to_Flx 336
hclassno6u_2 336
mflineardivtomat 336
mfmul 336
mfmultheta 336
evalcusp 343
cusp_canon 357
get_mf_F 357
mffindrootof1 357
MF_get_fields 385
vanembed 399
MF_get_newforms 406
anextract 406
seenD 413
c_hecke 434
vecembed1 434
QabM_Minv 441
mfeisensteinspaceinit 441
mfmatsermul_Fl 441
mkM 441
c_delta 455
eta3_ZXn 455
mflinear_bhn 462
charsmodN 469
mfeisensteinspaceinit_i 469
mfwt1olddimsum 469
MFcusp_get_vMjd 476
tobasis 476
desc_mfeisen 504
mfTheta 504
mflinear 504
sqrtm3modN 504
cusp2mat 511
c_mul 518
fs_get_bitprec 518
mfgetembed 518
polabstorel 518
RgX_embed2 532
mfsturm 532
zncharsG 532
const_mat 560
sqrtm1modN 567
QabM_init 588
vecGalois 609
mfEMPTYall 616
mfbd_E2 616
desc 623
c_Ek 658
checkfs_i 658
grootsof1_CHI 665
mffulldim 686
mf2dimwt32 693
hecke_i 700
mfparams 700
mfthetaancreate 700
fs_get_vES 707
ZabM_pseudoinv_i 721
mfeisensteinbasis_i 728
c_newtrace 749
mfeisensteinbasis 756
mfclean2 798
getembed 805
mfcuspcanon_width 805
mftobasis 805
lfuntag 812
intAoo 819
mfcoefsser 819
mf_eisendec 826
mfeisensteindec 826
mfmatsermul 833
mfnewmathecke_p 833
update_Mj 833
mfspclean 847
sort_by_dim 847
split_starting_space 847
mf_same_CHI 854
RgX_embed1 861
mfslashexpansion 875
mftraceform_new 882
search_from_split 882
mfgaexpansion_i 889
shift_M 889
mf_same_k 896
vecpush 903
GL2toSL2 917
mkF2bd 924
mfEMPTY 931
findbestsplit 938
znstar_get_expo 938
mynffactor 945
mfdescribe 966
Minv_RgM_mul 973
cusp_AC 973
mflinear_linear 980
mflineardiv_linear 980
ZM_mulS 994
vecmflinear 994
c_linear_bhn 1001
mfcharmul 1001
fs_get_vE 1015
QabM_pseudoinv 1029
mfperiod_prelim_double 1036
unpack0 1043
vecpermute_partial 1043
mftobasis_i 1050
mfwt1newdimsum 1050
mfvectomat 1064
mfchilift 1071
mfistrivial 1078
mflinear_strip 1078
MF_get_basis 1099
vecpermute_inplace 1106
mygmodulo 1113
fs_get_MF 1120
MF_set_new 1148
mf_normalize 1162
split_i 1183
mfeisenstein2all 1218
split_ii 1239
getcols 1267
mfvecembed 1274
RgX_act_S 1281
QabM_ker 1288
charLFwt1_Fl 1323
fs_get_pols 1323
mfdim_Nkchi 1386
charLFwtk 1400
non_residues 1400
c_theta 1428
taglinear 1442
mfgaexpansion 1456
check_SL2Z 1463
fs_get_expan 1505
bestapprnfrel 1519
desc_i 1540
RgV_normalize 1561
condC 1568
RgX_embed 1575
mfchisimpl 1582
pari_close_mf 1595
charLFwt1 1624
mfwt1chars 1708
mfqk 1715
mfdiv_val 1722
mfwt1_pre 1722
fs_get_cosets 1764
update_factor_cache 1885
getnlim2 1911
getw1w2 1911
mfsturmNgk 1925
act_S 1932
ZM_mulTi 1974
vecmfNK 1974
charLFwtk_Fl 1988
mfcoefs_mf 1988
RgM_Minv_mul 2002
RgX_act_typ 2114
mfwt1dimsum 2114
normalizeapprox 2114
mfinit 2135
toRgX0 2163
mfchiadjust 2198
MF_get_Minv 2247
mftreatdihedral 2282
abundant 2317
check_M2Z 2380
c_linear 2387
mfinit_Nndkchi 2422
ok_bhn_linear 2436
mfskcx 2492
mynumdivu 2709
mfinitcusp 2884
checkMF 2947
RgV_mul_RgXn 2954
mfsturm_mf 2961
mfwtkdims 2961
mfsamefield 3003
mfdim0all 3010
mfinit_i 3087
sertocol 3136
mfcoefs 3248
mfchars 3255
getcols_i 3290
mfeisenstein2_0_Fl 3290
mfeisenstein2pure_Fl 3290
lamCO 3360
mfdihedralcusp 3381
MF_get_dim 3409
mfcleanCHI 3409
MF_get_E 3451
mfwt1init 3465
c_dihedral 3591
ZM_mulT 3682
dim22 3696
zeta2CO 3696
c_Bd 3780
f00 3836
get_mfchar 3850
RgV_to_ser_full 3892
mfchartrivial 3899
mftocol 3969
fmt_dim 3983
gmfcharno 3983
QabV_tracerel 4081
taglinear_i 4102
mfwt1cuspdimsum 4123
mfwt1cuspdimall 4144
mfclean 4200
mfchardiv 4214
mfchardiv_i 4214
expandbd 4319
mfeisenstein2pure 4319
RgV_shift 4403
vecj_expand 4403
mfalchi2 4410
mfcharmulcxeval 4410
mfeisensteingacx 4410
mfgatogap 4410
mfinit_Nkchi 4501
f00_i 4599
mkeisen 4676
bdexpand 4767
mfchargalois 4851
Rg_embedall_i 4907
bhnmat_extend_nocache 5117
Minv_RgC_mul 5138
space_is_cusp 5194
char2 5215
expandbd_Fl 5222
mfbdall 5446
mfchareval_i 5523
MF_get_k 5537
mfeisenstein2_0 5600
MF_get_M 5698
mfdim 5719
c_mfeisen 5733
improve 5740
c_deflate 5775
dihan_bnf 6097
mubeta 6111
cache_delete 6380
MFnew_get_vj 6447
mkMinv 6580
MF_get_CHI 6601
badchar 6643
hash_eisengacx 6776
get_badj 6839
m1pk 6888
mfdihedralcuspdim 7014
MF_get_Mindex 7063
bhnmat_extend 7098
mfwt1cuspdim_i 7140
Rg_approx 7147
ceilA1 7224
SL2_div_D 7259
mftocoset_iD 7259
mfolddim_i 7371
mfZC_width 7378
mftocoset_i 7413
mfcharcxeval 7518
mfdihedralnew 7665
parse_vecj 7798
mfcharistrivial 8253
tag 8638
mfcharmuleval 8820
checkCHI 8925
checkNK2 8932
nu3 9233
append_dihedral 9289
QabM_indexrank 9331
coset_complete 9534
QabC_to_Flc 9807
init_cachenew 9814
Wcomputecoshall 10304
Wcomputeparams 10304
Wint 10304
dihan 10465
mfwt1basis 10605
MF_get_space 10661
mkmf 11018
mfconreyminimize 11151
gausssumcx 11312
mfcharcxinit 11312
MF_get_gk 11333
CHIvec_CHI 11564
tag3 11613
mkNK 12257
mfcharno 12453
Rg_embed2 13314
cyc_normalize_zv 13391
mklvchi 13391
bhn_newtrace 13608
charistotallyeven 13846
hecke_data 13944
mfnewinit 14140
mfnewdim 14378
dbg_cachenew 14546
checkmf_i 14616
mf_get_NK 15239
MF_get_N 15302
mfdihedralnewdim 15764
wt1empty 15932
MF_get_gN 15988
nu2 16058
mfcharinduce 16212
checkMF_i 16247
MF_get_S 16429
mysumdivku 16464
mfdihedralcommon 16835
bnrchartwist2conrey 17206
conreydenormalize 17206
mf_get_field 17346
mybezout 17640
Qab_trace_init 17983
dihan_bnr 20391
mfhecke_i 20503
di_N 21021
mfcoefs_i 21427
sigchi 22162
mfdihedralnew_i 23429
initnewtrace_i 24885
inittrconj 24885
mfcharinit 24892
initnewtrace 24920
mfnewzerodata 24920
Galois 25711
newtrace_DATA 25767
newtrace_stripped 25767
reset_cachenew 25767
mfbd_i 26810
cmp_coset 26915
tag2 27160
mkgNK 27405
mfcharorder_canon 27608
mfsturmNk 28903
mf_get_CHI 29274
CHIvec_ord 32403
newd_params 32725
nuinf 35658
CHIvec_parity 37338
mfcuspdim 39214
A4 39263
A21 39599
A22 39599
A3 39998
mf2dimwt12 41363
Miyake 41769
induceN 42441
phipart 42651
mf2dim_Nkchi 43463
checkmf2 43673
mfdim_Nndkchi 44744
mf_get_k 45710
tagparams 47572
sigchi2_Fl 47957
tracerel_i 48286
RgC_Bd_expand 52017
bhn_parse 52017
char_normalize_zv 58975
heckenewtrace 61887
Rg_embed1 62006
cmp_small_priority 62657
mfchartoprimitive 63434
VS 63742
Whalfint 63742
mfcharparity 65359
mf_get_N 66549
Unelsonhalf 71932
WfromZ 74046
mfdiheval 77385
tracerelz 77385
mymoebiusu 77476
mf_get_gk 81592
Rg_embedall 90446
mf_get_gN 94213
mfembed 95794
inittrace 98763
mkbez 98763
mkgcd 98763
mkmup 98763
mksqr 98763
ceildiv 104517
myeulerphiu 106106
colnewtrace 107912
cmp_small 112217
mf_get_type 128471
sigchi2 150871
fix_pol 154392
hclassno6u 155745
mygmodulo_Fl 171437
mfcharpol 183505
sigchi2_dec 198828
trconj 201579
A1 225764
mypsiu 264383
div_restrict 287112
get_PSI 299775
mfcharmul_i 301854
mfrhopol 305445
induce 306593
vchip_lift 332388
CHIvec_expo 333410
mycharexpo 333410
mfcharGL 368830
mfcharconductor 391279
fg1g2n 447062
ord_canon 448245
znchareval_i 450408
Qab_to_Fl 480361
gmfcharmodulus 591941
mfcharmodulus 591941
mygmodulo_lift 613368
mfcharevalord 781417
mfcharorder 882805
gmfcharorder 913115
newt_params 931721
vchip_polmod 964537
mfnewchkzero 1277668
mfnewtrace_i 1277668
ZXrecip_u_eval 1917552
mfnewtracecache 2201416
TA1 3062101
TA2 3062101
TA3 3062101
TA4 3062101
mfcusptrace_i 3062101
vchip_mod 3225670
mfcusptracecache 4094608
mubeta2 4094608
myh 4788693
eiscnm 5688536
corediscs_fact 7553259
lamsig 9517628
mutglistall 9652818
auxsum 12033756
myfactoru 15330301
mychareval 19428528
CHIvec_val 19441555
CHIvec_N 19943840
hclassno6u_i 35546532
mutg1 37577743
mydivisorsu 37652433
mfrhopowsimp 40851048
mycoredisc2neg 47230911
vchip_FC 78766114
myugcd 93268364
mychicgcd 126055307
cache_get 140728464

Generated by: LCOV version 1.13