passagemath-flint 10.6.1rc10__cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (361) hide show
  1. passagemath_flint-10.6.1rc10.dist-info/METADATA +122 -0
  2. passagemath_flint-10.6.1rc10.dist-info/RECORD +361 -0
  3. passagemath_flint-10.6.1rc10.dist-info/WHEEL +6 -0
  4. passagemath_flint-10.6.1rc10.dist-info/top_level.txt +2 -0
  5. passagemath_flint.libs/libflint-aecb9cc5.so.21.0.0 +0 -0
  6. passagemath_flint.libs/libgf2x-a4cdec90.so.3.0.0 +0 -0
  7. passagemath_flint.libs/libgfortran-8f1e9814.so.5.0.0 +0 -0
  8. passagemath_flint.libs/libgmp-6e109695.so.10.5.0 +0 -0
  9. passagemath_flint.libs/libgsl-cda90e79.so.28.0.0 +0 -0
  10. passagemath_flint.libs/libmpfi-e3c25853.so.0.0.0 +0 -0
  11. passagemath_flint.libs/libmpfr-82690d50.so.6.2.1 +0 -0
  12. passagemath_flint.libs/libntl-74e7d9a3.so.44.0.1 +0 -0
  13. passagemath_flint.libs/libopenblasp-r0-6dcb67f9.3.29.so +0 -0
  14. passagemath_flint.libs/libquadmath-828275a7.so.0.0.0 +0 -0
  15. sage/all__sagemath_flint.py +29 -0
  16. sage/combinat/all__sagemath_flint.py +1 -0
  17. sage/combinat/posets/all__sagemath_flint.py +1 -0
  18. sage/combinat/posets/hasse_cython_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  19. sage/combinat/posets/hasse_cython_flint.pyx +194 -0
  20. sage/data_structures/all__sagemath_flint.py +1 -0
  21. sage/data_structures/bounded_integer_sequences.cpython-312-x86_64-linux-gnu.so +0 -0
  22. sage/data_structures/bounded_integer_sequences.pxd +62 -0
  23. sage/data_structures/bounded_integer_sequences.pyx +1418 -0
  24. sage/graphs/all__sagemath_flint.py +1 -0
  25. sage/graphs/chrompoly.cpython-312-x86_64-linux-gnu.so +0 -0
  26. sage/graphs/chrompoly.pyx +555 -0
  27. sage/graphs/matchpoly.cpython-312-x86_64-linux-gnu.so +0 -0
  28. sage/graphs/matchpoly.pyx +412 -0
  29. sage/libs/all__sagemath_flint.py +17 -0
  30. sage/libs/arb/__init__.py +1 -0
  31. sage/libs/arb/acb.pxd +154 -0
  32. sage/libs/arb/acb_calc.pxd +9 -0
  33. sage/libs/arb/acb_elliptic.pxd +25 -0
  34. sage/libs/arb/acb_hypgeom.pxd +74 -0
  35. sage/libs/arb/acb_mat.pxd +62 -0
  36. sage/libs/arb/acb_modular.pxd +17 -0
  37. sage/libs/arb/acb_poly.pxd +216 -0
  38. sage/libs/arb/arb.pxd +240 -0
  39. sage/libs/arb/arb_fmpz_poly.pxd +21 -0
  40. sage/libs/arb/arb_hypgeom.pxd +83 -0
  41. sage/libs/arb/arb_wrap.h +34 -0
  42. sage/libs/arb/arf.pxd +131 -0
  43. sage/libs/arb/arith.cpython-312-x86_64-linux-gnu.so +0 -0
  44. sage/libs/arb/arith.pyx +87 -0
  45. sage/libs/arb/bernoulli.pxd +6 -0
  46. sage/libs/arb/mag.pxd +77 -0
  47. sage/libs/arb/types.pxd +37 -0
  48. sage/libs/flint/__init__.py +1 -0
  49. sage/libs/flint/acb.pxd +270 -0
  50. sage/libs/flint/acb_calc.pxd +22 -0
  51. sage/libs/flint/acb_dft.pxd +51 -0
  52. sage/libs/flint/acb_dirichlet.pxd +112 -0
  53. sage/libs/flint/acb_elliptic.pxd +42 -0
  54. sage/libs/flint/acb_hypgeom.pxd +169 -0
  55. sage/libs/flint/acb_macros.pxd +9 -0
  56. sage/libs/flint/acb_mat.pxd +136 -0
  57. sage/libs/flint/acb_mat_macros.pxd +10 -0
  58. sage/libs/flint/acb_modular.pxd +62 -0
  59. sage/libs/flint/acb_poly.pxd +251 -0
  60. sage/libs/flint/acb_poly_macros.pxd +8 -0
  61. sage/libs/flint/acb_theta.pxd +124 -0
  62. sage/libs/flint/acf.pxd +32 -0
  63. sage/libs/flint/aprcl.pxd +84 -0
  64. sage/libs/flint/arb.pxd +382 -0
  65. sage/libs/flint/arb_calc.pxd +31 -0
  66. sage/libs/flint/arb_fmpz_poly.pxd +34 -0
  67. sage/libs/flint/arb_fpwrap.pxd +215 -0
  68. sage/libs/flint/arb_hypgeom.pxd +147 -0
  69. sage/libs/flint/arb_macros.pxd +9 -0
  70. sage/libs/flint/arb_mat.pxd +140 -0
  71. sage/libs/flint/arb_mat_macros.pxd +10 -0
  72. sage/libs/flint/arb_poly.pxd +237 -0
  73. sage/libs/flint/arf.pxd +167 -0
  74. sage/libs/flint/arith.cpython-312-x86_64-linux-gnu.so +0 -0
  75. sage/libs/flint/arith.pxd +76 -0
  76. sage/libs/flint/arith.pyx +77 -0
  77. sage/libs/flint/arith_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  78. sage/libs/flint/arith_sage.pyx +308 -0
  79. sage/libs/flint/bernoulli.pxd +28 -0
  80. sage/libs/flint/bool_mat.pxd +52 -0
  81. sage/libs/flint/ca.pxd +203 -0
  82. sage/libs/flint/ca_ext.pxd +34 -0
  83. sage/libs/flint/ca_field.pxd +32 -0
  84. sage/libs/flint/ca_mat.pxd +117 -0
  85. sage/libs/flint/ca_poly.pxd +104 -0
  86. sage/libs/flint/ca_vec.pxd +46 -0
  87. sage/libs/flint/calcium.pxd +27 -0
  88. sage/libs/flint/d_mat.pxd +39 -0
  89. sage/libs/flint/d_vec.pxd +32 -0
  90. sage/libs/flint/dirichlet.pxd +57 -0
  91. sage/libs/flint/dlog.pxd +53 -0
  92. sage/libs/flint/double_extras.pxd +24 -0
  93. sage/libs/flint/double_interval.pxd +36 -0
  94. sage/libs/flint/fexpr.pxd +104 -0
  95. sage/libs/flint/fexpr_builtin.pxd +20 -0
  96. sage/libs/flint/fft.pxd +66 -0
  97. sage/libs/flint/flint.pxd +36 -0
  98. sage/libs/flint/flint_ntl_wrap.h +35 -0
  99. sage/libs/flint/flint_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  100. sage/libs/flint/flint_sage.pyx +163 -0
  101. sage/libs/flint/flint_wrap.h +190 -0
  102. sage/libs/flint/fmpq.pxd +137 -0
  103. sage/libs/flint/fmpq_mat.pxd +105 -0
  104. sage/libs/flint/fmpq_mat_macros.pxd +10 -0
  105. sage/libs/flint/fmpq_mpoly.pxd +165 -0
  106. sage/libs/flint/fmpq_mpoly_factor.pxd +30 -0
  107. sage/libs/flint/fmpq_poly.pxd +241 -0
  108. sage/libs/flint/fmpq_poly_macros.pxd +9 -0
  109. sage/libs/flint/fmpq_poly_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  110. sage/libs/flint/fmpq_poly_sage.pxd +31 -0
  111. sage/libs/flint/fmpq_poly_sage.pyx +48 -0
  112. sage/libs/flint/fmpq_vec.pxd +27 -0
  113. sage/libs/flint/fmpz.pxd +256 -0
  114. sage/libs/flint/fmpz_extras.pxd +32 -0
  115. sage/libs/flint/fmpz_factor.pxd +42 -0
  116. sage/libs/flint/fmpz_factor_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  117. sage/libs/flint/fmpz_factor_sage.pxd +4 -0
  118. sage/libs/flint/fmpz_factor_sage.pyx +29 -0
  119. sage/libs/flint/fmpz_lll.pxd +49 -0
  120. sage/libs/flint/fmpz_macros.pxd +8 -0
  121. sage/libs/flint/fmpz_mat.pxd +184 -0
  122. sage/libs/flint/fmpz_mat_macros.pxd +10 -0
  123. sage/libs/flint/fmpz_mod.pxd +46 -0
  124. sage/libs/flint/fmpz_mod_mat.pxd +71 -0
  125. sage/libs/flint/fmpz_mod_mpoly.pxd +161 -0
  126. sage/libs/flint/fmpz_mod_mpoly_factor.pxd +28 -0
  127. sage/libs/flint/fmpz_mod_poly.pxd +249 -0
  128. sage/libs/flint/fmpz_mod_poly_factor.pxd +46 -0
  129. sage/libs/flint/fmpz_mod_vec.pxd +27 -0
  130. sage/libs/flint/fmpz_mpoly.pxd +224 -0
  131. sage/libs/flint/fmpz_mpoly_factor.pxd +29 -0
  132. sage/libs/flint/fmpz_mpoly_q.pxd +57 -0
  133. sage/libs/flint/fmpz_poly.cpython-312-x86_64-linux-gnu.so +0 -0
  134. sage/libs/flint/fmpz_poly.pxd +407 -0
  135. sage/libs/flint/fmpz_poly.pyx +19 -0
  136. sage/libs/flint/fmpz_poly_factor.pxd +33 -0
  137. sage/libs/flint/fmpz_poly_macros.pxd +8 -0
  138. sage/libs/flint/fmpz_poly_mat.pxd +71 -0
  139. sage/libs/flint/fmpz_poly_q.pxd +55 -0
  140. sage/libs/flint/fmpz_poly_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  141. sage/libs/flint/fmpz_poly_sage.pxd +20 -0
  142. sage/libs/flint/fmpz_poly_sage.pyx +500 -0
  143. sage/libs/flint/fmpz_vec.pxd +80 -0
  144. sage/libs/flint/fmpzi.pxd +52 -0
  145. sage/libs/flint/fq.pxd +97 -0
  146. sage/libs/flint/fq_default.pxd +84 -0
  147. sage/libs/flint/fq_default_mat.pxd +70 -0
  148. sage/libs/flint/fq_default_poly.pxd +97 -0
  149. sage/libs/flint/fq_default_poly_factor.pxd +39 -0
  150. sage/libs/flint/fq_embed.pxd +28 -0
  151. sage/libs/flint/fq_mat.pxd +83 -0
  152. sage/libs/flint/fq_nmod.pxd +95 -0
  153. sage/libs/flint/fq_nmod_embed.pxd +28 -0
  154. sage/libs/flint/fq_nmod_mat.pxd +83 -0
  155. sage/libs/flint/fq_nmod_mpoly.pxd +130 -0
  156. sage/libs/flint/fq_nmod_mpoly_factor.pxd +28 -0
  157. sage/libs/flint/fq_nmod_poly.pxd +202 -0
  158. sage/libs/flint/fq_nmod_poly_factor.pxd +47 -0
  159. sage/libs/flint/fq_nmod_vec.pxd +33 -0
  160. sage/libs/flint/fq_poly.pxd +204 -0
  161. sage/libs/flint/fq_poly_factor.pxd +47 -0
  162. sage/libs/flint/fq_vec.pxd +33 -0
  163. sage/libs/flint/fq_zech.pxd +99 -0
  164. sage/libs/flint/fq_zech_embed.pxd +28 -0
  165. sage/libs/flint/fq_zech_mat.pxd +78 -0
  166. sage/libs/flint/fq_zech_poly.pxd +198 -0
  167. sage/libs/flint/fq_zech_poly_factor.pxd +47 -0
  168. sage/libs/flint/fq_zech_vec.pxd +33 -0
  169. sage/libs/flint/gr.pxd +174 -0
  170. sage/libs/flint/gr_generic.pxd +215 -0
  171. sage/libs/flint/gr_mat.pxd +161 -0
  172. sage/libs/flint/gr_mpoly.pxd +68 -0
  173. sage/libs/flint/gr_poly.pxd +276 -0
  174. sage/libs/flint/gr_special.pxd +237 -0
  175. sage/libs/flint/gr_vec.pxd +120 -0
  176. sage/libs/flint/hypgeom.pxd +24 -0
  177. sage/libs/flint/long_extras.pxd +23 -0
  178. sage/libs/flint/mag.pxd +131 -0
  179. sage/libs/flint/mag_macros.pxd +8 -0
  180. sage/libs/flint/mpf_mat.pxd +36 -0
  181. sage/libs/flint/mpf_vec.pxd +34 -0
  182. sage/libs/flint/mpfr_mat.pxd +27 -0
  183. sage/libs/flint/mpfr_vec.pxd +25 -0
  184. sage/libs/flint/mpn_extras.pxd +41 -0
  185. sage/libs/flint/mpoly.pxd +72 -0
  186. sage/libs/flint/nf.pxd +19 -0
  187. sage/libs/flint/nf_elem.pxd +74 -0
  188. sage/libs/flint/nmod.pxd +35 -0
  189. sage/libs/flint/nmod_mat.pxd +104 -0
  190. sage/libs/flint/nmod_mpoly.pxd +144 -0
  191. sage/libs/flint/nmod_mpoly_factor.pxd +28 -0
  192. sage/libs/flint/nmod_poly.pxd +339 -0
  193. sage/libs/flint/nmod_poly_factor.pxd +44 -0
  194. sage/libs/flint/nmod_poly_linkage.pxi +710 -0
  195. sage/libs/flint/nmod_poly_mat.pxd +76 -0
  196. sage/libs/flint/nmod_vec.pxd +40 -0
  197. sage/libs/flint/ntl_interface.pxd +17 -0
  198. sage/libs/flint/padic.pxd +93 -0
  199. sage/libs/flint/padic_mat.pxd +64 -0
  200. sage/libs/flint/padic_poly.pxd +88 -0
  201. sage/libs/flint/partitions.pxd +23 -0
  202. sage/libs/flint/perm.pxd +26 -0
  203. sage/libs/flint/profiler.pxd +24 -0
  204. sage/libs/flint/qadic.pxd +77 -0
  205. sage/libs/flint/qfb.pxd +44 -0
  206. sage/libs/flint/qqbar.pxd +172 -0
  207. sage/libs/flint/qsieve.cpython-312-x86_64-linux-gnu.so +0 -0
  208. sage/libs/flint/qsieve.pxd +41 -0
  209. sage/libs/flint/qsieve.pyx +21 -0
  210. sage/libs/flint/qsieve_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  211. sage/libs/flint/qsieve_sage.pyx +67 -0
  212. sage/libs/flint/thread_pool.pxd +25 -0
  213. sage/libs/flint/types.pxd +2076 -0
  214. sage/libs/flint/ulong_extras.cpython-312-x86_64-linux-gnu.so +0 -0
  215. sage/libs/flint/ulong_extras.pxd +141 -0
  216. sage/libs/flint/ulong_extras.pyx +21 -0
  217. sage/libs/flint/ulong_extras_sage.cpython-312-x86_64-linux-gnu.so +0 -0
  218. sage/libs/flint/ulong_extras_sage.pyx +21 -0
  219. sage/matrix/all__sagemath_flint.py +1 -0
  220. sage/matrix/change_ring.cpython-312-x86_64-linux-gnu.so +0 -0
  221. sage/matrix/change_ring.pyx +43 -0
  222. sage/matrix/matrix_complex_ball_dense.cpython-312-x86_64-linux-gnu.so +0 -0
  223. sage/matrix/matrix_complex_ball_dense.pxd +14 -0
  224. sage/matrix/matrix_complex_ball_dense.pyx +973 -0
  225. sage/matrix/matrix_cyclo_dense.cpython-312-x86_64-linux-gnu.so +0 -0
  226. sage/matrix/matrix_cyclo_dense.pxd +16 -0
  227. sage/matrix/matrix_cyclo_dense.pyx +1761 -0
  228. sage/matrix/matrix_integer_dense.cpython-312-x86_64-linux-gnu.so +0 -0
  229. sage/matrix/matrix_integer_dense.pxd +32 -0
  230. sage/matrix/matrix_integer_dense.pyx +5801 -0
  231. sage/matrix/matrix_integer_dense_hnf.py +1294 -0
  232. sage/matrix/matrix_integer_dense_saturation.py +346 -0
  233. sage/matrix/matrix_integer_sparse.cpython-312-x86_64-linux-gnu.so +0 -0
  234. sage/matrix/matrix_integer_sparse.pxd +9 -0
  235. sage/matrix/matrix_integer_sparse.pyx +1090 -0
  236. sage/matrix/matrix_rational_dense.cpython-312-x86_64-linux-gnu.so +0 -0
  237. sage/matrix/matrix_rational_dense.pxd +23 -0
  238. sage/matrix/matrix_rational_dense.pyx +2995 -0
  239. sage/matrix/matrix_rational_sparse.cpython-312-x86_64-linux-gnu.so +0 -0
  240. sage/matrix/matrix_rational_sparse.pxd +11 -0
  241. sage/matrix/matrix_rational_sparse.pyx +789 -0
  242. sage/matrix/misc_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  243. sage/matrix/misc_flint.pyx +109 -0
  244. sage/modular/all__sagemath_flint.py +1 -0
  245. sage/modular/modform/all__sagemath_flint.py +1 -0
  246. sage/modular/modform/eis_series_cython.cpython-312-x86_64-linux-gnu.so +0 -0
  247. sage/modular/modform/eis_series_cython.pyx +226 -0
  248. sage/modular/modsym/all__sagemath_flint.py +1 -0
  249. sage/modular/modsym/apply.cpython-312-x86_64-linux-gnu.so +0 -0
  250. sage/modular/modsym/apply.pxd +6 -0
  251. sage/modular/modsym/apply.pyx +113 -0
  252. sage/modular/modsym/heilbronn.cpython-312-x86_64-linux-gnu.so +0 -0
  253. sage/modular/modsym/heilbronn.pyx +966 -0
  254. sage/modular/pollack_stevens/all__sagemath_flint.py +1 -0
  255. sage/modular/pollack_stevens/dist.cpython-312-x86_64-linux-gnu.so +0 -0
  256. sage/modular/pollack_stevens/dist.pxd +38 -0
  257. sage/modular/pollack_stevens/dist.pyx +1439 -0
  258. sage/quivers/algebra.py +691 -0
  259. sage/quivers/algebra_elements.cpython-312-x86_64-linux-gnu.so +0 -0
  260. sage/quivers/algebra_elements.pxd +97 -0
  261. sage/quivers/algebra_elements.pxi +1324 -0
  262. sage/quivers/algebra_elements.pyx +1424 -0
  263. sage/quivers/all.py +1 -0
  264. sage/quivers/ar_quiver.py +917 -0
  265. sage/quivers/homspace.py +640 -0
  266. sage/quivers/morphism.py +1282 -0
  267. sage/quivers/path_semigroup.py +1155 -0
  268. sage/quivers/paths.cpython-312-x86_64-linux-gnu.so +0 -0
  269. sage/quivers/paths.pxd +13 -0
  270. sage/quivers/paths.pyx +809 -0
  271. sage/quivers/representation.py +2975 -0
  272. sage/rings/all__sagemath_flint.py +37 -0
  273. sage/rings/cif.py +4 -0
  274. sage/rings/complex_arb.cpython-312-x86_64-linux-gnu.so +0 -0
  275. sage/rings/complex_arb.pxd +29 -0
  276. sage/rings/complex_arb.pyx +5176 -0
  277. sage/rings/complex_interval.cpython-312-x86_64-linux-gnu.so +0 -0
  278. sage/rings/complex_interval.pxd +30 -0
  279. sage/rings/complex_interval.pyx +2475 -0
  280. sage/rings/complex_interval_field.py +711 -0
  281. sage/rings/convert/all.py +1 -0
  282. sage/rings/convert/mpfi.cpython-312-x86_64-linux-gnu.so +0 -0
  283. sage/rings/convert/mpfi.pxd +6 -0
  284. sage/rings/convert/mpfi.pyx +576 -0
  285. sage/rings/factorint_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  286. sage/rings/factorint_flint.pyx +99 -0
  287. sage/rings/fraction_field_FpT.cpython-312-x86_64-linux-gnu.so +0 -0
  288. sage/rings/fraction_field_FpT.pxd +28 -0
  289. sage/rings/fraction_field_FpT.pyx +2043 -0
  290. sage/rings/imaginary_unit.py +5 -0
  291. sage/rings/monomials.py +73 -0
  292. sage/rings/number_field/S_unit_solver.py +2870 -0
  293. sage/rings/number_field/all__sagemath_flint.py +7 -0
  294. sage/rings/number_field/bdd_height.py +664 -0
  295. sage/rings/number_field/class_group.py +762 -0
  296. sage/rings/number_field/galois_group.py +1307 -0
  297. sage/rings/number_field/homset.py +612 -0
  298. sage/rings/number_field/maps.py +687 -0
  299. sage/rings/number_field/morphism.py +272 -0
  300. sage/rings/number_field/number_field.py +12820 -0
  301. sage/rings/number_field/number_field_element.cpython-312-x86_64-linux-gnu.so +0 -0
  302. sage/rings/number_field/number_field_element.pxd +59 -0
  303. sage/rings/number_field/number_field_element.pyx +5735 -0
  304. sage/rings/number_field/number_field_element_quadratic.cpython-312-x86_64-linux-gnu.so +0 -0
  305. sage/rings/number_field/number_field_element_quadratic.pxd +34 -0
  306. sage/rings/number_field/number_field_element_quadratic.pyx +3185 -0
  307. sage/rings/number_field/number_field_ideal_rel.py +925 -0
  308. sage/rings/number_field/number_field_morphisms.cpython-312-x86_64-linux-gnu.so +0 -0
  309. sage/rings/number_field/number_field_morphisms.pyx +781 -0
  310. sage/rings/number_field/number_field_rel.py +2734 -0
  311. sage/rings/number_field/order.py +2981 -0
  312. sage/rings/number_field/order_ideal.py +804 -0
  313. sage/rings/number_field/selmer_group.py +715 -0
  314. sage/rings/number_field/small_primes_of_degree_one.py +242 -0
  315. sage/rings/number_field/splitting_field.py +606 -0
  316. sage/rings/number_field/structure.py +380 -0
  317. sage/rings/number_field/unit_group.py +721 -0
  318. sage/rings/padics/all__sagemath_flint.py +3 -0
  319. sage/rings/polynomial/all__sagemath_flint.py +1 -0
  320. sage/rings/polynomial/complex_roots.py +312 -0
  321. sage/rings/polynomial/evaluation_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  322. sage/rings/polynomial/evaluation_flint.pxd +7 -0
  323. sage/rings/polynomial/evaluation_flint.pyx +68 -0
  324. sage/rings/polynomial/hilbert.cpython-312-x86_64-linux-gnu.so +0 -0
  325. sage/rings/polynomial/hilbert.pyx +602 -0
  326. sage/rings/polynomial/polynomial_complex_arb.cpython-312-x86_64-linux-gnu.so +0 -0
  327. sage/rings/polynomial/polynomial_complex_arb.pxd +7 -0
  328. sage/rings/polynomial/polynomial_complex_arb.pyx +963 -0
  329. sage/rings/polynomial/polynomial_integer_dense_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  330. sage/rings/polynomial/polynomial_integer_dense_flint.pxd +13 -0
  331. sage/rings/polynomial/polynomial_integer_dense_flint.pyx +1881 -0
  332. sage/rings/polynomial/polynomial_number_field.cpython-312-x86_64-linux-gnu.so +0 -0
  333. sage/rings/polynomial/polynomial_number_field.pyx +345 -0
  334. sage/rings/polynomial/polynomial_rational_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  335. sage/rings/polynomial/polynomial_rational_flint.pxd +20 -0
  336. sage/rings/polynomial/polynomial_rational_flint.pyx +2598 -0
  337. sage/rings/polynomial/polynomial_zmod_flint.cpython-312-x86_64-linux-gnu.so +0 -0
  338. sage/rings/polynomial/polynomial_zmod_flint.pxd +20 -0
  339. sage/rings/polynomial/polynomial_zmod_flint.pyx +1063 -0
  340. sage/rings/polynomial/real_roots.cpython-312-x86_64-linux-gnu.so +0 -0
  341. sage/rings/polynomial/real_roots.pxd +81 -0
  342. sage/rings/polynomial/real_roots.pyx +4704 -0
  343. sage/rings/polynomial/refine_root.cpython-312-x86_64-linux-gnu.so +0 -0
  344. sage/rings/polynomial/refine_root.pyx +142 -0
  345. sage/rings/polynomial/weil/all.py +4 -0
  346. sage/rings/polynomial/weil/power_sums.h +46 -0
  347. sage/rings/polynomial/weil/weil_polynomials.cpython-312-x86_64-linux-gnu.so +0 -0
  348. sage/rings/polynomial/weil/weil_polynomials.pyx +596 -0
  349. sage/rings/qqbar.py +9025 -0
  350. sage/rings/real_arb.cpython-312-x86_64-linux-gnu.so +0 -0
  351. sage/rings/real_arb.pxd +21 -0
  352. sage/rings/real_arb.pyx +4065 -0
  353. sage/rings/real_interval_absolute.cpython-312-x86_64-linux-gnu.so +0 -0
  354. sage/rings/real_interval_absolute.pyx +1073 -0
  355. sage/rings/real_mpfi.cpython-312-x86_64-linux-gnu.so +0 -0
  356. sage/rings/real_mpfi.pyx +5428 -0
  357. sage/schemes/all__sagemath_flint.py +1 -0
  358. sage/schemes/elliptic_curves/all__sagemath_flint.py +1 -0
  359. sage/schemes/elliptic_curves/descent_two_isogeny.cpython-312-x86_64-linux-gnu.so +0 -0
  360. sage/schemes/elliptic_curves/descent_two_isogeny.pyx +1387 -0
  361. sage/schemes/elliptic_curves/descent_two_isogeny_pari.pxd +5 -0
@@ -0,0 +1,32 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # distutils: libraries = flint
3
+ # distutils: depends = flint/fmpz_extras.h
4
+
5
+ ################################################################################
6
+ # This file is auto-generated by the script
7
+ # SAGE_ROOT/src/sage_setup/autogen/flint_autogen.py.
8
+ # From the commit 3e2c3a3e091106a25ca9c6fba28e02f2cbcd654a
9
+ # Do not modify by hand! Fix and rerun the script instead.
10
+ ################################################################################
11
+
12
+ from libc.stdio cimport FILE
13
+ from sage.libs.gmp.types cimport *
14
+ from sage.libs.mpfr.types cimport *
15
+ from sage.libs.flint.types cimport *
16
+
17
+ cdef extern from "flint_wrap.h":
18
+ slong fmpz_allocated_bytes(const fmpz_t x) noexcept
19
+ void fmpz_adiv_q_2exp(fmpz_t z, const fmpz_t x, flint_bitcnt_t exp) noexcept
20
+ void fmpz_ui_mul_ui(fmpz_t x, ulong a, ulong b) noexcept
21
+ void fmpz_max(fmpz_t z, const fmpz_t x, const fmpz_t y) noexcept
22
+ void fmpz_min(fmpz_t z, const fmpz_t x, const fmpz_t y) noexcept
23
+ void fmpz_add_inline(fmpz_t z, const fmpz_t x, const fmpz_t y) noexcept
24
+ void fmpz_add_si_inline(fmpz_t z, const fmpz_t x, slong y) noexcept
25
+ void fmpz_add_ui_inline(fmpz_t z, const fmpz_t x, ulong y) noexcept
26
+ void fmpz_sub_si_inline(fmpz_t z, const fmpz_t x, slong y) noexcept
27
+ void fmpz_add2_fmpz_si_inline(fmpz_t z, const fmpz_t x, const fmpz_t y, slong c) noexcept
28
+ mp_size_t _fmpz_size(const fmpz_t x) noexcept
29
+ slong _fmpz_sub_small(const fmpz_t x, const fmpz_t y) noexcept
30
+ void _fmpz_set_si_small(fmpz_t x, slong v) noexcept
31
+ void fmpz_set_mpn_large(fmpz_t z, mp_srcptr src, mp_size_t n, int negative) noexcept
32
+ void fmpz_lshift_mpn(fmpz_t z, mp_srcptr src, mp_size_t n, int negative, flint_bitcnt_t shift) noexcept
@@ -0,0 +1,42 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # distutils: libraries = flint
3
+ # distutils: depends = flint/fmpz_factor.h
4
+
5
+ ################################################################################
6
+ # This file is auto-generated by the script
7
+ # SAGE_ROOT/src/sage_setup/autogen/flint_autogen.py.
8
+ # From the commit 3e2c3a3e091106a25ca9c6fba28e02f2cbcd654a
9
+ # Do not modify by hand! Fix and rerun the script instead.
10
+ ################################################################################
11
+
12
+ from libc.stdio cimport FILE
13
+ from sage.libs.gmp.types cimport *
14
+ from sage.libs.mpfr.types cimport *
15
+ from sage.libs.flint.types cimport *
16
+
17
+ cdef extern from "flint_wrap.h":
18
+ void fmpz_factor_init(fmpz_factor_t factor) noexcept
19
+ void fmpz_factor_clear(fmpz_factor_t factor) noexcept
20
+ void _fmpz_factor_append_ui(fmpz_factor_t factor, mp_limb_t p, ulong exp) noexcept
21
+ void _fmpz_factor_append(fmpz_factor_t factor, const fmpz_t p, ulong exp) noexcept
22
+ void fmpz_factor(fmpz_factor_t factor, const fmpz_t n) noexcept
23
+ int fmpz_factor_smooth(fmpz_factor_t factor, const fmpz_t n, slong bits, int proved) noexcept
24
+ void fmpz_factor_si(fmpz_factor_t factor, slong n) noexcept
25
+ int fmpz_factor_trial_range(fmpz_factor_t factor, const fmpz_t n, ulong start, ulong num_primes) noexcept
26
+ int fmpz_factor_trial(fmpz_factor_t factor, const fmpz_t n, slong num_primes) noexcept
27
+ void fmpz_factor_refine(fmpz_factor_t res, const fmpz_factor_t f) noexcept
28
+ void fmpz_factor_expand_iterative(fmpz_t n, const fmpz_factor_t factor) noexcept
29
+ int fmpz_factor_pp1(fmpz_t factor, const fmpz_t n, ulong B1, ulong B2_sqrt, ulong c) noexcept
30
+ int fmpz_factor_pollard_brent_single(fmpz_t p_factor, fmpz_t n_in, fmpz_t yi, fmpz_t ai, mp_limb_t max_iters) noexcept
31
+ int fmpz_factor_pollard_brent(fmpz_t factor, flint_rand_t state, fmpz_t n, mp_limb_t max_tries, mp_limb_t max_iters) noexcept
32
+ void fmpz_factor_ecm_init(ecm_t ecm_inf, mp_limb_t sz) noexcept
33
+ void fmpz_factor_ecm_clear(ecm_t ecm_inf) noexcept
34
+ void fmpz_factor_ecm_addmod(mp_ptr a, mp_ptr b, mp_ptr c, mp_ptr n, mp_limb_t n_size) noexcept
35
+ void fmpz_factor_ecm_submod(mp_ptr x, mp_ptr a, mp_ptr b, mp_ptr n, mp_limb_t n_size) noexcept
36
+ void fmpz_factor_ecm_double(mp_ptr x, mp_ptr z, mp_ptr x0, mp_ptr z0, mp_ptr n, ecm_t ecm_inf) noexcept
37
+ void fmpz_factor_ecm_add(mp_ptr x, mp_ptr z, mp_ptr x1, mp_ptr z1, mp_ptr x2, mp_ptr z2, mp_ptr x0, mp_ptr z0, mp_ptr n, ecm_t ecm_inf) noexcept
38
+ void fmpz_factor_ecm_mul_montgomery_ladder(mp_ptr x, mp_ptr z, mp_ptr x0, mp_ptr z0, mp_limb_t k, mp_ptr n, ecm_t ecm_inf) noexcept
39
+ int fmpz_factor_ecm_select_curve(mp_ptr f, mp_ptr sigma, mp_ptr n, ecm_t ecm_inf) noexcept
40
+ int fmpz_factor_ecm_stage_I(mp_ptr f, const mp_limb_t * prime_array, mp_limb_t num, mp_limb_t B1, mp_ptr n, ecm_t ecm_inf) noexcept
41
+ int fmpz_factor_ecm_stage_II(mp_ptr f, mp_limb_t B1, mp_limb_t B2, mp_limb_t P, mp_ptr n, ecm_t ecm_inf) noexcept
42
+ int fmpz_factor_ecm(fmpz_t f, mp_limb_t curves, mp_limb_t B1, mp_limb_t B2, flint_rand_t state, const fmpz_t n_in) noexcept
@@ -0,0 +1,4 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ from .types cimport *
3
+
4
+ cdef fmpz_factor_to_pairlist(const fmpz_factor_t factors)
@@ -0,0 +1,29 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ from cysignals.signals cimport sig_check
3
+ from sage.libs.flint.fmpz cimport fmpz_get_mpz
4
+ from sage.rings.integer cimport Integer
5
+
6
+ cdef fmpz_factor_to_pairlist(const fmpz_factor_t factors):
7
+ r"""
8
+ Helper function that converts a fmpz_factor_t into a list of
9
+ (factor, exponent) pairs. The factors are Integers, and the
10
+ exponents are Python ints. This is used and indirectly tested by
11
+ both :func:`qsieve` and
12
+ :func:`sage.rings.factorint_flint.factor_using_flint`. The output
13
+ format was ultimately based on that of
14
+ :func:`sage.rings.factorint_pari.factor_using_pari`.
15
+ """
16
+ cdef list pairs = []
17
+
18
+ if factors.sign < 0:
19
+ # FLINT doesn't return the plus/minus one factor.
20
+ pairs.append((Integer(-1), int(1)))
21
+
22
+ for i in range(factors.num):
23
+ f = Integer()
24
+ fmpz_get_mpz(f.value, &factors.p[i])
25
+ e = int(factors.exp[i])
26
+ pairs.append((f, e))
27
+ sig_check()
28
+
29
+ return pairs
@@ -0,0 +1,49 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # distutils: libraries = flint
3
+ # distutils: depends = flint/fmpz_lll.h
4
+
5
+ ################################################################################
6
+ # This file is auto-generated by the script
7
+ # SAGE_ROOT/src/sage_setup/autogen/flint_autogen.py.
8
+ # From the commit 3e2c3a3e091106a25ca9c6fba28e02f2cbcd654a
9
+ # Do not modify by hand! Fix and rerun the script instead.
10
+ ################################################################################
11
+
12
+ from libc.stdio cimport FILE
13
+ from sage.libs.gmp.types cimport *
14
+ from sage.libs.mpfr.types cimport *
15
+ from sage.libs.flint.types cimport *
16
+
17
+ cdef extern from "flint_wrap.h":
18
+ void fmpz_lll_context_init_default(fmpz_lll_t fl) noexcept
19
+ void fmpz_lll_context_init(fmpz_lll_t fl, double delta, double eta, rep_type rt, gram_type gt) noexcept
20
+ void fmpz_lll_randtest(fmpz_lll_t fl, flint_rand_t state) noexcept
21
+ double fmpz_lll_heuristic_dot(const double * vec1, const double * vec2, slong len2, const fmpz_mat_t B, slong k, slong j, slong exp_adj) noexcept
22
+ int fmpz_lll_check_babai(int kappa, fmpz_mat_t B, fmpz_mat_t U, d_mat_t mu, d_mat_t r, double * s, d_mat_t appB, int * expo, fmpz_gram_t A, int a, int zeros, int kappamax, int n, const fmpz_lll_t fl) noexcept
23
+ int fmpz_lll_check_babai_heuristic_d(int kappa, fmpz_mat_t B, fmpz_mat_t U, d_mat_t mu, d_mat_t r, double * s, d_mat_t appB, int * expo, fmpz_gram_t A, int a, int zeros, int kappamax, int n, const fmpz_lll_t fl) noexcept
24
+ int fmpz_lll_check_babai_heuristic(int kappa, fmpz_mat_t B, fmpz_mat_t U, mpf_mat_t mu, mpf_mat_t r, mpf * s, mpf_mat_t appB, fmpz_gram_t A, int a, int zeros, int kappamax, int n, mpf_t tmp, mpf_t rtmp, flint_bitcnt_t prec, const fmpz_lll_t fl) noexcept
25
+ int fmpz_lll_advance_check_babai(int cur_kappa, int kappa, fmpz_mat_t B, fmpz_mat_t U, d_mat_t mu, d_mat_t r, double * s, d_mat_t appB, int * expo, fmpz_gram_t A, int a, int zeros, int kappamax, int n, const fmpz_lll_t fl) noexcept
26
+ int fmpz_lll_advance_check_babai_heuristic_d(int cur_kappa, int kappa, fmpz_mat_t B, fmpz_mat_t U, d_mat_t mu, d_mat_t r, double * s, d_mat_t appB, int * expo, fmpz_gram_t A, int a, int zeros, int kappamax, int n, const fmpz_lll_t fl) noexcept
27
+ int fmpz_lll_shift(const fmpz_mat_t B) noexcept
28
+ int fmpz_lll_d(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl) noexcept
29
+ int fmpz_lll_d_heuristic(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl) noexcept
30
+ int fmpz_lll_mpf2(fmpz_mat_t B, fmpz_mat_t U, flint_bitcnt_t prec, const fmpz_lll_t fl) noexcept
31
+ int fmpz_lll_mpf(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl) noexcept
32
+ int fmpz_lll_wrapper(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl) noexcept
33
+ int fmpz_lll_d_with_removal(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
34
+ int fmpz_lll_d_heuristic_with_removal(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
35
+ int fmpz_lll_mpf2_with_removal(fmpz_mat_t B, fmpz_mat_t U, flint_bitcnt_t prec, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
36
+ int fmpz_lll_mpf_with_removal(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
37
+ int fmpz_lll_wrapper_with_removal(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
38
+ int fmpz_lll_d_with_removal_knapsack(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
39
+ int fmpz_lll_wrapper_with_removal_knapsack(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
40
+ int fmpz_lll_with_removal_ulll(fmpz_mat_t FM, fmpz_mat_t UM, slong new_size, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
41
+ bint fmpz_lll_is_reduced_d(const fmpz_mat_t B, const fmpz_lll_t fl) noexcept
42
+ bint fmpz_lll_is_reduced_mpfr(const fmpz_mat_t B, const fmpz_lll_t fl, flint_bitcnt_t prec) noexcept
43
+ bint fmpz_lll_is_reduced_d_with_removal(const fmpz_mat_t B, const fmpz_lll_t fl, const fmpz_t gs_B, int newd) noexcept
44
+ bint fmpz_lll_is_reduced_mpfr_with_removal(const fmpz_mat_t B, const fmpz_lll_t fl, const fmpz_t gs_B, int newd, flint_bitcnt_t prec) noexcept
45
+ bint fmpz_lll_is_reduced(const fmpz_mat_t B, const fmpz_lll_t fl, flint_bitcnt_t prec) noexcept
46
+ bint fmpz_lll_is_reduced_with_removal(const fmpz_mat_t B, const fmpz_lll_t fl, const fmpz_t gs_B, int newd, flint_bitcnt_t prec) noexcept
47
+ void fmpz_lll_storjohann_ulll(fmpz_mat_t FM, slong new_size, const fmpz_lll_t fl) noexcept
48
+ void fmpz_lll(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl) noexcept
49
+ int fmpz_lll_with_removal(fmpz_mat_t B, fmpz_mat_t U, const fmpz_t gs_B, const fmpz_lll_t fl) noexcept
@@ -0,0 +1,8 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # Macros from fmpz_poly.h
3
+ # See https://github.com/flintlib/flint/issues/1529
4
+
5
+ from .types cimport *
6
+
7
+ cdef extern from "flint_wrap.h":
8
+ bint COEFF_IS_MPZ(fmpz f)
@@ -0,0 +1,184 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # distutils: libraries = flint
3
+ # distutils: depends = flint/fmpz_mat.h
4
+
5
+ ################################################################################
6
+ # This file is auto-generated by the script
7
+ # SAGE_ROOT/src/sage_setup/autogen/flint_autogen.py.
8
+ # From the commit 3e2c3a3e091106a25ca9c6fba28e02f2cbcd654a
9
+ # Do not modify by hand! Fix and rerun the script instead.
10
+ ################################################################################
11
+
12
+ from libc.stdio cimport FILE
13
+ from sage.libs.gmp.types cimport *
14
+ from sage.libs.mpfr.types cimport *
15
+ from sage.libs.flint.types cimport *
16
+
17
+ cdef extern from "flint_wrap.h":
18
+ void fmpz_mat_init(fmpz_mat_t mat, slong rows, slong cols) noexcept
19
+ void fmpz_mat_clear(fmpz_mat_t mat) noexcept
20
+ void fmpz_mat_set(fmpz_mat_t mat1, const fmpz_mat_t mat2) noexcept
21
+ void fmpz_mat_init_set(fmpz_mat_t mat, const fmpz_mat_t src) noexcept
22
+ slong fmpz_mat_nrows(const fmpz_mat_t mat) noexcept
23
+ slong fmpz_mat_ncols(const fmpz_mat_t mat) noexcept
24
+ void fmpz_mat_swap(fmpz_mat_t mat1, fmpz_mat_t mat2) noexcept
25
+ void fmpz_mat_swap_entrywise(fmpz_mat_t mat1, fmpz_mat_t mat2) noexcept
26
+ fmpz * fmpz_mat_entry(const fmpz_mat_t mat, slong i, slong j) noexcept
27
+ void fmpz_mat_zero(fmpz_mat_t mat) noexcept
28
+ void fmpz_mat_one(fmpz_mat_t mat) noexcept
29
+ void fmpz_mat_swap_rows(fmpz_mat_t mat, slong * perm, slong r, slong s) noexcept
30
+ void fmpz_mat_swap_cols(fmpz_mat_t mat, slong * perm, slong r, slong s) noexcept
31
+ void fmpz_mat_invert_rows(fmpz_mat_t mat, slong * perm) noexcept
32
+ void fmpz_mat_invert_cols(fmpz_mat_t mat, slong * perm) noexcept
33
+ void fmpz_mat_window_init(fmpz_mat_t window, const fmpz_mat_t mat, slong r1, slong c1, slong r2, slong c2) noexcept
34
+ void fmpz_mat_window_clear(fmpz_mat_t window) noexcept
35
+ void fmpz_mat_randbits(fmpz_mat_t mat, flint_rand_t state, flint_bitcnt_t bits) noexcept
36
+ void fmpz_mat_randtest(fmpz_mat_t mat, flint_rand_t state, flint_bitcnt_t bits) noexcept
37
+ void fmpz_mat_randintrel(fmpz_mat_t mat, flint_rand_t state, flint_bitcnt_t bits) noexcept
38
+ void fmpz_mat_randsimdioph(fmpz_mat_t mat, flint_rand_t state, flint_bitcnt_t bits, flint_bitcnt_t bits2) noexcept
39
+ void fmpz_mat_randntrulike(fmpz_mat_t mat, flint_rand_t state, flint_bitcnt_t bits, ulong q) noexcept
40
+ void fmpz_mat_randntrulike2(fmpz_mat_t mat, flint_rand_t state, flint_bitcnt_t bits, ulong q) noexcept
41
+ void fmpz_mat_randajtai(fmpz_mat_t mat, flint_rand_t state, double alpha) noexcept
42
+ int fmpz_mat_randpermdiag(fmpz_mat_t mat, flint_rand_t state, const fmpz * diag, slong n) noexcept
43
+ void fmpz_mat_randrank(fmpz_mat_t mat, flint_rand_t state, slong rank, flint_bitcnt_t bits) noexcept
44
+ void fmpz_mat_randdet(fmpz_mat_t mat, flint_rand_t state, const fmpz_t det) noexcept
45
+ void fmpz_mat_randops(fmpz_mat_t mat, flint_rand_t state, slong count) noexcept
46
+ int fmpz_mat_fprint(FILE * file, const fmpz_mat_t mat) noexcept
47
+ int fmpz_mat_fprint_pretty(FILE * file, const fmpz_mat_t mat) noexcept
48
+ int fmpz_mat_print(const fmpz_mat_t mat) noexcept
49
+ int fmpz_mat_print_pretty(const fmpz_mat_t mat) noexcept
50
+ int fmpz_mat_fread(FILE * file, fmpz_mat_t mat) noexcept
51
+ int fmpz_mat_read(fmpz_mat_t mat) noexcept
52
+ bint fmpz_mat_equal(const fmpz_mat_t mat1, const fmpz_mat_t mat2) noexcept
53
+ bint fmpz_mat_is_zero(const fmpz_mat_t mat) noexcept
54
+ bint fmpz_mat_is_one(const fmpz_mat_t mat) noexcept
55
+ bint fmpz_mat_is_empty(const fmpz_mat_t mat) noexcept
56
+ bint fmpz_mat_is_square(const fmpz_mat_t mat) noexcept
57
+ bint fmpz_mat_is_zero_row(const fmpz_mat_t mat, slong i) noexcept
58
+ bint fmpz_mat_equal_col(fmpz_mat_t M, slong m, slong n) noexcept
59
+ bint fmpz_mat_equal_row(fmpz_mat_t M, slong m, slong n) noexcept
60
+ void fmpz_mat_transpose(fmpz_mat_t B, const fmpz_mat_t A) noexcept
61
+ void fmpz_mat_concat_vertical(fmpz_mat_t res, const fmpz_mat_t mat1, const fmpz_mat_t mat2) noexcept
62
+ void fmpz_mat_concat_horizontal(fmpz_mat_t res, const fmpz_mat_t mat1, const fmpz_mat_t mat2) noexcept
63
+ void fmpz_mat_get_nmod_mat(nmod_mat_t Amod, const fmpz_mat_t A) noexcept
64
+ void fmpz_mat_set_nmod_mat(fmpz_mat_t A, const nmod_mat_t Amod) noexcept
65
+ void fmpz_mat_set_nmod_mat_unsigned(fmpz_mat_t A, const nmod_mat_t Amod) noexcept
66
+ void fmpz_mat_CRT_ui(fmpz_mat_t res, const fmpz_mat_t mat1, const fmpz_t m1, const nmod_mat_t mat2, int sign) noexcept
67
+ void fmpz_mat_multi_mod_ui_precomp(nmod_mat_t * residues, slong nres, const fmpz_mat_t mat, const fmpz_comb_t comb, fmpz_comb_temp_t temp) noexcept
68
+ void fmpz_mat_multi_mod_ui(nmod_mat_t * residues, slong nres, const fmpz_mat_t mat) noexcept
69
+ void fmpz_mat_multi_CRT_ui_precomp(fmpz_mat_t mat, nmod_mat_t * const residues, slong nres, const fmpz_comb_t comb, fmpz_comb_temp_t temp, int sign) noexcept
70
+ void fmpz_mat_multi_CRT_ui(fmpz_mat_t mat, nmod_mat_t * const residues, slong nres, int sign) noexcept
71
+ void fmpz_mat_add(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
72
+ void fmpz_mat_sub(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
73
+ void fmpz_mat_neg(fmpz_mat_t B, const fmpz_mat_t A) noexcept
74
+ void fmpz_mat_scalar_mul_si(fmpz_mat_t B, const fmpz_mat_t A, slong c) noexcept
75
+ void fmpz_mat_scalar_mul_ui(fmpz_mat_t B, const fmpz_mat_t A, ulong c) noexcept
76
+ void fmpz_mat_scalar_mul_fmpz(fmpz_mat_t B, const fmpz_mat_t A, const fmpz_t c) noexcept
77
+ void fmpz_mat_scalar_addmul_si(fmpz_mat_t B, const fmpz_mat_t A, slong c) noexcept
78
+ void fmpz_mat_scalar_addmul_ui(fmpz_mat_t B, const fmpz_mat_t A, ulong c) noexcept
79
+ void fmpz_mat_scalar_addmul_fmpz(fmpz_mat_t B, const fmpz_mat_t A, const fmpz_t c) noexcept
80
+ void fmpz_mat_scalar_submul_si(fmpz_mat_t B, const fmpz_mat_t A, slong c) noexcept
81
+ void fmpz_mat_scalar_submul_ui(fmpz_mat_t B, const fmpz_mat_t A, ulong c) noexcept
82
+ void fmpz_mat_scalar_submul_fmpz(fmpz_mat_t B, const fmpz_mat_t A, const fmpz_t c) noexcept
83
+ void fmpz_mat_scalar_addmul_nmod_mat_ui(fmpz_mat_t B, const nmod_mat_t A, ulong c) noexcept
84
+ void fmpz_mat_scalar_addmul_nmod_mat_fmpz(fmpz_mat_t B, const nmod_mat_t A, const fmpz_t c) noexcept
85
+ void fmpz_mat_scalar_divexact_si(fmpz_mat_t B, const fmpz_mat_t A, slong c) noexcept
86
+ void fmpz_mat_scalar_divexact_ui(fmpz_mat_t B, const fmpz_mat_t A, ulong c) noexcept
87
+ void fmpz_mat_scalar_divexact_fmpz(fmpz_mat_t B, const fmpz_mat_t A, const fmpz_t c) noexcept
88
+ void fmpz_mat_scalar_mul_2exp(fmpz_mat_t B, const fmpz_mat_t A, ulong exp) noexcept
89
+ void fmpz_mat_scalar_tdiv_q_2exp(fmpz_mat_t B, const fmpz_mat_t A, ulong exp) noexcept
90
+ void fmpz_mat_scalar_smod(fmpz_mat_t B, const fmpz_mat_t A, const fmpz_t P) noexcept
91
+ void fmpz_mat_mul(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
92
+ void fmpz_mat_mul_classical(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
93
+ void fmpz_mat_mul_strassen(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
94
+ void _fmpz_mat_mul_multi_mod(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B, int sign, flint_bitcnt_t bits) noexcept
95
+ void fmpz_mat_mul_multi_mod(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
96
+ int fmpz_mat_mul_blas(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
97
+ void fmpz_mat_mul_fft(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
98
+ void fmpz_mat_sqr(fmpz_mat_t B, const fmpz_mat_t A) noexcept
99
+ void fmpz_mat_sqr_bodrato(fmpz_mat_t B, const fmpz_mat_t A) noexcept
100
+ void fmpz_mat_pow(fmpz_mat_t B, const fmpz_mat_t A, ulong e) noexcept
101
+ void _fmpz_mat_mul_small(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
102
+ void _fmpz_mat_mul_double_word(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
103
+ void fmpz_mat_mul_fmpz_vec(fmpz * c, const fmpz_mat_t A, const fmpz * b, slong blen) noexcept
104
+ void fmpz_mat_mul_fmpz_vec_ptr(fmpz * const * c, const fmpz_mat_t A, const fmpz * const * b, slong blen) noexcept
105
+ void fmpz_mat_fmpz_vec_mul(fmpz * c, const fmpz * a, slong alen, const fmpz_mat_t B) noexcept
106
+ void fmpz_mat_fmpz_vec_mul_ptr(fmpz * const * c, const fmpz * const * a, slong alen, const fmpz_mat_t B) noexcept
107
+ int fmpz_mat_inv(fmpz_mat_t Ainv, fmpz_t den, const fmpz_mat_t A) noexcept
108
+ void fmpz_mat_kronecker_product(fmpz_mat_t C, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
109
+ void fmpz_mat_content(fmpz_t mat_gcd, const fmpz_mat_t A) noexcept
110
+ void fmpz_mat_trace(fmpz_t trace, const fmpz_mat_t mat) noexcept
111
+ void fmpz_mat_det(fmpz_t det, const fmpz_mat_t A) noexcept
112
+ void fmpz_mat_det_cofactor(fmpz_t det, const fmpz_mat_t A) noexcept
113
+ void fmpz_mat_det_bareiss(fmpz_t det, const fmpz_mat_t A) noexcept
114
+ void fmpz_mat_det_modular(fmpz_t det, const fmpz_mat_t A, int proved) noexcept
115
+ void fmpz_mat_det_modular_accelerated(fmpz_t det, const fmpz_mat_t A, int proved) noexcept
116
+ void fmpz_mat_det_modular_given_divisor(fmpz_t det, const fmpz_mat_t A, const fmpz_t d, int proved) noexcept
117
+ void fmpz_mat_det_bound(fmpz_t bound, const fmpz_mat_t A) noexcept
118
+ void fmpz_mat_det_bound_nonzero(fmpz_t bound, const fmpz_mat_t A) noexcept
119
+ void fmpz_mat_det_divisor(fmpz_t d, const fmpz_mat_t A) noexcept
120
+ void fmpz_mat_similarity(fmpz_mat_t A, slong r, fmpz_t d) noexcept
121
+ void _fmpz_mat_charpoly_berkowitz(fmpz * cp, const fmpz_mat_t mat) noexcept
122
+ void fmpz_mat_charpoly_berkowitz(fmpz_poly_t cp, const fmpz_mat_t mat) noexcept
123
+ void _fmpz_mat_charpoly_modular(fmpz * cp, const fmpz_mat_t mat) noexcept
124
+ void fmpz_mat_charpoly_modular(fmpz_poly_t cp, const fmpz_mat_t mat) noexcept
125
+ void _fmpz_mat_charpoly(fmpz * cp, const fmpz_mat_t mat) noexcept
126
+ void fmpz_mat_charpoly(fmpz_poly_t cp, const fmpz_mat_t mat) noexcept
127
+ slong _fmpz_mat_minpoly_modular(fmpz * cp, const fmpz_mat_t mat) noexcept
128
+ void fmpz_mat_minpoly_modular(fmpz_poly_t cp, const fmpz_mat_t mat) noexcept
129
+ slong _fmpz_mat_minpoly(fmpz * cp, const fmpz_mat_t mat) noexcept
130
+ void fmpz_mat_minpoly(fmpz_poly_t cp, const fmpz_mat_t mat) noexcept
131
+ slong fmpz_mat_rank(const fmpz_mat_t A) noexcept
132
+ int fmpz_mat_col_partition(slong * part, fmpz_mat_t M, int short_circuit) noexcept
133
+ int fmpz_mat_solve(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
134
+ int fmpz_mat_solve_fflu(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
135
+ int fmpz_mat_solve_fflu_precomp(fmpz_mat_t X, const slong * perm, const fmpz_mat_t FFLU, const fmpz_mat_t B) noexcept
136
+ int fmpz_mat_solve_cramer(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
137
+ void fmpz_mat_solve_bound(fmpz_t N, fmpz_t D, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
138
+ int fmpz_mat_solve_dixon(fmpz_mat_t X, fmpz_t M, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
139
+ void _fmpz_mat_solve_dixon_den(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B, const nmod_mat_t Ainv, mp_limb_t p, const fmpz_t N, const fmpz_t D) noexcept
140
+ int fmpz_mat_solve_dixon_den(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
141
+ int fmpz_mat_solve_multi_mod_den(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
142
+ int fmpz_mat_can_solve_multi_mod_den(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
143
+ int fmpz_mat_can_solve_fflu(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
144
+ int fmpz_mat_can_solve(fmpz_mat_t X, fmpz_t den, const fmpz_mat_t A, const fmpz_mat_t B) noexcept
145
+ slong fmpz_mat_find_pivot_any(const fmpz_mat_t mat, slong start_row, slong end_row, slong c) noexcept
146
+ slong fmpz_mat_fflu(fmpz_mat_t B, fmpz_t den, slong * perm, const fmpz_mat_t A, int rank_check) noexcept
147
+ slong fmpz_mat_rref(fmpz_mat_t B, fmpz_t den, const fmpz_mat_t A) noexcept
148
+ slong fmpz_mat_rref_fflu(fmpz_mat_t B, fmpz_t den, const fmpz_mat_t A) noexcept
149
+ slong fmpz_mat_rref_mul(fmpz_mat_t B, fmpz_t den, const fmpz_mat_t A) noexcept
150
+ bint fmpz_mat_is_in_rref_with_rank(const fmpz_mat_t A, const fmpz_t den, slong rank) noexcept
151
+ slong fmpz_mat_rref_mod(slong * perm, fmpz_mat_t A, const fmpz_t p) noexcept
152
+ void fmpz_mat_strong_echelon_form_mod(fmpz_mat_t A, const fmpz_t mod) noexcept
153
+ slong fmpz_mat_howell_form_mod(fmpz_mat_t A, const fmpz_t mod) noexcept
154
+ slong fmpz_mat_nullspace(fmpz_mat_t B, const fmpz_mat_t A) noexcept
155
+ slong fmpz_mat_rref_fraction_free(slong * perm, fmpz_mat_t B, fmpz_t den, const fmpz_mat_t A) noexcept
156
+ void fmpz_mat_hnf(fmpz_mat_t H, const fmpz_mat_t A) noexcept
157
+ void fmpz_mat_hnf_transform(fmpz_mat_t H, fmpz_mat_t U, const fmpz_mat_t A) noexcept
158
+ void fmpz_mat_hnf_classical(fmpz_mat_t H, const fmpz_mat_t A) noexcept
159
+ void fmpz_mat_hnf_xgcd(fmpz_mat_t H, const fmpz_mat_t A) noexcept
160
+ void fmpz_mat_hnf_modular(fmpz_mat_t H, const fmpz_mat_t A, const fmpz_t D) noexcept
161
+ void fmpz_mat_hnf_modular_eldiv(fmpz_mat_t A, const fmpz_t D) noexcept
162
+ void fmpz_mat_hnf_minors(fmpz_mat_t H, const fmpz_mat_t A) noexcept
163
+ void fmpz_mat_hnf_pernet_stein(fmpz_mat_t H, const fmpz_mat_t A, flint_rand_t state) noexcept
164
+ bint fmpz_mat_is_in_hnf(const fmpz_mat_t A) noexcept
165
+ void fmpz_mat_snf(fmpz_mat_t S, const fmpz_mat_t A) noexcept
166
+ void fmpz_mat_snf_diagonal(fmpz_mat_t S, const fmpz_mat_t A) noexcept
167
+ void fmpz_mat_snf_kannan_bachem(fmpz_mat_t S, const fmpz_mat_t A) noexcept
168
+ void fmpz_mat_snf_iliopoulos(fmpz_mat_t S, const fmpz_mat_t A, const fmpz_t mod) noexcept
169
+ bint fmpz_mat_is_in_snf(const fmpz_mat_t A) noexcept
170
+ void fmpz_mat_gram(fmpz_mat_t B, const fmpz_mat_t A) noexcept
171
+ bint fmpz_mat_is_hadamard(const fmpz_mat_t H) noexcept
172
+ int fmpz_mat_hadamard(fmpz_mat_t H) noexcept
173
+ int fmpz_mat_get_d_mat(d_mat_t B, const fmpz_mat_t A) noexcept
174
+ int fmpz_mat_get_d_mat_transpose(d_mat_t B, const fmpz_mat_t A) noexcept
175
+ void fmpz_mat_is_spd(const fmpz_mat_t A) noexcept
176
+ void fmpz_mat_chol_d(d_mat_t R, const fmpz_mat_t A) noexcept
177
+ bint fmpz_mat_is_reduced(const fmpz_mat_t A, double delta, double eta) noexcept
178
+ bint fmpz_mat_is_reduced_gram(const fmpz_mat_t A, double delta, double eta) noexcept
179
+ bint fmpz_mat_is_reduced_with_removal(const fmpz_mat_t A, double delta, double eta, const fmpz_t gs_B, int newd) noexcept
180
+ bint fmpz_mat_is_reduced_gram_with_removal(const fmpz_mat_t A, double delta, double eta, const fmpz_t gs_B, int newd) noexcept
181
+ void fmpz_mat_lll_original(fmpz_mat_t A, const fmpq_t delta, const fmpq_t eta) noexcept
182
+ void fmpz_mat_lll_storjohann(fmpz_mat_t A, const fmpq_t delta, const fmpq_t eta) noexcept
183
+
184
+ from .fmpz_mat_macros cimport *
@@ -0,0 +1,10 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # Macros from fmpz_mat.h
3
+ # See https://github.com/flintlib/flint/issues/1529
4
+
5
+ from .types cimport *
6
+
7
+ cdef extern from "flint_wrap.h":
8
+ fmpz * fmpz_mat_entry(fmpz_mat_t mat, slong i, slong j)
9
+ slong fmpz_mat_nrows(fmpz_mat_t)
10
+ slong fmpz_mat_ncols(fmpz_mat_t)
@@ -0,0 +1,46 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # distutils: libraries = flint
3
+ # distutils: depends = flint/fmpz_mod.h
4
+
5
+ ################################################################################
6
+ # This file is auto-generated by the script
7
+ # SAGE_ROOT/src/sage_setup/autogen/flint_autogen.py.
8
+ # From the commit 3e2c3a3e091106a25ca9c6fba28e02f2cbcd654a
9
+ # Do not modify by hand! Fix and rerun the script instead.
10
+ ################################################################################
11
+
12
+ from libc.stdio cimport FILE
13
+ from sage.libs.gmp.types cimport *
14
+ from sage.libs.mpfr.types cimport *
15
+ from sage.libs.flint.types cimport *
16
+
17
+ cdef extern from "flint_wrap.h":
18
+ void fmpz_mod_ctx_init(fmpz_mod_ctx_t ctx, const fmpz_t n) noexcept
19
+ void fmpz_mod_ctx_clear(fmpz_mod_ctx_t ctx) noexcept
20
+ void fmpz_mod_ctx_set_modulus(fmpz_mod_ctx_t ctx, const fmpz_t n) noexcept
21
+ void fmpz_mod_set_fmpz(fmpz_t a, const fmpz_t b, const fmpz_mod_ctx_t ctx) noexcept
22
+ bint fmpz_mod_is_canonical(const fmpz_t a, const fmpz_mod_ctx_t ctx) noexcept
23
+ bint fmpz_mod_is_one(const fmpz_t a, const fmpz_mod_ctx_t ctx) noexcept
24
+ void fmpz_mod_add(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
25
+ void fmpz_mod_add_fmpz(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
26
+ void fmpz_mod_add_ui(fmpz_t a, const fmpz_t b, ulong c, const fmpz_mod_ctx_t ctx) noexcept
27
+ void fmpz_mod_add_si(fmpz_t a, const fmpz_t b, slong c, const fmpz_mod_ctx_t ctx) noexcept
28
+ void fmpz_mod_sub(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
29
+ void fmpz_mod_sub_fmpz(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
30
+ void fmpz_mod_sub_ui(fmpz_t a, const fmpz_t b, ulong c, const fmpz_mod_ctx_t ctx) noexcept
31
+ void fmpz_mod_sub_si(fmpz_t a, const fmpz_t b, slong c, const fmpz_mod_ctx_t ctx) noexcept
32
+ void fmpz_mod_fmpz_sub(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
33
+ void fmpz_mod_ui_sub(fmpz_t a, ulong b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
34
+ void fmpz_mod_si_sub(fmpz_t a, slong b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
35
+ void fmpz_mod_neg(fmpz_t a, const fmpz_t b, const fmpz_mod_ctx_t ctx) noexcept
36
+ void fmpz_mod_mul(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
37
+ void fmpz_mod_inv(fmpz_t a, const fmpz_t b, const fmpz_mod_ctx_t ctx) noexcept
38
+ int fmpz_mod_divides(fmpz_t a, const fmpz_t b, const fmpz_t c, const fmpz_mod_ctx_t ctx) noexcept
39
+ void fmpz_mod_pow_ui(fmpz_t a, const fmpz_t b, ulong e, const fmpz_mod_ctx_t ctx) noexcept
40
+ int fmpz_mod_pow_fmpz(fmpz_t a, const fmpz_t b, const fmpz_t e, const fmpz_mod_ctx_t ctx) noexcept
41
+ void fmpz_mod_discrete_log_pohlig_hellman_init(fmpz_mod_discrete_log_pohlig_hellman_t L) noexcept
42
+ void fmpz_mod_discrete_log_pohlig_hellman_clear(fmpz_mod_discrete_log_pohlig_hellman_t L) noexcept
43
+ double fmpz_mod_discrete_log_pohlig_hellman_precompute_prime(fmpz_mod_discrete_log_pohlig_hellman_t L, const fmpz_t p) noexcept
44
+ const fmpz * fmpz_mod_discrete_log_pohlig_hellman_primitive_root(fmpz_mod_discrete_log_pohlig_hellman_t L) noexcept
45
+ void fmpz_mod_discrete_log_pohlig_hellman_run(fmpz_t x, const fmpz_mod_discrete_log_pohlig_hellman_t L, const fmpz_t y) noexcept
46
+ int fmpz_next_smooth_prime(fmpz_t a, const fmpz_t b) noexcept
@@ -0,0 +1,71 @@
1
+ # sage_setup: distribution = sagemath-flint
2
+ # distutils: libraries = flint
3
+ # distutils: depends = flint/fmpz_mod_mat.h
4
+
5
+ ################################################################################
6
+ # This file is auto-generated by the script
7
+ # SAGE_ROOT/src/sage_setup/autogen/flint_autogen.py.
8
+ # From the commit 3e2c3a3e091106a25ca9c6fba28e02f2cbcd654a
9
+ # Do not modify by hand! Fix and rerun the script instead.
10
+ ################################################################################
11
+
12
+ from libc.stdio cimport FILE
13
+ from sage.libs.gmp.types cimport *
14
+ from sage.libs.mpfr.types cimport *
15
+ from sage.libs.flint.types cimport *
16
+
17
+ cdef extern from "flint_wrap.h":
18
+ fmpz * fmpz_mod_mat_entry(const fmpz_mod_mat_t mat, slong i, slong j) noexcept
19
+ void fmpz_mod_mat_set_entry(fmpz_mod_mat_t mat, slong i, slong j, const fmpz_t val) noexcept
20
+ void fmpz_mod_mat_init(fmpz_mod_mat_t mat, slong rows, slong cols, const fmpz_t n) noexcept
21
+ void fmpz_mod_mat_init_set(fmpz_mod_mat_t mat, const fmpz_mod_mat_t src) noexcept
22
+ void fmpz_mod_mat_clear(fmpz_mod_mat_t mat) noexcept
23
+ slong fmpz_mod_mat_nrows(const fmpz_mod_mat_t mat) noexcept
24
+ slong fmpz_mod_mat_ncols(const fmpz_mod_mat_t mat) noexcept
25
+ void _fmpz_mod_mat_set_mod(fmpz_mod_mat_t mat, const fmpz_t n) noexcept
26
+ void fmpz_mod_mat_one(fmpz_mod_mat_t mat) noexcept
27
+ void fmpz_mod_mat_zero(fmpz_mod_mat_t mat) noexcept
28
+ void fmpz_mod_mat_swap(fmpz_mod_mat_t mat1, fmpz_mod_mat_t mat2) noexcept
29
+ void fmpz_mod_mat_swap_entrywise(fmpz_mod_mat_t mat1, fmpz_mod_mat_t mat2) noexcept
30
+ bint fmpz_mod_mat_is_empty(const fmpz_mod_mat_t mat) noexcept
31
+ bint fmpz_mod_mat_is_square(const fmpz_mod_mat_t mat) noexcept
32
+ void _fmpz_mod_mat_reduce(fmpz_mod_mat_t mat) noexcept
33
+ void fmpz_mod_mat_randtest(fmpz_mod_mat_t mat, flint_rand_t state) noexcept
34
+ void fmpz_mod_mat_window_init(fmpz_mod_mat_t window, const fmpz_mod_mat_t mat, slong r1, slong c1, slong r2, slong c2) noexcept
35
+ void fmpz_mod_mat_window_clear(fmpz_mod_mat_t window) noexcept
36
+ void fmpz_mod_mat_concat_horizontal(fmpz_mod_mat_t res, const fmpz_mod_mat_t mat1, const fmpz_mod_mat_t mat2) noexcept
37
+ void fmpz_mod_mat_concat_vertical(fmpz_mod_mat_t res, const fmpz_mod_mat_t mat1, const fmpz_mod_mat_t mat2) noexcept
38
+ void fmpz_mod_mat_print_pretty(const fmpz_mod_mat_t mat) noexcept
39
+ bint fmpz_mod_mat_is_zero(const fmpz_mod_mat_t mat) noexcept
40
+ void fmpz_mod_mat_set(fmpz_mod_mat_t B, const fmpz_mod_mat_t A) noexcept
41
+ void fmpz_mod_mat_transpose(fmpz_mod_mat_t B, const fmpz_mod_mat_t A) noexcept
42
+ void fmpz_mod_mat_set_fmpz_mat(fmpz_mod_mat_t A, const fmpz_mat_t B) noexcept
43
+ void fmpz_mod_mat_get_fmpz_mat(fmpz_mat_t A, const fmpz_mod_mat_t B) noexcept
44
+ void fmpz_mod_mat_add(fmpz_mod_mat_t C, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B) noexcept
45
+ void fmpz_mod_mat_sub(fmpz_mod_mat_t C, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B) noexcept
46
+ void fmpz_mod_mat_neg(fmpz_mod_mat_t B, const fmpz_mod_mat_t A) noexcept
47
+ void fmpz_mod_mat_scalar_mul_si(fmpz_mod_mat_t B, const fmpz_mod_mat_t A, slong c) noexcept
48
+ void fmpz_mod_mat_scalar_mul_ui(fmpz_mod_mat_t B, const fmpz_mod_mat_t A, ulong c) noexcept
49
+ void fmpz_mod_mat_scalar_mul_fmpz(fmpz_mod_mat_t B, const fmpz_mod_mat_t A, fmpz_t c) noexcept
50
+ void fmpz_mod_mat_mul(fmpz_mod_mat_t C, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B) noexcept
51
+ void _fmpz_mod_mat_mul_classical_threaded_pool_op(fmpz_mod_mat_t D, const fmpz_mod_mat_t C, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B, int op, thread_pool_handle * threads, slong num_threads) noexcept
52
+ void _fmpz_mod_mat_mul_classical_threaded_op(fmpz_mod_mat_t D, const fmpz_mod_mat_t C, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B, int op) noexcept
53
+ void fmpz_mod_mat_mul_classical_threaded(fmpz_mod_mat_t C, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B) noexcept
54
+ void fmpz_mod_mat_sqr(fmpz_mod_mat_t B, const fmpz_mod_mat_t A) noexcept
55
+ void fmpz_mod_mat_mul_fmpz_vec(fmpz * c, const fmpz_mod_mat_t A, const fmpz * b, slong blen) noexcept
56
+ void fmpz_mod_mat_mul_fmpz_vec_ptr(fmpz * const * c, const fmpz_mod_mat_t A, const fmpz * const * b, slong blen) noexcept
57
+ void fmpz_mod_mat_fmpz_vec_mul(fmpz * c, const fmpz * a, slong alen, const fmpz_mod_mat_t B) noexcept
58
+ void fmpz_mod_mat_fmpz_vec_mul_ptr(fmpz * const * c, const fmpz * const * a, slong alen, const fmpz_mod_mat_t B) noexcept
59
+ void fmpz_mod_mat_trace(fmpz_t trace, const fmpz_mod_mat_t mat) noexcept
60
+ slong fmpz_mod_mat_rref(slong * perm, fmpz_mod_mat_t mat) noexcept
61
+ void fmpz_mod_mat_strong_echelon_form(fmpz_mod_mat_t mat) noexcept
62
+ slong fmpz_mod_mat_howell_form(fmpz_mod_mat_t mat) noexcept
63
+ int fmpz_mod_mat_inv(fmpz_mod_mat_t B, fmpz_mod_mat_t A) noexcept
64
+ slong fmpz_mod_mat_lu(slong * P, fmpz_mod_mat_t A, int rank_check) noexcept
65
+ void fmpz_mod_mat_solve_tril(fmpz_mod_mat_t X, const fmpz_mod_mat_t L, const fmpz_mod_mat_t B, int unit) noexcept
66
+ void fmpz_mod_mat_solve_triu(fmpz_mod_mat_t X, const fmpz_mod_mat_t U, const fmpz_mod_mat_t B, int unit) noexcept
67
+ int fmpz_mod_mat_solve(fmpz_mod_mat_t X, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B) noexcept
68
+ int fmpz_mod_mat_can_solve(fmpz_mod_mat_t X, const fmpz_mod_mat_t A, const fmpz_mod_mat_t B) noexcept
69
+ void fmpz_mod_mat_similarity(fmpz_mod_mat_t M, slong r, fmpz_t d) noexcept
70
+ void fmpz_mod_mat_charpoly(fmpz_mod_poly_t p, const fmpz_mod_mat_t M, const fmpz_mod_ctx_t ctx) noexcept
71
+ void fmpz_mod_mat_minpoly(fmpz_mod_poly_t p, const fmpz_mod_mat_t M, const fmpz_mod_ctx_t ctx) noexcept