Coverage report: 80%

Files Functions Classes

coverage.py v7.11.0, created at 2026-01-07 08:10 +0100

File function statements missing excluded coverage
src\pqlattice\__init__.py (no function) 4 0 0 100%
src\pqlattice\_utils.py as_integer 1 0 0 100%
src\pqlattice\_utils.py as_rational 1 0 0 100%
src\pqlattice\_utils.py (no function) 7 0 0 100%
src\pqlattice\integer\__init__.py (no function) 5 0 0 100%
src\pqlattice\integer\_integer.py eea 0 0 1 100%
src\pqlattice\integer\_integer.py eea 0 0 1 100%
src\pqlattice\integer\_integer.py eea 3 1 0 67%
src\pqlattice\integer\_integer.py _eea 16 0 0 100%
src\pqlattice\integer\_integer.py (no function) 5 0 6 100%
src\pqlattice\integer\_modintring.py ModIntRing.__init__ 3 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.q 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.is_zero 1 1 0 0%
src\pqlattice\integer\_modintring.py ModIntRing.mod 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.mod 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.mod 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.pow 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.pow 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.pow 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.inv 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.inv 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.inv 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.neg 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.neg 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.neg 1 1 0 0%
src\pqlattice\integer\_modintring.py ModIntRing.add 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.mul 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.div 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.sub 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.cmodl 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.cmodl 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.cmodl 1 0 0 100%
src\pqlattice\integer\_modintring.py ModIntRing.cmodr 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.cmodr 0 0 1 100%
src\pqlattice\integer\_modintring.py ModIntRing.cmodr 1 0 0 100%
src\pqlattice\integer\_modintring.py (no function) 18 0 24 100%
src\pqlattice\integer\_modring.py mod 0 0 1 100%
src\pqlattice\integer\_modring.py mod 0 0 1 100%
src\pqlattice\integer\_modring.py mod 1 0 0 100%
src\pqlattice\integer\_modring.py cmodl 0 0 1 100%
src\pqlattice\integer\_modring.py cmodl 0 0 1 100%
src\pqlattice\integer\_modring.py cmodl 1 0 0 100%
src\pqlattice\integer\_modring.py cmodr 0 0 1 100%
src\pqlattice\integer\_modring.py cmodr 0 0 1 100%
src\pqlattice\integer\_modring.py cmodr 1 0 0 100%
src\pqlattice\integer\_modring.py modinv 0 0 1 100%
src\pqlattice\integer\_modring.py modinv 0 0 1 100%
src\pqlattice\integer\_modring.py modinv 6 0 0 100%
src\pqlattice\integer\_modring.py modpow 0 0 1 100%
src\pqlattice\integer\_modring.py modpow 0 0 1 100%
src\pqlattice\integer\_modring.py modpow 9 0 0 100%
src\pqlattice\integer\_modring.py (no function) 8 0 30 100%
src\pqlattice\integer\_primality.py fermat_primality_test 9 7 0 22%
src\pqlattice\integer\_primality.py miller_rabin_primality_test 18 1 0 94%
src\pqlattice\integer\_primality.py is_prime 8 0 0 100%
src\pqlattice\integer\_primality.py (no function) 9 0 0 100%
src\pqlattice\integer\_primes.py (no function) 1 0 0 100%
src\pqlattice\lattice\__init__.py (no function) 9 0 0 100%
src\pqlattice\lattice\_bkz.py update_block 10 1 0 90%
src\pqlattice\lattice\_bkz.py bkz 29 0 0 100%
src\pqlattice\lattice\_bkz.py (no function) 9 0 0 100%
src\pqlattice\lattice\_cvp.py schnorr_euchner_cvp 1 1 0 0%
src\pqlattice\lattice\_cvp.py closest_vector 1 1 0 0%
src\pqlattice\lattice\_cvp.py babai_nearest_plane 8 8 0 0%
src\pqlattice\lattice\_cvp.py babai_closest_vector 1 1 0 0%
src\pqlattice\lattice\_cvp.py (no function) 13 0 0 100%
src\pqlattice\lattice\_embeddings.py q_ary_lattice_basis 1 1 0 0%
src\pqlattice\lattice\_embeddings.py dual_q_ary_lattice_basis 1 1 0 0%
src\pqlattice\lattice\_embeddings.py bai_galbraith 1 1 0 0%
src\pqlattice\lattice\_embeddings.py kannan 1 1 0 0%
src\pqlattice\lattice\_embeddings.py subset_sum 1 1 0 0%
src\pqlattice\lattice\_embeddings.py ntru 1 1 0 0%
src\pqlattice\lattice\_embeddings.py (no function) 13 0 0 100%
src\pqlattice\lattice\_gso.py project_coeffs 3 0 0 100%
src\pqlattice\lattice\_gso.py gso 9 0 0 100%
src\pqlattice\lattice\_gso.py (no function) 8 0 0 100%
src\pqlattice\lattice\_hkz.py hkz 1 0 0 100%
src\pqlattice\lattice\_hkz.py (no function) 5 0 0 100%
src\pqlattice\lattice\_lattice.py volume 1 0 0 100%
src\pqlattice\lattice\_lattice.py rank 1 0 0 100%
src\pqlattice\lattice\_lattice.py discriminant 2 0 0 100%
src\pqlattice\lattice\_lattice.py hadamard_ratio 1 0 0 100%
src\pqlattice\lattice\_lattice.py gaussian_heuristic 2 0 0 100%
src\pqlattice\lattice\_lattice.py glr_2dim 16 2 0 88%
src\pqlattice\lattice\_lattice.py (no function) 19 0 0 100%
src\pqlattice\lattice\_lll.py lll 20 0 0 100%
src\pqlattice\lattice\_lll.py is_size_reduced 2 2 0 0%
src\pqlattice\lattice\_lll.py lovasz_condition 5 5 0 0%
src\pqlattice\lattice\_lll.py is_lll_reduced 1 1 0 0%
src\pqlattice\lattice\_lll.py (no function) 13 0 0 100%
src\pqlattice\lattice\_svp.py schnorr_euchner_svp 43 0 0 100%
src\pqlattice\lattice\_svp.py shortest_vector 6 0 0 100%
src\pqlattice\lattice\_svp.py (no function) 9 0 0 100%
src\pqlattice\lattice\embeddings.py (no function) 2 0 0 100%
src\pqlattice\linalg\__init__.py (no function) 4 0 0 100%
src\pqlattice\linalg\_linalg.py hnf 2 0 0 100%
src\pqlattice\linalg\_linalg.py _hnf 36 0 0 100%
src\pqlattice\linalg\_linalg.py left_kernel 1 0 0 100%
src\pqlattice\linalg\_linalg.py right_kernel 7 0 0 100%
src\pqlattice\linalg\_linalg.py left_nullity 2 0 0 100%
src\pqlattice\linalg\_linalg.py right_nullity 2 0 0 100%
src\pqlattice\linalg\_linalg.py rank 5 0 0 100%
src\pqlattice\linalg\_linalg.py det 2 0 0 100%
src\pqlattice\linalg\_linalg.py minor 1 1 0 0%
src\pqlattice\linalg\_linalg.py cofactor 1 1 0 0%
src\pqlattice\linalg\_linalg.py cofactor_matrix 6 6 0 0%
src\pqlattice\linalg\_linalg.py (no function) 25 0 0 100%
src\pqlattice\linalg\_modint.py mod_ref 26 26 0 0%
src\pqlattice\linalg\_modint.py mod_rref 15 15 0 0%
src\pqlattice\linalg\_modint.py mod_left_kernel 1 1 0 0%
src\pqlattice\linalg\_modint.py mod_right_kernel 7 7 0 0%
src\pqlattice\linalg\_modint.py mod_left_nullity 2 2 0 0%
src\pqlattice\linalg\_modint.py mod_right_nullity 2 2 0 0%
src\pqlattice\linalg\_modint.py mod_matinv 4 4 0 0%
src\pqlattice\linalg\_modint.py (no function) 19 0 0 100%
src\pqlattice\linalg\_utils.py row_swap 1 0 0 100%
src\pqlattice\linalg\_utils.py row_scale 1 0 0 100%
src\pqlattice\linalg\_utils.py row_add 1 0 0 100%
src\pqlattice\linalg\_utils.py col_swap 1 0 0 100%
src\pqlattice\linalg\_utils.py col_scale 1 0 0 100%
src\pqlattice\linalg\_utils.py col_add 1 0 0 100%
src\pqlattice\linalg\_utils.py norm2 1 0 0 100%
src\pqlattice\linalg\_utils.py norm 1 1 0 0%
src\pqlattice\linalg\_utils.py per_row_norm2 1 0 0 100%
src\pqlattice\linalg\_utils.py per_row_norm 1 0 0 100%
src\pqlattice\linalg\_utils.py (no function) 18 0 0 100%
src\pqlattice\polynomial\__init__.py (no function) 4 0 0 100%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.__init__ 3 0 0 100%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.quotient 1 1 0 0%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.reduce 1 0 0 100%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.add 1 1 0 0%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.sub 1 0 0 100%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.mul 1 1 0 0%
src\pqlattice\polynomial\_modpolyqring.py ModIntPolyQuotientRing.inv 5 5 0 0%
src\pqlattice\polynomial\_modpolyqring.py construct_ring 13 4 0 69%
src\pqlattice\polynomial\_modpolyqring.py (no function) 20 0 0 100%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.__init__ 3 1 0 67%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.reduce 1 0 0 100%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.is_zero 1 0 0 100%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.deg 1 0 0 100%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.add 1 1 0 0%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.sub 1 0 0 100%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.mul 1 1 0 0%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.euclidean_div 11 4 0 64%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.rem 2 0 0 100%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.to_monic 2 2 0 0%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.gcd 7 7 0 0%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.eea 9 9 0 0%
src\pqlattice\polynomial\_modpolyring.py ModIntPolyRing.coprime 1 1 0 0%
src\pqlattice\polynomial\_modpolyring.py (no function) 25 0 0 100%
src\pqlattice\polynomial\_poly.py make_poly 4 1 0 75%
src\pqlattice\polynomial\_poly.py is_zero_poly 3 0 0 100%
src\pqlattice\polynomial\_poly.py deg 6 1 0 83%
src\pqlattice\polynomial\_poly.py pad 6 2 0 67%
src\pqlattice\polynomial\_poly.py trim 3 0 0 100%
src\pqlattice\polynomial\_poly.py add 2 2 0 0%
src\pqlattice\polynomial\_poly.py sub 2 0 0 100%
src\pqlattice\polynomial\_poly.py mul 1 1 0 0%
src\pqlattice\polynomial\_poly.py monomial 5 5 0 0%
src\pqlattice\polynomial\_poly.py zero_poly 3 1 0 67%
src\pqlattice\polynomial\_poly.py (no function) 23 0 0 100%
src\pqlattice\polynomial\poly.py (no function) 2 0 0 100%
src\pqlattice\random\__init__.py (no function) 6 0 0 100%
src\pqlattice\random\_distribution.py Uniform.__init__ 3 0 0 100%
src\pqlattice\random\_distribution.py Uniform.sample_int 2 0 0 100%
src\pqlattice\random\_distribution.py Uniform.sample_vector 2 0 0 100%
src\pqlattice\random\_distribution.py Uniform.sample_matrix 4 0 0 100%
src\pqlattice\random\_distribution.py Uniform.set_seed 2 1 0 50%
src\pqlattice\random\_distribution.py Uniform.set_params 6 6 0 0%
src\pqlattice\random\_distribution.py Uniform.get_params 1 1 0 0%
src\pqlattice\random\_distribution.py DiscreteGaussian.__init__ 6 0 0 100%
src\pqlattice\random\_distribution.py DiscreteGaussian._recompute_table 4 0 0 100%
src\pqlattice\random\_distribution.py DiscreteGaussian.set_seed 2 1 0 50%
src\pqlattice\random\_distribution.py DiscreteGaussian.sample_int 4 1 0 75%
src\pqlattice\random\_distribution.py DiscreteGaussian.sample_vector 2 0 0 100%
src\pqlattice\random\_distribution.py DiscreteGaussian.sample_matrix 4 0 0 100%
src\pqlattice\random\_distribution.py DiscreteGaussian.set_params 10 10 0 0%
src\pqlattice\random\_distribution.py DiscreteGaussian.get_params 1 1 0 0%
src\pqlattice\random\_distribution.py DiscreteGaussian._sample_centered_fast 7 1 0 86%
src\pqlattice\random\_distribution.py DiscreteGaussian._sample_dynamic_rejection 10 10 0 0%
src\pqlattice\random\_distribution.py (no function) 23 0 0 100%
src\pqlattice\random\_lattice.py randlattice 1 1 0 0%
src\pqlattice\random\_lattice.py (no function) 2 0 0 100%
src\pqlattice\random\_lwe.py LWE.__init__ 1 1 0 0%
src\pqlattice\random\_lwe.py LWE.__call__ 0 0 1 100%
src\pqlattice\random\_lwe.py LWE.__call__ 0 0 1 100%
src\pqlattice\random\_lwe.py LWE.__call__ 1 1 0 0%
src\pqlattice\random\_lwe.py (no function) 5 0 4 100%
src\pqlattice\random\_lwr.py LWR.__init__ 1 1 0 0%
src\pqlattice\random\_lwr.py LWR.__call__ 0 0 1 100%
src\pqlattice\random\_lwr.py LWR.__call__ 0 0 1 100%
src\pqlattice\random\_lwr.py LWR.__call__ 1 1 0 0%
src\pqlattice\random\_lwr.py (no function) 5 0 4 100%
src\pqlattice\random\_prime.py _randprime 19 1 0 95%
src\pqlattice\random\_prime.py _randprime.ilog 1 0 0 100%
src\pqlattice\random\_prime.py randprime 3 0 0 100%
src\pqlattice\random\_prime.py (no function) 5 0 0 100%
src\pqlattice\random\distribution.py (no function) 2 0 0 100%
src\pqlattice\typing\__init__.py (no function) 3 0 0 100%
src\pqlattice\typing\_types.py (no function) 6 0 0 100%
src\pqlattice\typing\_types_validator.py _is_nparray 1 0 0 100%
src\pqlattice\typing\_types_validator.py is_Vector 1 0 0 100%
src\pqlattice\typing\_types_validator.py is_Matrix 1 0 0 100%
src\pqlattice\typing\_types_validator.py is_SquareMatrix 1 0 0 100%
src\pqlattice\typing\_types_validator.py _get_predicate_for_alias 7 0 0 100%
src\pqlattice\typing\_types_validator.py validate_aliases 2 0 0 100%
src\pqlattice\typing\_types_validator.py validate_aliases.wrapper 9 0 0 100%
src\pqlattice\typing\_types_validator.py (no function) 14 0 0 100%
Total   980 194 96 80%

No items found using the specified filter.