passagemath-pari 10.6.32__cp314-cp314-musllinux_1_2_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.

Potentially problematic release.


This version of passagemath-pari might be problematic. Click here for more details.

Files changed (331) hide show
  1. PARIKernel/__init__.py +2 -0
  2. PARIKernel/__main__.py +5 -0
  3. PARIKernel/io.cpython-314-x86_64-linux-musl.so +0 -0
  4. PARIKernel/io.pxd +7 -0
  5. PARIKernel/io.pyx +84 -0
  6. PARIKernel/kernel.cpython-314-x86_64-linux-musl.so +0 -0
  7. PARIKernel/kernel.pyx +260 -0
  8. PARIKernel/paridecl.pxd +95 -0
  9. PARIKernel/svg.cpython-314-x86_64-linux-musl.so +0 -0
  10. PARIKernel/svg.pyx +52 -0
  11. cypari2/__init__.py +8 -0
  12. cypari2/auto_paridecl.pxd +1070 -0
  13. cypari2/closure.cpython-314-x86_64-linux-musl.so +0 -0
  14. cypari2/closure.pxd +5 -0
  15. cypari2/closure.pyx +246 -0
  16. cypari2/convert.cpython-314-x86_64-linux-musl.so +0 -0
  17. cypari2/convert.pxd +80 -0
  18. cypari2/convert.pyx +613 -0
  19. cypari2/custom_block.cpython-314-x86_64-linux-musl.so +0 -0
  20. cypari2/custom_block.pyx +30 -0
  21. cypari2/cypari.h +13 -0
  22. cypari2/gen.cpython-314-x86_64-linux-musl.so +0 -0
  23. cypari2/gen.pxd +69 -0
  24. cypari2/gen.pyx +4819 -0
  25. cypari2/handle_error.cpython-314-x86_64-linux-musl.so +0 -0
  26. cypari2/handle_error.pxd +7 -0
  27. cypari2/handle_error.pyx +232 -0
  28. cypari2/pari_instance.cpython-314-x86_64-linux-musl.so +0 -0
  29. cypari2/pari_instance.pxd +27 -0
  30. cypari2/pari_instance.pyx +1438 -0
  31. cypari2/paridecl.pxd +5353 -0
  32. cypari2/paripriv.pxd +34 -0
  33. cypari2/pycore_long.h +98 -0
  34. cypari2/pycore_long.pxd +9 -0
  35. cypari2/stack.cpython-314-x86_64-linux-musl.so +0 -0
  36. cypari2/stack.pxd +27 -0
  37. cypari2/stack.pyx +278 -0
  38. cypari2/string_utils.cpython-314-x86_64-linux-musl.so +0 -0
  39. cypari2/string_utils.pxd +29 -0
  40. cypari2/string_utils.pyx +65 -0
  41. cypari2/types.pxd +147 -0
  42. passagemath_pari-10.6.32.data/data/etc/jupyter/nbconfig/notebook.d/gp-mode.json +5 -0
  43. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/pari_jupyter/kernel.js +28 -0
  44. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/pari_jupyter/kernel.json +6 -0
  45. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/pari_jupyter/logo-64x64.png +0 -0
  46. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/xeus-gp/kernel.json +13 -0
  47. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/xeus-gp/logo-32x32.png +0 -0
  48. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/xeus-gp/logo-64x64.png +0 -0
  49. passagemath_pari-10.6.32.data/data/share/jupyter/kernels/xeus-gp/logo-svg.svg +75 -0
  50. passagemath_pari-10.6.32.data/data/share/jupyter/nbextensions/gp-mode/gp.js +284 -0
  51. passagemath_pari-10.6.32.data/data/share/jupyter/nbextensions/gp-mode/main.js +15 -0
  52. passagemath_pari-10.6.32.dist-info/METADATA +209 -0
  53. passagemath_pari-10.6.32.dist-info/RECORD +331 -0
  54. passagemath_pari-10.6.32.dist-info/WHEEL +5 -0
  55. passagemath_pari-10.6.32.dist-info/top_level.txt +4 -0
  56. passagemath_pari.libs/libcrypto-f04afe95.so.3 +0 -0
  57. passagemath_pari.libs/libflint-fd6f12fc.so.21.0.0 +0 -0
  58. passagemath_pari.libs/libgcc_s-0cd532bd.so.1 +0 -0
  59. passagemath_pari.libs/libgf2x-9e30c3e3.so.3.0.0 +0 -0
  60. passagemath_pari.libs/libgfortran-2c33b284.so.5.0.0 +0 -0
  61. passagemath_pari.libs/libgivaro-9a94c711.so.9.2.1 +0 -0
  62. passagemath_pari.libs/libgmp-0e7fc84e.so.10.5.0 +0 -0
  63. passagemath_pari.libs/libgmpxx-9e08595c.so.4.7.0 +0 -0
  64. passagemath_pari.libs/libgsl-42cda06f.so.28.0.0 +0 -0
  65. passagemath_pari.libs/libmpfr-aaecbfc0.so.6.2.1 +0 -0
  66. passagemath_pari.libs/libncursesw-9c9e32c3.so.6.5 +0 -0
  67. passagemath_pari.libs/libntl-26885ca2.so.44.0.1 +0 -0
  68. passagemath_pari.libs/libopenblasp-r0-905cb27d.3.29.so +0 -0
  69. passagemath_pari.libs/libpari-gmp-tls-f31f908f.so.2.17.2 +0 -0
  70. passagemath_pari.libs/libquadmath-bb76a5fc.so.0.0.0 +0 -0
  71. passagemath_pari.libs/libreadline-06542304.so.8.2 +0 -0
  72. passagemath_pari.libs/libstdc++-5d72f927.so.6.0.33 +0 -0
  73. passagemath_pari.libs/libuuid-f3770415.so.1.3.0 +0 -0
  74. passagemath_pari.libs/libxeus-735780ff.so.13.1.0 +0 -0
  75. passagemath_pari.libs/libxeus-zmq-c68577b4.so.6.0.1 +0 -0
  76. passagemath_pari.libs/libzmq-1ba9a3da.so.5.2.5 +0 -0
  77. sage/all__sagemath_pari.py +26 -0
  78. sage/databases/all__sagemath_pari.py +7 -0
  79. sage/databases/conway.py +274 -0
  80. sage/ext/all__sagemath_pari.py +1 -0
  81. sage/ext/memory.cpython-314-x86_64-linux-musl.so +0 -0
  82. sage/ext/memory.pyx +98 -0
  83. sage/ext_data/pari/buzzard/DimensionSk.g +286 -0
  84. sage/ext_data/pari/buzzard/Tpprog.g +179 -0
  85. sage/ext_data/pari/buzzard/genusn.g +129 -0
  86. sage/ext_data/pari/dokchitser/computel.gp +740 -0
  87. sage/ext_data/pari/dokchitser/computel.gp.template +740 -0
  88. sage/ext_data/pari/dokchitser/ex-bsw +43 -0
  89. sage/ext_data/pari/dokchitser/ex-chgen +48 -0
  90. sage/ext_data/pari/dokchitser/ex-chqua +37 -0
  91. sage/ext_data/pari/dokchitser/ex-delta +35 -0
  92. sage/ext_data/pari/dokchitser/ex-eisen +30 -0
  93. sage/ext_data/pari/dokchitser/ex-gen2 +38 -0
  94. sage/ext_data/pari/dokchitser/ex-gen3 +49 -0
  95. sage/ext_data/pari/dokchitser/ex-gen4 +54 -0
  96. sage/ext_data/pari/dokchitser/ex-nf +48 -0
  97. sage/ext_data/pari/dokchitser/ex-shin +50 -0
  98. sage/ext_data/pari/dokchitser/ex-tau2 +30 -0
  99. sage/ext_data/pari/dokchitser/ex-zeta +27 -0
  100. sage/ext_data/pari/dokchitser/ex-zeta2 +47 -0
  101. sage/ext_data/pari/dokchitser/testall +13 -0
  102. sage/ext_data/pari/simon/ell.gp +2129 -0
  103. sage/ext_data/pari/simon/ellQ.gp +2151 -0
  104. sage/ext_data/pari/simon/ellcommon.gp +126 -0
  105. sage/ext_data/pari/simon/qfsolve.gp +722 -0
  106. sage/ext_data/pari/simon/resultant3.gp +306 -0
  107. sage/groups/all__sagemath_pari.py +3 -0
  108. sage/groups/pari_group.py +175 -0
  109. sage/interfaces/all__sagemath_pari.py +1 -0
  110. sage/interfaces/genus2reduction.py +464 -0
  111. sage/interfaces/gp.py +1114 -0
  112. sage/libs/all__sagemath_pari.py +2 -0
  113. sage/libs/linkages/__init__.py +1 -0
  114. sage/libs/linkages/padics/API.pxi +617 -0
  115. sage/libs/linkages/padics/Polynomial_ram.pxi +388 -0
  116. sage/libs/linkages/padics/Polynomial_shared.pxi +554 -0
  117. sage/libs/linkages/padics/__init__.py +1 -0
  118. sage/libs/linkages/padics/fmpz_poly_unram.pxi +869 -0
  119. sage/libs/linkages/padics/mpz.pxi +691 -0
  120. sage/libs/linkages/padics/relaxed/API.pxi +518 -0
  121. sage/libs/linkages/padics/relaxed/__init__.py +1 -0
  122. sage/libs/linkages/padics/relaxed/flint.pxi +543 -0
  123. sage/libs/linkages/padics/unram_shared.pxi +247 -0
  124. sage/libs/pari/__init__.py +210 -0
  125. sage/libs/pari/all.py +5 -0
  126. sage/libs/pari/convert_flint.cpython-314-x86_64-linux-musl.so +0 -0
  127. sage/libs/pari/convert_flint.pxd +14 -0
  128. sage/libs/pari/convert_flint.pyx +159 -0
  129. sage/libs/pari/convert_gmp.cpython-314-x86_64-linux-musl.so +0 -0
  130. sage/libs/pari/convert_gmp.pxd +14 -0
  131. sage/libs/pari/convert_gmp.pyx +210 -0
  132. sage/libs/pari/convert_sage.cpython-314-x86_64-linux-musl.so +0 -0
  133. sage/libs/pari/convert_sage.pxd +16 -0
  134. sage/libs/pari/convert_sage.pyx +588 -0
  135. sage/libs/pari/convert_sage_complex_double.cpython-314-x86_64-linux-musl.so +0 -0
  136. sage/libs/pari/convert_sage_complex_double.pxd +14 -0
  137. sage/libs/pari/convert_sage_complex_double.pyx +132 -0
  138. sage/libs/pari/convert_sage_matrix.cpython-314-x86_64-linux-musl.so +0 -0
  139. sage/libs/pari/convert_sage_matrix.pyx +106 -0
  140. sage/libs/pari/convert_sage_real_double.cpython-314-x86_64-linux-musl.so +0 -0
  141. sage/libs/pari/convert_sage_real_double.pxd +5 -0
  142. sage/libs/pari/convert_sage_real_double.pyx +14 -0
  143. sage/libs/pari/convert_sage_real_mpfr.cpython-314-x86_64-linux-musl.so +0 -0
  144. sage/libs/pari/convert_sage_real_mpfr.pxd +7 -0
  145. sage/libs/pari/convert_sage_real_mpfr.pyx +108 -0
  146. sage/libs/pari/misc.cpython-314-x86_64-linux-musl.so +0 -0
  147. sage/libs/pari/misc.pxd +4 -0
  148. sage/libs/pari/misc.pyx +26 -0
  149. sage/libs/pari/tests.py +1848 -0
  150. sage/matrix/all__sagemath_pari.py +1 -0
  151. sage/matrix/matrix_integer_pari.cpython-314-x86_64-linux-musl.so +0 -0
  152. sage/matrix/matrix_integer_pari.pyx +187 -0
  153. sage/matrix/matrix_rational_pari.cpython-314-x86_64-linux-musl.so +0 -0
  154. sage/matrix/matrix_rational_pari.pyx +160 -0
  155. sage/quadratic_forms/all__sagemath_pari.py +10 -0
  156. sage/quadratic_forms/genera/all.py +9 -0
  157. sage/quadratic_forms/genera/genus.py +3506 -0
  158. sage/quadratic_forms/genera/normal_form.py +1519 -0
  159. sage/quadratic_forms/genera/spinor_genus.py +243 -0
  160. sage/quadratic_forms/qfsolve.py +255 -0
  161. sage/quadratic_forms/quadratic_form__automorphisms.py +427 -0
  162. sage/quadratic_forms/quadratic_form__genus.py +141 -0
  163. sage/quadratic_forms/quadratic_form__local_density_interfaces.py +140 -0
  164. sage/quadratic_forms/quadratic_form__local_normal_form.py +421 -0
  165. sage/quadratic_forms/quadratic_form__local_representation_conditions.py +889 -0
  166. sage/quadratic_forms/quadratic_form__mass.py +69 -0
  167. sage/quadratic_forms/quadratic_form__mass__Conway_Sloane_masses.py +663 -0
  168. sage/quadratic_forms/quadratic_form__mass__Siegel_densities.py +373 -0
  169. sage/quadratic_forms/quadratic_form__siegel_product.py +198 -0
  170. sage/quadratic_forms/special_values.py +323 -0
  171. sage/rings/all__sagemath_pari.py +15 -0
  172. sage/rings/factorint_pari.cpython-314-x86_64-linux-musl.so +0 -0
  173. sage/rings/factorint_pari.pyx +80 -0
  174. sage/rings/finite_rings/all__sagemath_pari.py +1 -0
  175. sage/rings/finite_rings/element_givaro.cpython-314-x86_64-linux-musl.so +0 -0
  176. sage/rings/finite_rings/element_givaro.pxd +91 -0
  177. sage/rings/finite_rings/element_givaro.pyx +1769 -0
  178. sage/rings/finite_rings/element_ntl_gf2e.cpython-314-x86_64-linux-musl.so +0 -0
  179. sage/rings/finite_rings/element_ntl_gf2e.pxd +22 -0
  180. sage/rings/finite_rings/element_ntl_gf2e.pyx +1333 -0
  181. sage/rings/finite_rings/element_pari_ffelt.cpython-314-x86_64-linux-musl.so +0 -0
  182. sage/rings/finite_rings/element_pari_ffelt.pxd +13 -0
  183. sage/rings/finite_rings/element_pari_ffelt.pyx +1441 -0
  184. sage/rings/finite_rings/finite_field_givaro.py +612 -0
  185. sage/rings/finite_rings/finite_field_pari_ffelt.py +238 -0
  186. sage/rings/finite_rings/hom_finite_field_givaro.cpython-314-x86_64-linux-musl.so +0 -0
  187. sage/rings/finite_rings/hom_finite_field_givaro.pxd +28 -0
  188. sage/rings/finite_rings/hom_finite_field_givaro.pyx +280 -0
  189. sage/rings/finite_rings/residue_field_givaro.cpython-314-x86_64-linux-musl.so +0 -0
  190. sage/rings/finite_rings/residue_field_givaro.pyx +133 -0
  191. sage/rings/finite_rings/residue_field_pari_ffelt.cpython-314-x86_64-linux-musl.so +0 -0
  192. sage/rings/finite_rings/residue_field_pari_ffelt.pyx +128 -0
  193. sage/rings/function_field/all__sagemath_pari.py +1 -0
  194. sage/rings/function_field/valuation.py +1450 -0
  195. sage/rings/function_field/valuation_ring.py +212 -0
  196. sage/rings/number_field/all__sagemath_pari.py +14 -0
  197. sage/rings/number_field/totallyreal.cpython-314-x86_64-linux-musl.so +0 -0
  198. sage/rings/number_field/totallyreal.pyx +509 -0
  199. sage/rings/number_field/totallyreal_data.cpython-314-x86_64-linux-musl.so +0 -0
  200. sage/rings/number_field/totallyreal_data.pxd +26 -0
  201. sage/rings/number_field/totallyreal_data.pyx +928 -0
  202. sage/rings/number_field/totallyreal_phc.py +144 -0
  203. sage/rings/number_field/totallyreal_rel.py +1018 -0
  204. sage/rings/padics/CA_template.pxi +1847 -0
  205. sage/rings/padics/CA_template_header.pxi +50 -0
  206. sage/rings/padics/CR_template.pxi +2563 -0
  207. sage/rings/padics/CR_template_header.pxi +57 -0
  208. sage/rings/padics/FM_template.pxi +1575 -0
  209. sage/rings/padics/FM_template_header.pxi +50 -0
  210. sage/rings/padics/FP_template.pxi +2176 -0
  211. sage/rings/padics/FP_template_header.pxi +57 -0
  212. sage/rings/padics/all.py +3 -0
  213. sage/rings/padics/all__sagemath_pari.py +11 -0
  214. sage/rings/padics/common_conversion.cpython-314-x86_64-linux-musl.so +0 -0
  215. sage/rings/padics/common_conversion.pxd +15 -0
  216. sage/rings/padics/common_conversion.pyx +508 -0
  217. sage/rings/padics/eisenstein_extension_generic.py +232 -0
  218. sage/rings/padics/factory.py +3623 -0
  219. sage/rings/padics/generic_nodes.py +1615 -0
  220. sage/rings/padics/lattice_precision.py +2889 -0
  221. sage/rings/padics/morphism.cpython-314-x86_64-linux-musl.so +0 -0
  222. sage/rings/padics/morphism.pxd +11 -0
  223. sage/rings/padics/morphism.pyx +366 -0
  224. sage/rings/padics/padic_base_generic.py +467 -0
  225. sage/rings/padics/padic_base_leaves.py +1235 -0
  226. sage/rings/padics/padic_capped_absolute_element.cpython-314-x86_64-linux-musl.so +0 -0
  227. sage/rings/padics/padic_capped_absolute_element.pxd +15 -0
  228. sage/rings/padics/padic_capped_absolute_element.pyx +520 -0
  229. sage/rings/padics/padic_capped_relative_element.cpython-314-x86_64-linux-musl.so +0 -0
  230. sage/rings/padics/padic_capped_relative_element.pxd +14 -0
  231. sage/rings/padics/padic_capped_relative_element.pyx +614 -0
  232. sage/rings/padics/padic_extension_generic.py +990 -0
  233. sage/rings/padics/padic_extension_leaves.py +738 -0
  234. sage/rings/padics/padic_fixed_mod_element.cpython-314-x86_64-linux-musl.so +0 -0
  235. sage/rings/padics/padic_fixed_mod_element.pxd +15 -0
  236. sage/rings/padics/padic_fixed_mod_element.pyx +584 -0
  237. sage/rings/padics/padic_floating_point_element.cpython-314-x86_64-linux-musl.so +0 -0
  238. sage/rings/padics/padic_floating_point_element.pxd +14 -0
  239. sage/rings/padics/padic_floating_point_element.pyx +447 -0
  240. sage/rings/padics/padic_generic_element.cpython-314-x86_64-linux-musl.so +0 -0
  241. sage/rings/padics/padic_generic_element.pxd +48 -0
  242. sage/rings/padics/padic_generic_element.pyx +4642 -0
  243. sage/rings/padics/padic_lattice_element.py +1342 -0
  244. sage/rings/padics/padic_printing.cpython-314-x86_64-linux-musl.so +0 -0
  245. sage/rings/padics/padic_printing.pxd +38 -0
  246. sage/rings/padics/padic_printing.pyx +1505 -0
  247. sage/rings/padics/padic_relaxed_element.cpython-314-x86_64-linux-musl.so +0 -0
  248. sage/rings/padics/padic_relaxed_element.pxd +56 -0
  249. sage/rings/padics/padic_relaxed_element.pyx +18 -0
  250. sage/rings/padics/padic_relaxed_errors.cpython-314-x86_64-linux-musl.so +0 -0
  251. sage/rings/padics/padic_relaxed_errors.pxd +11 -0
  252. sage/rings/padics/padic_relaxed_errors.pyx +71 -0
  253. sage/rings/padics/padic_template_element.pxi +1212 -0
  254. sage/rings/padics/padic_template_element_header.pxi +50 -0
  255. sage/rings/padics/padic_valuation.py +1423 -0
  256. sage/rings/padics/pow_computer_flint.cpython-314-x86_64-linux-musl.so +0 -0
  257. sage/rings/padics/pow_computer_flint.pxd +38 -0
  258. sage/rings/padics/pow_computer_flint.pyx +641 -0
  259. sage/rings/padics/pow_computer_relative.cpython-314-x86_64-linux-musl.so +0 -0
  260. sage/rings/padics/pow_computer_relative.pxd +29 -0
  261. sage/rings/padics/pow_computer_relative.pyx +415 -0
  262. sage/rings/padics/qadic_flint_CA.cpython-314-x86_64-linux-musl.so +0 -0
  263. sage/rings/padics/qadic_flint_CA.pxd +21 -0
  264. sage/rings/padics/qadic_flint_CA.pyx +130 -0
  265. sage/rings/padics/qadic_flint_CR.cpython-314-x86_64-linux-musl.so +0 -0
  266. sage/rings/padics/qadic_flint_CR.pxd +13 -0
  267. sage/rings/padics/qadic_flint_CR.pyx +172 -0
  268. sage/rings/padics/qadic_flint_FM.cpython-314-x86_64-linux-musl.so +0 -0
  269. sage/rings/padics/qadic_flint_FM.pxd +14 -0
  270. sage/rings/padics/qadic_flint_FM.pyx +111 -0
  271. sage/rings/padics/qadic_flint_FP.cpython-314-x86_64-linux-musl.so +0 -0
  272. sage/rings/padics/qadic_flint_FP.pxd +12 -0
  273. sage/rings/padics/qadic_flint_FP.pyx +165 -0
  274. sage/rings/padics/relative_extension_leaves.py +429 -0
  275. sage/rings/padics/relative_ramified_CA.cpython-314-x86_64-linux-musl.so +0 -0
  276. sage/rings/padics/relative_ramified_CA.pxd +9 -0
  277. sage/rings/padics/relative_ramified_CA.pyx +33 -0
  278. sage/rings/padics/relative_ramified_CR.cpython-314-x86_64-linux-musl.so +0 -0
  279. sage/rings/padics/relative_ramified_CR.pxd +8 -0
  280. sage/rings/padics/relative_ramified_CR.pyx +33 -0
  281. sage/rings/padics/relative_ramified_FM.cpython-314-x86_64-linux-musl.so +0 -0
  282. sage/rings/padics/relative_ramified_FM.pxd +9 -0
  283. sage/rings/padics/relative_ramified_FM.pyx +33 -0
  284. sage/rings/padics/relative_ramified_FP.cpython-314-x86_64-linux-musl.so +0 -0
  285. sage/rings/padics/relative_ramified_FP.pxd +8 -0
  286. sage/rings/padics/relative_ramified_FP.pyx +33 -0
  287. sage/rings/padics/relaxed_template.pxi +4229 -0
  288. sage/rings/padics/relaxed_template_header.pxi +160 -0
  289. sage/rings/padics/tests.py +35 -0
  290. sage/rings/padics/tutorial.py +341 -0
  291. sage/rings/padics/unramified_extension_generic.py +335 -0
  292. sage/rings/padics/witt_vector.py +917 -0
  293. sage/rings/padics/witt_vector_ring.py +934 -0
  294. sage/rings/pari_ring.py +235 -0
  295. sage/rings/polynomial/all__sagemath_pari.py +1 -0
  296. sage/rings/polynomial/padics/all.py +1 -0
  297. sage/rings/polynomial/padics/polynomial_padic.py +360 -0
  298. sage/rings/polynomial/padics/polynomial_padic_capped_relative_dense.py +1324 -0
  299. sage/rings/polynomial/padics/polynomial_padic_flat.py +72 -0
  300. sage/rings/power_series_pari.cpython-314-x86_64-linux-musl.so +0 -0
  301. sage/rings/power_series_pari.pxd +6 -0
  302. sage/rings/power_series_pari.pyx +934 -0
  303. sage/rings/tate_algebra.py +1282 -0
  304. sage/rings/tate_algebra_element.cpython-314-x86_64-linux-musl.so +0 -0
  305. sage/rings/tate_algebra_element.pxd +49 -0
  306. sage/rings/tate_algebra_element.pyx +3464 -0
  307. sage/rings/tate_algebra_ideal.cpython-314-x86_64-linux-musl.so +0 -0
  308. sage/rings/tate_algebra_ideal.pxd +7 -0
  309. sage/rings/tate_algebra_ideal.pyx +1307 -0
  310. sage/rings/valuation/all.py +7 -0
  311. sage/rings/valuation/augmented_valuation.py +2118 -0
  312. sage/rings/valuation/developing_valuation.py +362 -0
  313. sage/rings/valuation/gauss_valuation.py +812 -0
  314. sage/rings/valuation/inductive_valuation.py +1686 -0
  315. sage/rings/valuation/limit_valuation.py +946 -0
  316. sage/rings/valuation/mapped_valuation.py +656 -0
  317. sage/rings/valuation/scaled_valuation.py +322 -0
  318. sage/rings/valuation/trivial_valuation.py +382 -0
  319. sage/rings/valuation/valuation.py +1119 -0
  320. sage/rings/valuation/valuation_space.py +1615 -0
  321. sage/rings/valuation/valuations_catalog.py +10 -0
  322. sage/rings/valuation/value_group.py +697 -0
  323. sage/schemes/all__sagemath_pari.py +1 -0
  324. sage/schemes/elliptic_curves/all__sagemath_pari.py +1 -0
  325. sage/schemes/elliptic_curves/descent_two_isogeny_pari.cpython-314-x86_64-linux-musl.so +0 -0
  326. sage/schemes/elliptic_curves/descent_two_isogeny_pari.pyx +46 -0
  327. sage_wheels/bin/gp +0 -0
  328. sage_wheels/bin/gp2c +0 -0
  329. sage_wheels/bin/gp2c-run +57 -0
  330. sage_wheels/bin/xeus-gp +0 -0
  331. sage_wheels/share/gp2c/func.dsc +18414 -0
@@ -0,0 +1,518 @@
1
+ # sage_setup: distribution = sagemath-pari
2
+ r"""
3
+ This file defines the common API for relaxed `p`-adic numbers.
4
+
5
+ Let `K` be a given `p`-adic ring/field with uniformizer `\pi`.
6
+ In the relaxed model, we represent elements of `K` as (Laurent) polynomials over an
7
+ explicit exact subring of `K` (whose evaluation at `\pi` are good approximations
8
+ of the element we want to represent).
9
+
10
+ The coefficients of the aforementioned polynomials are called the *digits*.
11
+ They are intended to be chosen in a fixed set of small representatives of elements
12
+ of the residue field of `K`, but we do not impose this condition because we want
13
+ to keep stability under addition and multiplication.
14
+ On the contrary, we let the digits be arbitrary elements in the exact subring
15
+ but provide functions to reduce digits (i.e. replace them by the representative
16
+ of its reduction modulo `\pi`) and propagate the carry accordingly.
17
+
18
+ Our API is based on two template types (which have to be instantiated in
19
+ implementations):
20
+
21
+ - ``cdigit`` -- the type of a digit
22
+
23
+ - ``celement`` -- the type of an element (which is then a polynomial whose
24
+ coefficients are elements of type ``cdigit``)
25
+
26
+ The remainder of the file gives the function signatures.
27
+
28
+ AUTHOR:
29
+
30
+ - Xavier Caruso (2021-01): initial version
31
+ """
32
+
33
+ # ****************************************************************************
34
+ # Copyright (C) 2021 Xavier Caruso <xavier.caruso@normalesup.org>
35
+ #
36
+ # This program is free software: you can redistribute it and/or modify
37
+ # it under the terms of the GNU General Public License as published by
38
+ # the Free Software Foundation, either version 2 of the License, or
39
+ # (at your option) any later version.
40
+ # http://www.gnu.org/licenses/
41
+ # ****************************************************************************
42
+
43
+
44
+ # Operations on digits
45
+ ######################
46
+
47
+ cdef cdigit digit_zero
48
+ digit_init(digit_zero)
49
+
50
+ cdef inline void digit_init(cdigit a):
51
+ r"""
52
+ Initialize a digit and set to it the value `0`.
53
+
54
+ INPUT:
55
+
56
+ - ``a`` -- the ``cdigit`` to initialize
57
+ """
58
+ pass
59
+
60
+ cdef inline void digit_clear(cdigit a):
61
+ r"""
62
+ Deallocate memory assigned to a digit.
63
+
64
+ INPUT:
65
+
66
+ - ``a`` -- the ``cdigit`` to deallocate
67
+ """
68
+ pass
69
+
70
+ # get and set
71
+
72
+ cdef inline Element digit_get_sage(cdigit a):
73
+ r"""
74
+ Convert a digit to a Sage element.
75
+
76
+ INPUT:
77
+
78
+ - ``a`` -- a ``cdigit``
79
+
80
+ OUTPUT:
81
+
82
+ A Sage element representing the same digit.
83
+ """
84
+ pass
85
+
86
+ cdef inline void digit_set(cdigit a, cdigit b):
87
+ r"""
88
+ Set up a digit.
89
+
90
+ INPUT:
91
+
92
+ - ``a`` -- the ``cdigit`` to set up
93
+ - ``b`` -- the ``cdigit`` containing the value to assign
94
+ """
95
+ pass
96
+
97
+ cdef inline void digit_set_ui(cdigit a, long b):
98
+ r"""
99
+ Set an integral value of a digit.
100
+
101
+ INPUT:
102
+
103
+ - ``a`` -- the ``cdigit`` to set up
104
+ - ``b`` -- integer; the value of assign
105
+ """
106
+ pass
107
+
108
+ cdef inline void digit_set_sage(cdigit a, Element b):
109
+ r"""
110
+ Set the value of a digit.
111
+
112
+ INPUT:
113
+
114
+ - ``a`` -- the ``cdigit`` to be assigned
115
+ - ``b`` -- a Sage element containing the value to assign
116
+ """
117
+ pass
118
+
119
+ # comparisons
120
+
121
+ cdef inline bint digit_equal(cdigit a, cdigit b):
122
+ r"""
123
+ Comparison of two digits.
124
+
125
+ INPUT:
126
+
127
+ - ``a`` -- a ``cdigit``
128
+ - ``b`` -- a ``cdigit``
129
+
130
+ OUTPUT:
131
+
132
+ `1` of `a` is equal to `b`, `0` otherwise
133
+ """
134
+ pass
135
+
136
+ cdef inline bint digit_equal_ui(cdigit a, long b):
137
+ r"""
138
+ Comparison of a digit and an integer.
139
+
140
+ INPUT:
141
+
142
+ - ``a`` -- a ``cdigit``
143
+ - ``b`` -- integer
144
+
145
+ OUTPUT:
146
+
147
+ `1` of `a` is equal to `b`, `0` otherwise
148
+ """
149
+ pass
150
+
151
+ cdef inline bint digit_is_zero(cdigit a):
152
+ r"""
153
+ Comparison to zero.
154
+
155
+ INPUT:
156
+
157
+ - ``a`` -- a ``cdigit``
158
+
159
+ OUTPUT:
160
+
161
+ `1` of `a` vanishes, `0` otherwise
162
+ """
163
+ pass
164
+
165
+ cdef inline void digit_random_init(randgen generator, long seed):
166
+ r"""
167
+ Initialize the random generator with a new seed.
168
+
169
+ INPUT:
170
+
171
+ - ``generator`` -- the generator to initialize
172
+ - ``seed`` -- the seed
173
+ """
174
+ pass
175
+
176
+ cdef inline void digit_random(cdigit res, PowComputer_class prime_pow):
177
+ r"""
178
+ Set a digit to a random value in the distinguished set of representatives.
179
+
180
+ INPUT:
181
+
182
+ - ``res`` -- the ``cdigit`` to be assigned
183
+ - ``prime_pow`` -- the PowComputer for the ring
184
+ """
185
+ pass
186
+
187
+ # operations
188
+
189
+ cdef inline void digit_add(cdigit res, cdigit a, cdigit b):
190
+ r"""
191
+ Add two digits.
192
+
193
+ INPUT:
194
+
195
+ - ``res`` -- a ``cdigit`` to store the result
196
+ - ``a`` -- a ``cdigit``, the first summand
197
+ - ``b`` -- a ``cdigit``, the second summand
198
+ """
199
+ pass
200
+
201
+ cdef inline void digit_sub(cdigit res, cdigit a, cdigit b):
202
+ r"""
203
+ Subtract two digits.
204
+
205
+ INPUT:
206
+
207
+ - ``res`` -- a ``cdigit`` to store the result
208
+ - ``a`` -- a ``cdigit``, the minuend
209
+ - ``b`` -- a ``cdigit``, the subtrahend
210
+ """
211
+ pass
212
+
213
+ cdef inline void digit_mul(cdigit res, cdigit a, cdigit b):
214
+ r"""
215
+ Multiply two digits.
216
+
217
+ INPUT:
218
+
219
+ - ``res`` -- a ``cdigit`` to store the result
220
+ - ``a`` -- a ``cdigit``, the first factor
221
+ - ``b`` -- a ``cdigit``, the second factor
222
+ """
223
+ pass
224
+
225
+ cdef inline void digit_mod(cdigit res, cdigit a, PowComputer_class prime_pow):
226
+ r"""
227
+ Reduce a digit modulo the uniformizer.
228
+
229
+ INPUT:
230
+
231
+ - ``res`` -- a ``cdigit`` to store the result
232
+ - ``a`` -- a ``cdigit``, the digit to reduce
233
+ - ``prime_pow`` -- the PowComputer for the ring
234
+ """
235
+ pass
236
+
237
+ cdef inline void digit_quorem(cdigit quo, cdigit rem, cdigit a, PowComputer_class prime_pow):
238
+ r"""
239
+ Reduce a digit modulo the uniformizer and keep the carry.
240
+
241
+ INPUT:
242
+
243
+ - ``quo`` -- a ``cdigit`` to store the carry
244
+ - ``rem`` -- a ``cdigit`` to store the reduction
245
+ - ``a`` -- a ``cdigit``, the digit to reduce
246
+ - ``prime_pow`` -- the PowComputer for the ring
247
+ """
248
+ pass
249
+
250
+ cdef inline void digit_smallest(cdigit res, cdigit carry, cdigit a, PowComputer_class prime_pow):
251
+ r"""
252
+ Compute the smallest representative of a digit.
253
+
254
+ INPUT:
255
+
256
+ - ``res`` -- a ``cdigit`` to store the smallest representative
257
+ - ``carry`` -- a ``cdigit`` to store the carry
258
+ - ``a`` -- a ``cdigit``, the digit to reduce
259
+ - ``prime_pow`` -- the PowComputer for the ring
260
+ """
261
+ pass
262
+
263
+ cdef inline void digit_inv(cdigit res, cdigit a, PowComputer_class prime_pow):
264
+ r"""
265
+ Compute the multiplicative inverse of a digit modulo the uniformizer.
266
+
267
+ INPUT:
268
+
269
+ - ``res`` -- a ``cdigit`` to store the result
270
+ - ``a`` -- a ``cdigit``, the digit to invert
271
+ - ``prime_pow`` -- the PowComputer for the ring
272
+ """
273
+ pass
274
+
275
+ cdef bint digit_sqrt(cdigit ans, cdigit x, PowComputer_class prime_pow):
276
+ r"""
277
+ Compute the square root of a digit modulo the uniformizer.
278
+
279
+ INPUT:
280
+
281
+ - ``res`` -- a ``cdigit`` to store the result
282
+ - ``a`` -- a ``cdigit``, the digit to square root
283
+ - ``prime_pow`` -- the PowComputer for the ring
284
+ """
285
+ pass
286
+
287
+
288
+ # Operations on elements
289
+ ########################
290
+
291
+ cdef inline void element_init(celement x):
292
+ r"""
293
+ Initialize an element.
294
+
295
+ INPUT:
296
+
297
+ - ``x`` -- the ``celement`` to initialize
298
+ """
299
+ pass
300
+
301
+ cdef inline void element_clear(celement x):
302
+ r"""
303
+ Deallocate memory assigned to an element.
304
+
305
+ INPUT:
306
+
307
+ - ``x`` -- the ``celement`` to deallocate
308
+ """
309
+ pass
310
+
311
+ # get and set
312
+
313
+ cdef inline Element element_get_sage(celement x, PowComputer_class prime_pow):
314
+ r"""
315
+ Convert a digit to a Sage element.
316
+
317
+ INPUT:
318
+
319
+ - ``x`` -- a ``celement``
320
+ - ``prime_pow`` -- the PowComputer for the ring
321
+
322
+ OUTPUT:
323
+
324
+ A Sage `p`-adic representing the same element.
325
+ """
326
+ pass
327
+
328
+ cdef inline void element_set(celement x, celement y):
329
+ r"""
330
+ Set an element.
331
+
332
+ INPUT:
333
+
334
+ - ``x`` -- the ``celement`` to be assigned
335
+ - ``y`` -- the ``celement`` containing the value to assign
336
+ """
337
+ pass
338
+
339
+ # get and set digits
340
+
341
+ cdef inline cdigit element_get_digit(celement x, long i):
342
+ r"""
343
+ Return the `i`-th coefficient of `x`.
344
+
345
+ INPUT:
346
+
347
+ - ``x`` -- a ``celement``
348
+ - ``i`` -- integer
349
+ """
350
+ pass
351
+
352
+ cdef inline void element_get_slice(celement res, celement x, long start, long length):
353
+ r"""
354
+ Select a slice of an element.
355
+
356
+ INPUT:
357
+
358
+ - ``res`` -- a ``celement`` to store the slice
359
+ - ``x`` -- a ``celement``, the element from which the slice is extracted
360
+ - ``start`` -- integer; the start position of the slice
361
+ - ``length`` -- integer; the length of the slice
362
+
363
+ .. NOTE::
364
+
365
+ This function only sets up a pointer to the requested slice
366
+ (the slice is not copied). Hence any future modification
367
+ of the slice ``res`` will affect the container ``x``.
368
+ """
369
+ pass
370
+
371
+ cdef inline void element_set_digit(celement x, cdigit a, long i):
372
+ r"""
373
+ Set `i`-th coefficient of `x` to the value `a`.
374
+
375
+ INPUT:
376
+
377
+ - ``x`` -- a ``celement``
378
+ - ``a`` -- a ``cdigit``
379
+ - ``i`` -- integer
380
+ """
381
+ pass
382
+
383
+ cdef inline void element_set_digit_ui(celement x, long a, long i):
384
+ r"""
385
+ Set `i`-th coefficient of `x` to the value `a`.
386
+
387
+ INPUT:
388
+
389
+ - ``x`` -- a ``celement``
390
+ - ``a`` -- integer
391
+ - ``i`` -- integer
392
+ """
393
+ pass
394
+
395
+ cdef inline void element_set_digit_sage(celement x, Element a, long i):
396
+ r"""
397
+ Set `i`-th coefficient of `x` to the value `a`.
398
+
399
+ INPUT:
400
+
401
+ - ``x`` -- a ``celement``
402
+ - ``a`` -- a Sage element
403
+ - ``i`` -- integer
404
+ """
405
+ pass
406
+
407
+ # operations
408
+
409
+ cdef inline void element_iadd_digit(celement x, cdigit a, long i):
410
+ r"""
411
+ Inplace addition:
412
+ add `a` to the `i`-th coefficient of `x`.
413
+
414
+ INPUT:
415
+
416
+ - ``x`` -- a ``celement``
417
+ - ``a`` -- a ``cdigit``
418
+ - ``i`` -- integer
419
+ """
420
+ pass
421
+
422
+ cdef inline void element_isub_digit(celement x, cdigit a, long i):
423
+ r"""
424
+ Inplace subtraction:
425
+ subtract `a` to the `i`-th coefficient of `x`.
426
+
427
+ INPUT:
428
+
429
+ - ``x`` -- a ``celement``
430
+ - ``a`` -- a ``cdigit``
431
+ - ``i`` -- integer
432
+ """
433
+ pass
434
+
435
+ cdef inline void element_iadd_slice(celement x, celement slice, long start):
436
+ r"""
437
+ Inplace addition:
438
+ add a slice to an element
439
+
440
+ INPUT:
441
+
442
+ - ``x`` -- a ``celement``, the element to update
443
+ - ``slice`` -- a ``celement``, the slice to be added
444
+ - ``start`` -- the position from which the slice will be added
445
+ """
446
+ pass
447
+
448
+ cdef inline void element_scalarmul(celement res, celement x, cdigit a):
449
+ r"""
450
+ Scalar multiplication.
451
+
452
+ INPUT:
453
+
454
+ - ``res`` -- a ``celement``, the element to store the result
455
+ - ``x`` -- a ``celement``, the multiplicand
456
+ - ``a`` -- a ``cdigit``, the multiplier
457
+ """
458
+ pass
459
+
460
+ cdef inline void element_mul(celement res, celement x, celement y):
461
+ r"""
462
+ Multiplication.
463
+
464
+ INPUT:
465
+
466
+ - ``res`` -- a ``celement``, the element to store the result
467
+ - ``x`` -- a ``celement``, the first factor
468
+ - ``y`` -- a ``celement``, the second factor
469
+ """
470
+ pass
471
+
472
+ cdef inline void element_reduce_digit(celement x, long i, PowComputer_class prime_pow):
473
+ r"""
474
+ Reduce the `i`-th digit of `x` and propagate carry.
475
+
476
+ INPUT:
477
+
478
+ - ``x`` -- a ``celement``, the element to update
479
+ - ``i`` -- integer
480
+ - ``prime_pow`` -- the PowComputer for the ring
481
+ """
482
+ pass
483
+
484
+ cdef inline void element_reducesmall_digit(fmpz_poly_t x, long i, PowComputer_flint prime_pow):
485
+ r"""
486
+ Reduce the `i`-th digit of `x` and propagate carry,
487
+ assuming that `x` is between `0` and `2*p - 1`.
488
+
489
+ INPUT:
490
+
491
+ - ``x`` -- a ``celement``, the element to update
492
+ - ``i`` -- integer
493
+ - ``prime_pow`` -- the PowComputer for the ring
494
+ """
495
+ pass
496
+
497
+ cdef inline void element_reduceneg_digit(fmpz_poly_t x, long i, PowComputer_flint prime_pow):
498
+ r"""
499
+ Reduce the `i`-th digit of `x` and propagate carry,
500
+ assuming that `x` is between `-p` and `p-1`.
501
+
502
+ INPUT:
503
+
504
+ - ``x`` -- a ``celement``, the element to update
505
+ - ``i`` -- integer
506
+ - ``prime_pow`` -- the PowComputer for the ring
507
+ """
508
+ pass
509
+
510
+ cdef inline void element_shift_right(celement x):
511
+ r"""
512
+ Remove the first digit of ``x``.
513
+
514
+ INPUT:
515
+
516
+ - ``x`` -- a ``celement``
517
+ """
518
+ pass
@@ -0,0 +1 @@
1
+ # sage_setup: distribution = sagemath-pari