passagemath-singular 10.6.31rc3__cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.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-singular might be problematic. Click here for more details.
- PySingular.cpython-314-aarch64-linux-gnu.so +0 -0
- passagemath_singular-10.6.31rc3.dist-info/METADATA +183 -0
- passagemath_singular-10.6.31rc3.dist-info/RECORD +490 -0
- passagemath_singular-10.6.31rc3.dist-info/WHEEL +6 -0
- passagemath_singular-10.6.31rc3.dist-info/top_level.txt +3 -0
- passagemath_singular.libs/libSingular-4-6a2a8666.4.1.so +0 -0
- passagemath_singular.libs/libcddgmp-ac579979.so.0.1.3 +0 -0
- passagemath_singular.libs/libfactory-4-66e33516.4.1.so +0 -0
- passagemath_singular.libs/libflint-81de1160.so.21.0.0 +0 -0
- passagemath_singular.libs/libgf2x-fbd36f80.so.3.0.0 +0 -0
- passagemath_singular.libs/libgfortran-e1b7dfc8.so.5.0.0 +0 -0
- passagemath_singular.libs/libgmp-93ebf16a.so.10.5.0 +0 -0
- passagemath_singular.libs/libgsl-e3525837.so.28.0.0 +0 -0
- passagemath_singular.libs/libmpfr-e0f11cf3.so.6.2.1 +0 -0
- passagemath_singular.libs/libntl-0043a3a2.so.44.0.1 +0 -0
- passagemath_singular.libs/libomalloc-0-06512335.9.6.so +0 -0
- passagemath_singular.libs/libopenblasp-r0-4c5b64b1.3.29.so +0 -0
- passagemath_singular.libs/libpolys-4-cb7246b5.4.1.so +0 -0
- passagemath_singular.libs/libreadline-28330744.so.8.2 +0 -0
- passagemath_singular.libs/libsingular_resources-4-8c425241.4.1.so +0 -0
- passagemath_singular.libs/libtinfo-f81c2d16.so.6.3 +0 -0
- sage/algebras/all__sagemath_singular.py +3 -0
- sage/algebras/fusion_rings/all.py +19 -0
- sage/algebras/fusion_rings/f_matrix.py +2448 -0
- sage/algebras/fusion_rings/fast_parallel_fmats_methods.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/fusion_rings/fast_parallel_fmats_methods.pxd +5 -0
- sage/algebras/fusion_rings/fast_parallel_fmats_methods.pyx +538 -0
- sage/algebras/fusion_rings/fast_parallel_fusion_ring_braid_repn.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/fusion_rings/fast_parallel_fusion_ring_braid_repn.pxd +3 -0
- sage/algebras/fusion_rings/fast_parallel_fusion_ring_braid_repn.pyx +331 -0
- sage/algebras/fusion_rings/fusion_double.py +899 -0
- sage/algebras/fusion_rings/fusion_ring.py +1580 -0
- sage/algebras/fusion_rings/poly_tup_engine.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/fusion_rings/poly_tup_engine.pxd +24 -0
- sage/algebras/fusion_rings/poly_tup_engine.pyx +579 -0
- sage/algebras/fusion_rings/shm_managers.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/fusion_rings/shm_managers.pxd +24 -0
- sage/algebras/fusion_rings/shm_managers.pyx +780 -0
- sage/algebras/letterplace/all.py +1 -0
- sage/algebras/letterplace/free_algebra_element_letterplace.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/letterplace/free_algebra_element_letterplace.pxd +18 -0
- sage/algebras/letterplace/free_algebra_element_letterplace.pyx +755 -0
- sage/algebras/letterplace/free_algebra_letterplace.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/letterplace/free_algebra_letterplace.pxd +35 -0
- sage/algebras/letterplace/free_algebra_letterplace.pyx +914 -0
- sage/algebras/letterplace/letterplace_ideal.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/letterplace/letterplace_ideal.pyx +408 -0
- sage/algebras/quatalg/all.py +2 -0
- sage/algebras/quatalg/quaternion_algebra.py +4778 -0
- sage/algebras/quatalg/quaternion_algebra_cython.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/quatalg/quaternion_algebra_cython.pyx +261 -0
- sage/algebras/quatalg/quaternion_algebra_element.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/algebras/quatalg/quaternion_algebra_element.pxd +29 -0
- sage/algebras/quatalg/quaternion_algebra_element.pyx +2176 -0
- sage/all__sagemath_singular.py +11 -0
- sage/ext_data/all__sagemath_singular.py +1 -0
- sage/ext_data/singular/function_field/core.lib +98 -0
- sage/interfaces/all__sagemath_singular.py +1 -0
- sage/interfaces/singular.py +2835 -0
- sage/libs/all__sagemath_singular.py +1 -0
- sage/libs/singular/__init__.py +1 -0
- sage/libs/singular/decl.pxd +1168 -0
- sage/libs/singular/function.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/libs/singular/function.pxd +87 -0
- sage/libs/singular/function.pyx +1901 -0
- sage/libs/singular/function_factory.py +61 -0
- sage/libs/singular/groebner_strategy.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/libs/singular/groebner_strategy.pxd +22 -0
- sage/libs/singular/groebner_strategy.pyx +582 -0
- sage/libs/singular/option.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/libs/singular/option.pyx +671 -0
- sage/libs/singular/polynomial.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/libs/singular/polynomial.pxd +39 -0
- sage/libs/singular/polynomial.pyx +661 -0
- sage/libs/singular/ring.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/libs/singular/ring.pxd +58 -0
- sage/libs/singular/ring.pyx +893 -0
- sage/libs/singular/singular.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/libs/singular/singular.pxd +72 -0
- sage/libs/singular/singular.pyx +1944 -0
- sage/libs/singular/standard_options.py +145 -0
- sage/matrix/all__sagemath_singular.py +1 -0
- sage/matrix/matrix_mpolynomial_dense.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/matrix/matrix_mpolynomial_dense.pxd +7 -0
- sage/matrix/matrix_mpolynomial_dense.pyx +615 -0
- sage/rings/all__sagemath_singular.py +1 -0
- sage/rings/function_field/all__sagemath_singular.py +1 -0
- sage/rings/function_field/derivations_polymod.py +911 -0
- sage/rings/function_field/element_polymod.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/rings/function_field/element_polymod.pyx +406 -0
- sage/rings/function_field/function_field_polymod.py +2611 -0
- sage/rings/function_field/ideal_polymod.py +1775 -0
- sage/rings/function_field/order_polymod.py +1475 -0
- sage/rings/function_field/place_polymod.py +681 -0
- sage/rings/polynomial/all__sagemath_singular.py +1 -0
- sage/rings/polynomial/multi_polynomial_ideal_libsingular.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/rings/polynomial/multi_polynomial_ideal_libsingular.pxd +5 -0
- sage/rings/polynomial/multi_polynomial_ideal_libsingular.pyx +339 -0
- sage/rings/polynomial/multi_polynomial_libsingular.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/rings/polynomial/multi_polynomial_libsingular.pxd +30 -0
- sage/rings/polynomial/multi_polynomial_libsingular.pyx +6277 -0
- sage/rings/polynomial/plural.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/rings/polynomial/plural.pxd +48 -0
- sage/rings/polynomial/plural.pyx +3171 -0
- sage/symbolic/all__sagemath_singular.py +1 -0
- sage/symbolic/comparison_impl.pxi +428 -0
- sage/symbolic/constants_c_impl.pxi +178 -0
- sage/symbolic/expression.cpython-314-aarch64-linux-gnu.so +0 -0
- sage/symbolic/expression.pxd +7 -0
- sage/symbolic/expression.pyx +14200 -0
- sage/symbolic/getitem_impl.pxi +202 -0
- sage/symbolic/pynac.pxi +572 -0
- sage/symbolic/pynac_constant_impl.pxi +133 -0
- sage/symbolic/pynac_function_impl.pxi +206 -0
- sage/symbolic/pynac_impl.pxi +2576 -0
- sage/symbolic/pynac_wrap.h +124 -0
- sage/symbolic/series_impl.pxi +272 -0
- sage/symbolic/substitution_map_impl.pxi +94 -0
- sage_wheels/bin/ESingular +0 -0
- sage_wheels/bin/Singular +0 -0
- sage_wheels/bin/TSingular +0 -0
- sage_wheels/lib/singular/MOD/cohomo.la +41 -0
- sage_wheels/lib/singular/MOD/cohomo.so +0 -0
- sage_wheels/lib/singular/MOD/customstd.la +41 -0
- sage_wheels/lib/singular/MOD/customstd.so +0 -0
- sage_wheels/lib/singular/MOD/freealgebra.la +41 -0
- sage_wheels/lib/singular/MOD/freealgebra.so +0 -0
- sage_wheels/lib/singular/MOD/gfanlib.la +41 -0
- sage_wheels/lib/singular/MOD/gfanlib.so +0 -0
- sage_wheels/lib/singular/MOD/gitfan.la +41 -0
- sage_wheels/lib/singular/MOD/gitfan.so +0 -0
- sage_wheels/lib/singular/MOD/interval.la +41 -0
- sage_wheels/lib/singular/MOD/interval.so +0 -0
- sage_wheels/lib/singular/MOD/loctriv.la +41 -0
- sage_wheels/lib/singular/MOD/loctriv.so +0 -0
- sage_wheels/lib/singular/MOD/machinelearning.la +41 -0
- sage_wheels/lib/singular/MOD/machinelearning.so +0 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldGeneral.la +41 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldGeneral.so +0 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldIndep.la +41 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldIndep.so +0 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldQ.la +41 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldQ.so +0 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldZp.la +41 -0
- sage_wheels/lib/singular/MOD/p_Procs_FieldZp.so +0 -0
- sage_wheels/lib/singular/MOD/partialgb.la +41 -0
- sage_wheels/lib/singular/MOD/partialgb.so +0 -0
- sage_wheels/lib/singular/MOD/pyobject.la +41 -0
- sage_wheels/lib/singular/MOD/pyobject.so +0 -0
- sage_wheels/lib/singular/MOD/singmathic.la +41 -0
- sage_wheels/lib/singular/MOD/singmathic.so +0 -0
- sage_wheels/lib/singular/MOD/sispasm.la +41 -0
- sage_wheels/lib/singular/MOD/sispasm.so +0 -0
- sage_wheels/lib/singular/MOD/subsets.la +41 -0
- sage_wheels/lib/singular/MOD/subsets.so +0 -0
- sage_wheels/lib/singular/MOD/systhreads.la +41 -0
- sage_wheels/lib/singular/MOD/systhreads.so +0 -0
- sage_wheels/lib/singular/MOD/syzextra.la +41 -0
- sage_wheels/lib/singular/MOD/syzextra.so +0 -0
- sage_wheels/libexec/singular/MOD/change_cost +0 -0
- sage_wheels/libexec/singular/MOD/singularsurf +11 -0
- sage_wheels/libexec/singular/MOD/singularsurf_jupyter +9 -0
- sage_wheels/libexec/singular/MOD/singularsurf_win +10 -0
- sage_wheels/libexec/singular/MOD/solve_IP +0 -0
- sage_wheels/libexec/singular/MOD/surfex +16 -0
- sage_wheels/libexec/singular/MOD/toric_ideal +0 -0
- sage_wheels/share/factory/gftables/10201 +342 -0
- sage_wheels/share/factory/gftables/1024 +37 -0
- sage_wheels/share/factory/gftables/10609 +356 -0
- sage_wheels/share/factory/gftables/11449 +384 -0
- sage_wheels/share/factory/gftables/11881 +398 -0
- sage_wheels/share/factory/gftables/121 +6 -0
- sage_wheels/share/factory/gftables/12167 +408 -0
- sage_wheels/share/factory/gftables/125 +7 -0
- sage_wheels/share/factory/gftables/12769 +428 -0
- sage_wheels/share/factory/gftables/128 +7 -0
- sage_wheels/share/factory/gftables/1331 +47 -0
- sage_wheels/share/factory/gftables/1369 +48 -0
- sage_wheels/share/factory/gftables/14641 +490 -0
- sage_wheels/share/factory/gftables/15625 +523 -0
- sage_wheels/share/factory/gftables/16 +3 -0
- sage_wheels/share/factory/gftables/16129 +540 -0
- sage_wheels/share/factory/gftables/16384 +549 -0
- sage_wheels/share/factory/gftables/16807 +563 -0
- sage_wheels/share/factory/gftables/1681 +58 -0
- sage_wheels/share/factory/gftables/169 +8 -0
- sage_wheels/share/factory/gftables/17161 +574 -0
- sage_wheels/share/factory/gftables/1849 +64 -0
- sage_wheels/share/factory/gftables/18769 +628 -0
- sage_wheels/share/factory/gftables/19321 +646 -0
- sage_wheels/share/factory/gftables/19683 +659 -0
- sage_wheels/share/factory/gftables/2048 +71 -0
- sage_wheels/share/factory/gftables/2187 +75 -0
- sage_wheels/share/factory/gftables/2197 +76 -0
- sage_wheels/share/factory/gftables/2209 +76 -0
- sage_wheels/share/factory/gftables/22201 +742 -0
- sage_wheels/share/factory/gftables/22801 +762 -0
- sage_wheels/share/factory/gftables/2401 +82 -0
- sage_wheels/share/factory/gftables/243 +11 -0
- sage_wheels/share/factory/gftables/24389 +815 -0
- sage_wheels/share/factory/gftables/24649 +824 -0
- sage_wheels/share/factory/gftables/25 +3 -0
- sage_wheels/share/factory/gftables/256 +11 -0
- sage_wheels/share/factory/gftables/26569 +888 -0
- sage_wheels/share/factory/gftables/27 +3 -0
- sage_wheels/share/factory/gftables/27889 +932 -0
- sage_wheels/share/factory/gftables/2809 +96 -0
- sage_wheels/share/factory/gftables/28561 +954 -0
- sage_wheels/share/factory/gftables/289 +12 -0
- sage_wheels/share/factory/gftables/29791 +995 -0
- sage_wheels/share/factory/gftables/29929 +1000 -0
- sage_wheels/share/factory/gftables/3125 +107 -0
- sage_wheels/share/factory/gftables/32 +4 -0
- sage_wheels/share/factory/gftables/32041 +1070 -0
- sage_wheels/share/factory/gftables/32761 +1094 -0
- sage_wheels/share/factory/gftables/32768 +1095 -0
- sage_wheels/share/factory/gftables/343 +14 -0
- sage_wheels/share/factory/gftables/3481 +118 -0
- sage_wheels/share/factory/gftables/361 +14 -0
- sage_wheels/share/factory/gftables/36481 +1218 -0
- sage_wheels/share/factory/gftables/3721 +126 -0
- sage_wheels/share/factory/gftables/37249 +1244 -0
- sage_wheels/share/factory/gftables/38809 +1296 -0
- sage_wheels/share/factory/gftables/39601 +1322 -0
- sage_wheels/share/factory/gftables/4 +3 -0
- sage_wheels/share/factory/gftables/4096 +139 -0
- sage_wheels/share/factory/gftables/44521 +1486 -0
- sage_wheels/share/factory/gftables/4489 +152 -0
- sage_wheels/share/factory/gftables/49 +4 -0
- sage_wheels/share/factory/gftables/4913 +166 -0
- sage_wheels/share/factory/gftables/49729 +1660 -0
- sage_wheels/share/factory/gftables/5041 +170 -0
- sage_wheels/share/factory/gftables/50653 +1691 -0
- sage_wheels/share/factory/gftables/512 +20 -0
- sage_wheels/share/factory/gftables/51529 +1720 -0
- sage_wheels/share/factory/gftables/52441 +1750 -0
- sage_wheels/share/factory/gftables/529 +20 -0
- sage_wheels/share/factory/gftables/5329 +180 -0
- sage_wheels/share/factory/gftables/54289 +1812 -0
- sage_wheels/share/factory/gftables/57121 +1906 -0
- sage_wheels/share/factory/gftables/58081 +1938 -0
- sage_wheels/share/factory/gftables/59049 +1971 -0
- sage_wheels/share/factory/gftables/6241 +210 -0
- sage_wheels/share/factory/gftables/625 +23 -0
- sage_wheels/share/factory/gftables/63001 +2102 -0
- sage_wheels/share/factory/gftables/64 +5 -0
- sage_wheels/share/factory/gftables/6561 +221 -0
- sage_wheels/share/factory/gftables/6859 +231 -0
- sage_wheels/share/factory/gftables/6889 +232 -0
- sage_wheels/share/factory/gftables/729 +27 -0
- sage_wheels/share/factory/gftables/7921 +266 -0
- sage_wheels/share/factory/gftables/8 +3 -0
- sage_wheels/share/factory/gftables/81 +5 -0
- sage_wheels/share/factory/gftables/8192 +276 -0
- sage_wheels/share/factory/gftables/841 +30 -0
- sage_wheels/share/factory/gftables/9 +3 -0
- sage_wheels/share/factory/gftables/9409 +316 -0
- sage_wheels/share/factory/gftables/961 +34 -0
- sage_wheels/share/info/singular.info +191898 -0
- sage_wheels/share/singular/LIB/GND.lib +1359 -0
- sage_wheels/share/singular/LIB/JMBTest.lib +976 -0
- sage_wheels/share/singular/LIB/JMSConst.lib +1363 -0
- sage_wheels/share/singular/LIB/KVequiv.lib +699 -0
- sage_wheels/share/singular/LIB/SingularityDBM.lib +491 -0
- sage_wheels/share/singular/LIB/VecField.lib +1542 -0
- sage_wheels/share/singular/LIB/absfact.lib +959 -0
- sage_wheels/share/singular/LIB/ainvar.lib +730 -0
- sage_wheels/share/singular/LIB/aksaka.lib +419 -0
- sage_wheels/share/singular/LIB/alexpoly.lib +2542 -0
- sage_wheels/share/singular/LIB/algebra.lib +1193 -0
- sage_wheels/share/singular/LIB/all.lib +136 -0
- sage_wheels/share/singular/LIB/arcpoint.lib +514 -0
- sage_wheels/share/singular/LIB/arnold.lib +4553 -0
- sage_wheels/share/singular/LIB/arnoldclassify.lib +2058 -0
- sage_wheels/share/singular/LIB/arr.lib +3486 -0
- sage_wheels/share/singular/LIB/assprimeszerodim.lib +755 -0
- sage_wheels/share/singular/LIB/autgradalg.lib +3361 -0
- sage_wheels/share/singular/LIB/bfun.lib +1964 -0
- sage_wheels/share/singular/LIB/bimodules.lib +774 -0
- sage_wheels/share/singular/LIB/brillnoether.lib +226 -0
- sage_wheels/share/singular/LIB/brnoeth.lib +5017 -0
- sage_wheels/share/singular/LIB/central.lib +2169 -0
- sage_wheels/share/singular/LIB/chern.lib +4162 -0
- sage_wheels/share/singular/LIB/cimonom.lib +571 -0
- sage_wheels/share/singular/LIB/cisimplicial.lib +1835 -0
- sage_wheels/share/singular/LIB/classify.lib +3239 -0
- sage_wheels/share/singular/LIB/classify2.lib +1462 -0
- sage_wheels/share/singular/LIB/classifyMapGerms.lib +1515 -0
- sage_wheels/share/singular/LIB/classify_aeq.lib +3253 -0
- sage_wheels/share/singular/LIB/classifyceq.lib +2092 -0
- sage_wheels/share/singular/LIB/classifyci.lib +1133 -0
- sage_wheels/share/singular/LIB/combinat.lib +91 -0
- sage_wheels/share/singular/LIB/compregb.lib +276 -0
- sage_wheels/share/singular/LIB/control.lib +1636 -0
- sage_wheels/share/singular/LIB/crypto.lib +3795 -0
- sage_wheels/share/singular/LIB/curveInv.lib +667 -0
- sage_wheels/share/singular/LIB/curvepar.lib +1817 -0
- sage_wheels/share/singular/LIB/customstd.lib +100 -0
- sage_wheels/share/singular/LIB/deRham.lib +5979 -0
- sage_wheels/share/singular/LIB/decodegb.lib +2134 -0
- sage_wheels/share/singular/LIB/decomp.lib +1655 -0
- sage_wheels/share/singular/LIB/deflation.lib +872 -0
- sage_wheels/share/singular/LIB/deform.lib +925 -0
- sage_wheels/share/singular/LIB/difform.lib +3055 -0
- sage_wheels/share/singular/LIB/divisors.lib +750 -0
- sage_wheels/share/singular/LIB/dmod.lib +5817 -0
- sage_wheels/share/singular/LIB/dmodapp.lib +3269 -0
- sage_wheels/share/singular/LIB/dmodideal.lib +1211 -0
- sage_wheels/share/singular/LIB/dmodloc.lib +2645 -0
- sage_wheels/share/singular/LIB/dmodvar.lib +818 -0
- sage_wheels/share/singular/LIB/dummy.lib +17 -0
- sage_wheels/share/singular/LIB/elim.lib +1009 -0
- sage_wheels/share/singular/LIB/ellipticcovers.lib +548 -0
- sage_wheels/share/singular/LIB/enumpoints.lib +146 -0
- sage_wheels/share/singular/LIB/equising.lib +2127 -0
- sage_wheels/share/singular/LIB/ffmodstd.lib +2384 -0
- sage_wheels/share/singular/LIB/ffsolve.lib +1289 -0
- sage_wheels/share/singular/LIB/findifs.lib +778 -0
- sage_wheels/share/singular/LIB/finitediff.lib +1768 -0
- sage_wheels/share/singular/LIB/finvar.lib +7989 -0
- sage_wheels/share/singular/LIB/fpadim.lib +2429 -0
- sage_wheels/share/singular/LIB/fpalgebras.lib +1666 -0
- sage_wheels/share/singular/LIB/fpaprops.lib +1462 -0
- sage_wheels/share/singular/LIB/freegb.lib +3853 -0
- sage_wheels/share/singular/LIB/general.lib +1350 -0
- sage_wheels/share/singular/LIB/gfan.lib +1768 -0
- sage_wheels/share/singular/LIB/gitfan.lib +3130 -0
- sage_wheels/share/singular/LIB/gkdim.lib +99 -0
- sage_wheels/share/singular/LIB/gmspoly.lib +589 -0
- sage_wheels/share/singular/LIB/gmssing.lib +1739 -0
- sage_wheels/share/singular/LIB/goettsche.lib +909 -0
- sage_wheels/share/singular/LIB/graal.lib +1366 -0
- sage_wheels/share/singular/LIB/gradedModules.lib +2541 -0
- sage_wheels/share/singular/LIB/graphics.lib +360 -0
- sage_wheels/share/singular/LIB/grobcov.lib +7706 -0
- sage_wheels/share/singular/LIB/groups.lib +1123 -0
- sage_wheels/share/singular/LIB/grwalk.lib +507 -0
- sage_wheels/share/singular/LIB/hdepth.lib +194 -0
- sage_wheels/share/singular/LIB/help.cnf +57 -0
- sage_wheels/share/singular/LIB/hess.lib +1946 -0
- sage_wheels/share/singular/LIB/hnoether.lib +4292 -0
- sage_wheels/share/singular/LIB/hodge.lib +400 -0
- sage_wheels/share/singular/LIB/homolog.lib +1965 -0
- sage_wheels/share/singular/LIB/hyperel.lib +975 -0
- sage_wheels/share/singular/LIB/inout.lib +679 -0
- sage_wheels/share/singular/LIB/integralbasis.lib +6224 -0
- sage_wheels/share/singular/LIB/interval.lib +1418 -0
- sage_wheels/share/singular/LIB/intprog.lib +778 -0
- sage_wheels/share/singular/LIB/invar.lib +443 -0
- sage_wheels/share/singular/LIB/involut.lib +980 -0
- sage_wheels/share/singular/LIB/jacobson.lib +1215 -0
- sage_wheels/share/singular/LIB/kskernel.lib +534 -0
- sage_wheels/share/singular/LIB/latex.lib +3146 -0
- sage_wheels/share/singular/LIB/lejeune.lib +651 -0
- sage_wheels/share/singular/LIB/linalg.lib +2040 -0
- sage_wheels/share/singular/LIB/locnormal.lib +212 -0
- sage_wheels/share/singular/LIB/lrcalc.lib +526 -0
- sage_wheels/share/singular/LIB/makedbm.lib +294 -0
- sage_wheels/share/singular/LIB/mathml.lib +813 -0
- sage_wheels/share/singular/LIB/matrix.lib +1372 -0
- sage_wheels/share/singular/LIB/maxlike.lib +1132 -0
- sage_wheels/share/singular/LIB/methods.lib +212 -0
- sage_wheels/share/singular/LIB/moddiq.lib +322 -0
- sage_wheels/share/singular/LIB/modfinduni.lib +181 -0
- sage_wheels/share/singular/LIB/modnormal.lib +218 -0
- sage_wheels/share/singular/LIB/modprimdec.lib +1278 -0
- sage_wheels/share/singular/LIB/modquotient.lib +269 -0
- sage_wheels/share/singular/LIB/modstd.lib +1024 -0
- sage_wheels/share/singular/LIB/modular.lib +545 -0
- sage_wheels/share/singular/LIB/modules.lib +2561 -0
- sage_wheels/share/singular/LIB/modwalk.lib +609 -0
- sage_wheels/share/singular/LIB/mondromy.lib +1016 -0
- sage_wheels/share/singular/LIB/monomialideal.lib +3851 -0
- sage_wheels/share/singular/LIB/mprimdec.lib +2353 -0
- sage_wheels/share/singular/LIB/mregular.lib +1863 -0
- sage_wheels/share/singular/LIB/multigrading.lib +5629 -0
- sage_wheels/share/singular/LIB/ncHilb.lib +777 -0
- sage_wheels/share/singular/LIB/ncModslimgb.lib +791 -0
- sage_wheels/share/singular/LIB/ncalg.lib +16311 -0
- sage_wheels/share/singular/LIB/ncall.lib +31 -0
- sage_wheels/share/singular/LIB/ncdecomp.lib +468 -0
- sage_wheels/share/singular/LIB/ncfactor.lib +13371 -0
- sage_wheels/share/singular/LIB/ncfrac.lib +1023 -0
- sage_wheels/share/singular/LIB/nchilbert.lib +448 -0
- sage_wheels/share/singular/LIB/nchomolog.lib +759 -0
- sage_wheels/share/singular/LIB/ncloc.lib +361 -0
- sage_wheels/share/singular/LIB/ncpreim.lib +795 -0
- sage_wheels/share/singular/LIB/ncrat.lib +2849 -0
- sage_wheels/share/singular/LIB/nctools.lib +1887 -0
- sage_wheels/share/singular/LIB/nets.lib +1456 -0
- sage_wheels/share/singular/LIB/nfmodstd.lib +1000 -0
- sage_wheels/share/singular/LIB/nfmodsyz.lib +732 -0
- sage_wheels/share/singular/LIB/noether.lib +1106 -0
- sage_wheels/share/singular/LIB/normal.lib +8700 -0
- sage_wheels/share/singular/LIB/normaliz.lib +2226 -0
- sage_wheels/share/singular/LIB/ntsolve.lib +362 -0
- sage_wheels/share/singular/LIB/numerAlg.lib +560 -0
- sage_wheels/share/singular/LIB/numerDecom.lib +2261 -0
- sage_wheels/share/singular/LIB/olga.lib +1933 -0
- sage_wheels/share/singular/LIB/orbitparam.lib +351 -0
- sage_wheels/share/singular/LIB/parallel.lib +319 -0
- sage_wheels/share/singular/LIB/paraplanecurves.lib +3110 -0
- sage_wheels/share/singular/LIB/perron.lib +202 -0
- sage_wheels/share/singular/LIB/pfd.lib +2223 -0
- sage_wheels/share/singular/LIB/phindex.lib +642 -0
- sage_wheels/share/singular/LIB/pointid.lib +673 -0
- sage_wheels/share/singular/LIB/polybori.lib +1430 -0
- sage_wheels/share/singular/LIB/polyclass.lib +525 -0
- sage_wheels/share/singular/LIB/polylib.lib +1174 -0
- sage_wheels/share/singular/LIB/polymake.lib +1902 -0
- sage_wheels/share/singular/LIB/presolve.lib +1533 -0
- sage_wheels/share/singular/LIB/primdec.lib +9576 -0
- sage_wheels/share/singular/LIB/primdecint.lib +1782 -0
- sage_wheels/share/singular/LIB/primitiv.lib +401 -0
- sage_wheels/share/singular/LIB/puiseuxexpansions.lib +1631 -0
- sage_wheels/share/singular/LIB/purityfiltration.lib +960 -0
- sage_wheels/share/singular/LIB/qhmoduli.lib +1561 -0
- sage_wheels/share/singular/LIB/qmatrix.lib +293 -0
- sage_wheels/share/singular/LIB/random.lib +455 -0
- sage_wheels/share/singular/LIB/ratgb.lib +489 -0
- sage_wheels/share/singular/LIB/realclassify.lib +5759 -0
- sage_wheels/share/singular/LIB/realizationMatroids.lib +772 -0
- sage_wheels/share/singular/LIB/realrad.lib +1197 -0
- sage_wheels/share/singular/LIB/recover.lib +2628 -0
- sage_wheels/share/singular/LIB/redcgs.lib +3984 -0
- sage_wheels/share/singular/LIB/reesclos.lib +465 -0
- sage_wheels/share/singular/LIB/resbinomial.lib +2802 -0
- sage_wheels/share/singular/LIB/resgraph.lib +789 -0
- sage_wheels/share/singular/LIB/resjung.lib +820 -0
- sage_wheels/share/singular/LIB/resolve.lib +5110 -0
- sage_wheels/share/singular/LIB/resources.lib +170 -0
- sage_wheels/share/singular/LIB/reszeta.lib +5473 -0
- sage_wheels/share/singular/LIB/ring.lib +1328 -0
- sage_wheels/share/singular/LIB/ringgb.lib +343 -0
- sage_wheels/share/singular/LIB/rinvar.lib +1153 -0
- sage_wheels/share/singular/LIB/rootisolation.lib +1481 -0
- sage_wheels/share/singular/LIB/rootsmr.lib +709 -0
- sage_wheels/share/singular/LIB/rootsur.lib +886 -0
- sage_wheels/share/singular/LIB/rstandard.lib +607 -0
- sage_wheels/share/singular/LIB/rwalk.lib +336 -0
- sage_wheels/share/singular/LIB/sagbi.lib +1353 -0
- sage_wheels/share/singular/LIB/sagbiNormaliz.lib +1622 -0
- sage_wheels/share/singular/LIB/sagbiNormaliz0.lib +1498 -0
- sage_wheels/share/singular/LIB/sagbigrob.lib +449 -0
- sage_wheels/share/singular/LIB/schreyer.lib +321 -0
- sage_wheels/share/singular/LIB/schubert.lib +2551 -0
- sage_wheels/share/singular/LIB/sets.lib +524 -0
- sage_wheels/share/singular/LIB/sheafcoh.lib +1663 -0
- sage_wheels/share/singular/LIB/signcond.lib +437 -0
- sage_wheels/share/singular/LIB/sing.lib +1094 -0
- sage_wheels/share/singular/LIB/sing4ti2.lib +419 -0
- sage_wheels/share/singular/LIB/solve.lib +2243 -0
- sage_wheels/share/singular/LIB/spcurve.lib +1077 -0
- sage_wheels/share/singular/LIB/spectrum.lib +62 -0
- sage_wheels/share/singular/LIB/sresext.lib +757 -0
- sage_wheels/share/singular/LIB/ssi.lib +143 -0
- sage_wheels/share/singular/LIB/standard.lib +2769 -0
- sage_wheels/share/singular/LIB/stanleyreisner.lib +473 -0
- sage_wheels/share/singular/LIB/stdmodule.lib +547 -0
- sage_wheels/share/singular/LIB/stratify.lib +1070 -0
- sage_wheels/share/singular/LIB/surf.lib +506 -0
- sage_wheels/share/singular/LIB/surf_jupyter.lib +223 -0
- sage_wheels/share/singular/LIB/surfacesignature.lib +522 -0
- sage_wheels/share/singular/LIB/surfex.lib +1462 -0
- sage_wheels/share/singular/LIB/swalk.lib +877 -0
- sage_wheels/share/singular/LIB/symodstd.lib +1570 -0
- sage_wheels/share/singular/LIB/systhreads.lib +74 -0
- sage_wheels/share/singular/LIB/tasks.lib +1324 -0
- sage_wheels/share/singular/LIB/tateProdCplxNegGrad.lib +2412 -0
- sage_wheels/share/singular/LIB/teachstd.lib +858 -0
- sage_wheels/share/singular/LIB/template.lib +116 -0
- sage_wheels/share/singular/LIB/toric.lib +1119 -0
- sage_wheels/share/singular/LIB/transformation.lib +116 -0
- sage_wheels/share/singular/LIB/triang.lib +1197 -0
- sage_wheels/share/singular/LIB/tropical.lib +8741 -0
- sage_wheels/share/singular/LIB/tropicalEllipticCovers.lib +2922 -0
- sage_wheels/share/singular/LIB/tropicalNewton.lib +1128 -0
- sage_wheels/share/singular/LIB/tst.lib +1108 -0
- sage_wheels/share/singular/LIB/weierstr.lib +241 -0
- sage_wheels/share/singular/LIB/zeroset.lib +1478 -0
- sage_wheels/share/singular/emacs/.emacs-general +184 -0
- sage_wheels/share/singular/emacs/.emacs-singular +234 -0
- sage_wheels/share/singular/emacs/COPYING +44 -0
- sage_wheels/share/singular/emacs/cmd-cmpl.el +241 -0
- sage_wheels/share/singular/emacs/ex-cmpl.el +1681 -0
- sage_wheels/share/singular/emacs/hlp-cmpl.el +4318 -0
- sage_wheels/share/singular/emacs/lib-cmpl.el +179 -0
- sage_wheels/share/singular/emacs/singular.el +4273 -0
- sage_wheels/share/singular/emacs/singular.xpm +39 -0
- sage_wheels/share/singular/singular.idx +5002 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/* sage_setup: distribution = sagemath-singular
|
|
2
|
+
*/
|
|
3
|
+
/*******************************************************************************
|
|
4
|
+
Sage: Open Source Mathematical Software
|
|
5
|
+
Copyright (C) 2008 William Stein <wstein@gmail.com>
|
|
6
|
+
Copyright (C) 2008-2009 Burcin Erocal <burcin@erocal.org>
|
|
7
|
+
Distributed under the terms of the GNU General Public License (GPL),
|
|
8
|
+
version 2 or any later version. The full text of the GPL is available at:
|
|
9
|
+
https://www.gnu.org/licenses/
|
|
10
|
+
*******************************************************************************/
|
|
11
|
+
|
|
12
|
+
#ifndef _SAGE_PYNAC_WRAP_H
|
|
13
|
+
#define _SAGE_PYNAC_WRAP_H
|
|
14
|
+
|
|
15
|
+
#include "ginac/ginac.h"
|
|
16
|
+
#include "ginac/extern_templates.h"
|
|
17
|
+
#include <sstream>
|
|
18
|
+
#include <string>
|
|
19
|
+
|
|
20
|
+
using namespace GiNaC;
|
|
21
|
+
|
|
22
|
+
void list_symbols(const ex& e, std::set<ex, ex_is_less> &s)
|
|
23
|
+
{
|
|
24
|
+
if (is_a<symbol>(e)) {
|
|
25
|
+
s.insert(e);
|
|
26
|
+
} else {
|
|
27
|
+
for (size_t i=0; i<e.nops(); i++)
|
|
28
|
+
list_symbols(e.op(i), s);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
ex g_function_evalv(unsigned serial, exvector& vec, bool hold)
|
|
34
|
+
{
|
|
35
|
+
if (hold)
|
|
36
|
+
return function(serial, vec).hold();
|
|
37
|
+
return function(serial, vec);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
ex g_function_eval0(unsigned serial, bool hold)
|
|
41
|
+
{
|
|
42
|
+
if (hold)
|
|
43
|
+
return function(serial).hold();
|
|
44
|
+
return function(serial);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
ex g_function_eval1(unsigned serial, const ex& arg1, bool hold)
|
|
48
|
+
{
|
|
49
|
+
if (hold)
|
|
50
|
+
return function(serial, arg1).hold();
|
|
51
|
+
return function(serial, arg1);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
ex g_function_eval2(unsigned serial, const ex& arg1, const ex& arg2, bool hold)
|
|
55
|
+
{
|
|
56
|
+
if (hold)
|
|
57
|
+
return function(serial, arg1, arg2).hold();
|
|
58
|
+
return function(serial, arg1, arg2);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
ex g_function_eval3(unsigned serial, const ex& arg1, const ex& arg2,
|
|
62
|
+
const ex& arg3, bool hold)
|
|
63
|
+
{
|
|
64
|
+
if (hold)
|
|
65
|
+
return function(serial, arg1, arg2, arg3).hold();
|
|
66
|
+
return function(serial, arg1, arg2, arg3);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
bool g_is_a_terminating_series(const ex& e) {
|
|
70
|
+
if (is_a<pseries>(e)) {
|
|
71
|
+
return (ex_to<pseries>(e)).is_terminating();
|
|
72
|
+
}
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
ex g_series_var(const ex& e) {
|
|
77
|
+
if (is_a<pseries>(e)) {
|
|
78
|
+
return (ex_to<pseries>(e)).get_var();
|
|
79
|
+
}
|
|
80
|
+
return 0;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
relational::operators relational_operator(const ex& e) {
|
|
84
|
+
// unsafe cast -- be damn sure the input is a relational.
|
|
85
|
+
return (ex_to<relational>(e)).the_operator();
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
relational::result decide_relational(const ex& e) {
|
|
89
|
+
return (ex_to<relational>(e)).decide();
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
bool is_negative(ex x) {
|
|
93
|
+
if (is_a<numeric>(x)) {
|
|
94
|
+
return (ex_to<numeric>(x)).is_negative();
|
|
95
|
+
}
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
PyObject* py_object_from_numeric(ex x) {
|
|
100
|
+
return (ex_to<numeric>(x)).to_pyobject();
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
template <class T>
|
|
104
|
+
PyObject* _to_PyString_latex(const T *x)
|
|
105
|
+
{
|
|
106
|
+
std::ostringstream instore;
|
|
107
|
+
instore << latex << (*x);
|
|
108
|
+
return PyBytes_FromString(instore.str().data());
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
#define ASSIGN_WRAP(x,y) x = y
|
|
112
|
+
|
|
113
|
+
#define HOLD(fn, x, hold_flag) hold_flag ? ex(fn(x).hold()) : fn(x)
|
|
114
|
+
|
|
115
|
+
#define HOLD2(fn, x, y, hold_flag) hold_flag ? ex(fn(x,y).hold()) : fn(x,y)
|
|
116
|
+
|
|
117
|
+
// declare the constant 1/2 so we can use it for a custom square root function
|
|
118
|
+
namespace GiNaC {
|
|
119
|
+
|
|
120
|
+
extern const ex _ex1_2;
|
|
121
|
+
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
#endif /* ifndef __SAGE_PYNAC_WRAP_H */
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
# sage_setup: distribution = sagemath-singular
|
|
2
|
+
# sage.doctest: needs sage.symbolic
|
|
3
|
+
r"""
|
|
4
|
+
Symbolic Series
|
|
5
|
+
|
|
6
|
+
Symbolic series are special kinds of symbolic expressions that are
|
|
7
|
+
constructed via the
|
|
8
|
+
:meth:`Expression.series <sage.symbolic.expression.Expression.series>`
|
|
9
|
+
method.
|
|
10
|
+
They usually have an ``Order()`` term unless the series representation
|
|
11
|
+
is exact, see
|
|
12
|
+
:meth:`~sage.symbolic.expression.SymbolicSeries.is_terminating_series`.
|
|
13
|
+
|
|
14
|
+
For series over general rings see
|
|
15
|
+
:class:`power series <sage.rings.power_series_poly.PowerSeries_poly>`
|
|
16
|
+
and
|
|
17
|
+
:class:`Laurent series<sage.rings.laurent_series_ring_element.LaurentSeries>`.
|
|
18
|
+
|
|
19
|
+
EXAMPLES:
|
|
20
|
+
|
|
21
|
+
We expand a polynomial in `x` about `0`, about `1`, and also truncate
|
|
22
|
+
it back to a polynomial::
|
|
23
|
+
|
|
24
|
+
sage: var('x,y')
|
|
25
|
+
(x, y)
|
|
26
|
+
sage: f = (x^3 - sin(y)*x^2 - 5*x + 3); f
|
|
27
|
+
x^3 - x^2*sin(y) - 5*x + 3
|
|
28
|
+
sage: g = f.series(x, 4); g
|
|
29
|
+
3 + (-5)*x + (-sin(y))*x^2 + 1*x^3 + Order(x^4)
|
|
30
|
+
sage: g.truncate()
|
|
31
|
+
x^3 - x^2*sin(y) - 5*x + 3
|
|
32
|
+
sage: g = f.series(x==1, oo); g
|
|
33
|
+
(-sin(y) - 1) + (-2*sin(y) - 2)*(x - 1) + (-sin(y) + 3)*(x - 1)^2 + 1*(x - 1)^3
|
|
34
|
+
sage: h = g.truncate(); h
|
|
35
|
+
(x - 1)^3 - (x - 1)^2*(sin(y) - 3) - 2*(x - 1)*(sin(y) + 1) - sin(y) - 1
|
|
36
|
+
sage: h.expand()
|
|
37
|
+
x^3 - x^2*sin(y) - 5*x + 3
|
|
38
|
+
|
|
39
|
+
We compute another series expansion of an analytic function::
|
|
40
|
+
|
|
41
|
+
sage: f = sin(x)/x^2
|
|
42
|
+
sage: f.series(x,7)
|
|
43
|
+
1*x^(-1) + (-1/6)*x + 1/120*x^3 + (-1/5040)*x^5 + Order(x^7)
|
|
44
|
+
sage: f.series(x==1,3)
|
|
45
|
+
(sin(1)) + (cos(1) - 2*sin(1))*(x - 1) + (-2*cos(1) + 5/2*sin(1))*(x - 1)^2 + Order((x - 1)^3)
|
|
46
|
+
sage: f.series(x==1,3).truncate().expand()
|
|
47
|
+
-2*x^2*cos(1) + 5/2*x^2*sin(1) + 5*x*cos(1) - 7*x*sin(1) - 3*cos(1) + 11/2*sin(1)
|
|
48
|
+
|
|
49
|
+
Following the GiNaC tutorial, we use John Machin's amazing
|
|
50
|
+
formula `\pi = 16 \mathrm{tan}^{-1}(1/5) - 4 \mathrm{tan}^{-1}(1/239)`
|
|
51
|
+
to compute digits of `\pi`. We expand the arc tangent around 0 and insert
|
|
52
|
+
the fractions 1/5 and 1/239.
|
|
53
|
+
|
|
54
|
+
::
|
|
55
|
+
|
|
56
|
+
sage: x = var('x')
|
|
57
|
+
sage: f = atan(x).series(x, 10); f
|
|
58
|
+
1*x + (-1/3)*x^3 + 1/5*x^5 + (-1/7)*x^7 + 1/9*x^9 + Order(x^10)
|
|
59
|
+
sage: (16*f.subs(x==1/5) - 4*f.subs(x==1/239)).n()
|
|
60
|
+
3.14159268240440
|
|
61
|
+
|
|
62
|
+
Note: The result of an operation or function of series is not automatically
|
|
63
|
+
expanded to a series. This must be explicitly done by the user::
|
|
64
|
+
|
|
65
|
+
sage: ex1 = sin(x).series(x, 4); ex1
|
|
66
|
+
1*x + (-1/6)*x^3 + Order(x^4)
|
|
67
|
+
sage: ex2 = cos(x).series(x, 4); ex2
|
|
68
|
+
1 + (-1/2)*x^2 + Order(x^4)
|
|
69
|
+
sage: ex1 + ex2
|
|
70
|
+
(1 + (-1/2)*x^2 + Order(x^4)) + (1*x + (-1/6)*x^3 + Order(x^4))
|
|
71
|
+
sage: (ex1 + ex2).series(x,4)
|
|
72
|
+
1 + 1*x + (-1/2)*x^2 + (-1/6)*x^3 + Order(x^4)
|
|
73
|
+
sage: x*ex1
|
|
74
|
+
x*(1*x + (-1/6)*x^3 + Order(x^4))
|
|
75
|
+
sage: (x*ex1).series(x,5)
|
|
76
|
+
1*x^2 + (-1/6)*x^4 + Order(x^5)
|
|
77
|
+
sage: sin(ex1)
|
|
78
|
+
sin(1*x + (-1/6)*x^3 + Order(x^4))
|
|
79
|
+
sage: sin(ex1).series(x,9)
|
|
80
|
+
1*x + (-1/3)*x^3 + 11/120*x^5 + (-53/2520)*x^7 + Order(x^9)
|
|
81
|
+
sage: (sin(x^2)^(-5)).series(x,3)
|
|
82
|
+
1*x^(-10) + 5/6*x^(-6) + 3/8*x^(-2) + 367/3024*x^2 + Order(x^3)
|
|
83
|
+
sage: (cot(x)^(-3)).series(x,3)
|
|
84
|
+
Order(x^3)
|
|
85
|
+
sage: (cot(x)^(-3)).series(x,4)
|
|
86
|
+
1*x^3 + Order(x^4)
|
|
87
|
+
|
|
88
|
+
TESTS:
|
|
89
|
+
|
|
90
|
+
Check that :issue:`20088` is fixed::
|
|
91
|
+
|
|
92
|
+
sage: ((1+x).series(x)^pi).series(x,3)
|
|
93
|
+
1 + pi*x + (-1/2*pi + 1/2*pi^2)*x^2 + Order(x^3)
|
|
94
|
+
|
|
95
|
+
Check that :issue:`14878` is fixed, this should take only microseconds::
|
|
96
|
+
|
|
97
|
+
sage: sin(x*sin(x*sin(x*sin(x)))).series(x,8)
|
|
98
|
+
1*x^4 + (-1/6)*x^6 + Order(x^8)
|
|
99
|
+
sage: sin(x*sin(x*sin(x*sin(x)))).series(x,12)
|
|
100
|
+
1*x^4 + (-1/6)*x^6 + (-19/120)*x^8 + (-421/5040)*x^10 + Order(x^12)
|
|
101
|
+
|
|
102
|
+
Check that :issue:`22959` is fixed::
|
|
103
|
+
|
|
104
|
+
sage: (x/(1-x^2)).series(x==0, 10)
|
|
105
|
+
1*x + 1*x^3 + 1*x^5 + 1*x^7 + 1*x^9 + Order(x^10)
|
|
106
|
+
sage: (x/(1-x^2)).series(x==0, 11)
|
|
107
|
+
1*x + 1*x^3 + 1*x^5 + 1*x^7 + 1*x^9 + Order(x^11)
|
|
108
|
+
sage: (x^2/(1-x^2)).series(x==0, 10)
|
|
109
|
+
1*x^2 + 1*x^4 + 1*x^6 + 1*x^8 + Order(x^10)
|
|
110
|
+
sage: (x^2/(1-x^2)).series(x==0, 11)
|
|
111
|
+
1*x^2 + 1*x^4 + 1*x^6 + 1*x^8 + 1*x^10 + Order(x^11)
|
|
112
|
+
|
|
113
|
+
Check that :issue:`22733` is fixed::
|
|
114
|
+
|
|
115
|
+
sage: _ = var('z')
|
|
116
|
+
sage: z.series(x)
|
|
117
|
+
(z)
|
|
118
|
+
"""
|
|
119
|
+
|
|
120
|
+
# ****************************************************************************
|
|
121
|
+
# Copyright (C) 2015 Ralf Stephan <ralf@ark.in-berlin.de>
|
|
122
|
+
#
|
|
123
|
+
# This program is free software: you can redistribute it and/or modify
|
|
124
|
+
# it under the terms of the GNU General Public License as published by
|
|
125
|
+
# the Free Software Foundation, either version 2 of the License, or
|
|
126
|
+
# (at your option) any later version.
|
|
127
|
+
# https://www.gnu.org/licenses/
|
|
128
|
+
# ****************************************************************************
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
cdef class SymbolicSeries(Expression):
|
|
132
|
+
def __init__(self, SR):
|
|
133
|
+
"""
|
|
134
|
+
Trivial constructor.
|
|
135
|
+
|
|
136
|
+
EXAMPLES::
|
|
137
|
+
|
|
138
|
+
sage: loads(dumps((x+x^3).series(x,2)))
|
|
139
|
+
1*x + Order(x^2)
|
|
140
|
+
"""
|
|
141
|
+
Expression.__init__(self, SR, 0)
|
|
142
|
+
self._parent = SR
|
|
143
|
+
|
|
144
|
+
def is_terminating_series(self):
|
|
145
|
+
"""
|
|
146
|
+
Return ``True`` if the series is without order term.
|
|
147
|
+
|
|
148
|
+
A series is terminating if it can be represented exactly,
|
|
149
|
+
without requiring an order term. You can explicitly
|
|
150
|
+
request terminating series by setting the order to
|
|
151
|
+
positive infinity.
|
|
152
|
+
|
|
153
|
+
OUTPUT: boolean; ``True`` if the series has no order term
|
|
154
|
+
|
|
155
|
+
EXAMPLES::
|
|
156
|
+
|
|
157
|
+
sage: (x^5+x^2+1).series(x, +oo)
|
|
158
|
+
1 + 1*x^2 + 1*x^5
|
|
159
|
+
sage: (x^5+x^2+1).series(x,+oo).is_terminating_series()
|
|
160
|
+
True
|
|
161
|
+
sage: SR(5).is_terminating_series()
|
|
162
|
+
False
|
|
163
|
+
sage: exp(x).series(x,10).is_terminating_series()
|
|
164
|
+
False
|
|
165
|
+
"""
|
|
166
|
+
return g_is_a_terminating_series((<Expression>self)._gobj)
|
|
167
|
+
|
|
168
|
+
def truncate(self):
|
|
169
|
+
"""
|
|
170
|
+
Given a power series or expression, return the corresponding
|
|
171
|
+
expression without the big oh.
|
|
172
|
+
|
|
173
|
+
OUTPUT: a symbolic expression
|
|
174
|
+
|
|
175
|
+
EXAMPLES::
|
|
176
|
+
|
|
177
|
+
sage: f = sin(x)/x^2
|
|
178
|
+
sage: f.truncate()
|
|
179
|
+
sin(x)/x^2
|
|
180
|
+
sage: f.series(x,7)
|
|
181
|
+
1*x^(-1) + (-1/6)*x + 1/120*x^3 + (-1/5040)*x^5 + Order(x^7)
|
|
182
|
+
sage: f.series(x,7).truncate()
|
|
183
|
+
-1/5040*x^5 + 1/120*x^3 - 1/6*x + 1/x
|
|
184
|
+
sage: f.series(x==1,3).truncate().expand()
|
|
185
|
+
-2*x^2*cos(1) + 5/2*x^2*sin(1) + 5*x*cos(1) - 7*x*sin(1) - 3*cos(1) + 11/2*sin(1)
|
|
186
|
+
"""
|
|
187
|
+
return new_Expression_from_GEx(self._parent, series_to_poly(self._gobj))
|
|
188
|
+
|
|
189
|
+
def default_variable(self):
|
|
190
|
+
"""
|
|
191
|
+
Return the expansion variable of this symbolic series.
|
|
192
|
+
|
|
193
|
+
EXAMPLES::
|
|
194
|
+
|
|
195
|
+
sage: s = (1/(1-x)).series(x,3); s
|
|
196
|
+
1 + 1*x + 1*x^2 + Order(x^3)
|
|
197
|
+
sage: s.default_variable()
|
|
198
|
+
x
|
|
199
|
+
"""
|
|
200
|
+
cdef GEx x = g_series_var(self._gobj)
|
|
201
|
+
cdef Expression ex = new_Expression_from_GEx(self._parent, x)
|
|
202
|
+
return ex
|
|
203
|
+
|
|
204
|
+
def coefficients(self, x=None, sparse=True):
|
|
205
|
+
r"""
|
|
206
|
+
Return the coefficients of this symbolic series as a list of pairs.
|
|
207
|
+
|
|
208
|
+
INPUT:
|
|
209
|
+
|
|
210
|
+
- ``x`` -- (optional) variable
|
|
211
|
+
|
|
212
|
+
- ``sparse`` -- boolean (default: ``True``); if ``False`` return a list
|
|
213
|
+
with as much entries as the order of the series
|
|
214
|
+
|
|
215
|
+
OUTPUT: depending on the value of ``sparse``,
|
|
216
|
+
|
|
217
|
+
- A list of pairs ``(expr, n)``, where ``expr`` is a symbolic
|
|
218
|
+
expression and ``n`` is a power (``sparse=True``, default)
|
|
219
|
+
|
|
220
|
+
- A list of expressions where the ``n``-th element is the coefficient of
|
|
221
|
+
``x^n`` when ``self`` is seen as polynomial in ``x`` (``sparse=False``).
|
|
222
|
+
|
|
223
|
+
EXAMPLES::
|
|
224
|
+
|
|
225
|
+
sage: s = (1/(1-x)).series(x,6); s
|
|
226
|
+
1 + 1*x + 1*x^2 + 1*x^3 + 1*x^4 + 1*x^5 + Order(x^6)
|
|
227
|
+
sage: s.coefficients()
|
|
228
|
+
[[1, 0], [1, 1], [1, 2], [1, 3], [1, 4], [1, 5]]
|
|
229
|
+
sage: s.coefficients(x, sparse=False)
|
|
230
|
+
[1, 1, 1, 1, 1, 1]
|
|
231
|
+
sage: x,y = var("x,y")
|
|
232
|
+
sage: s = (1/(1-y*x-x)).series(x,3); s
|
|
233
|
+
1 + (y + 1)*x + ((y + 1)^2)*x^2 + Order(x^3)
|
|
234
|
+
sage: s.coefficients(x, sparse=False)
|
|
235
|
+
[1, y + 1, (y + 1)^2]
|
|
236
|
+
"""
|
|
237
|
+
if x is None:
|
|
238
|
+
x = self.default_variable()
|
|
239
|
+
l = [[self.coefficient(x, d), d] for d in range(self.degree(x))]
|
|
240
|
+
if sparse:
|
|
241
|
+
return l
|
|
242
|
+
|
|
243
|
+
from sage.rings.integer_ring import ZZ
|
|
244
|
+
if any(not c[1] in ZZ for c in l):
|
|
245
|
+
raise ValueError("cannot return dense coefficient list with noninteger exponents")
|
|
246
|
+
val = l[0][1]
|
|
247
|
+
if val < 0:
|
|
248
|
+
raise ValueError("cannot return dense coefficient list with negative valuation")
|
|
249
|
+
deg = l[-1][1]
|
|
250
|
+
ret = [ZZ(0)] * int(deg+1)
|
|
251
|
+
for c in l:
|
|
252
|
+
ret[c[1]] = c[0]
|
|
253
|
+
return ret
|
|
254
|
+
|
|
255
|
+
def power_series(self, base_ring):
|
|
256
|
+
"""
|
|
257
|
+
Return the algebraic power series associated to this symbolic series.
|
|
258
|
+
|
|
259
|
+
The coefficients must be coercible to the base ring.
|
|
260
|
+
|
|
261
|
+
EXAMPLES::
|
|
262
|
+
|
|
263
|
+
sage: ex = (gamma(1-x)).series(x,3); ex
|
|
264
|
+
1 + euler_gamma*x + (1/2*euler_gamma^2 + 1/12*pi^2)*x^2 + Order(x^3)
|
|
265
|
+
sage: g = ex.power_series(SR); g
|
|
266
|
+
1 + euler_gamma*x + (1/2*euler_gamma^2 + 1/12*pi^2)*x^2 + O(x^3)
|
|
267
|
+
sage: g.parent()
|
|
268
|
+
Power Series Ring in x over Symbolic Ring
|
|
269
|
+
"""
|
|
270
|
+
from sage.rings.power_series_ring import PowerSeriesRing
|
|
271
|
+
R = PowerSeriesRing(base_ring, names=str(self.default_variable()))
|
|
272
|
+
return R(self.list(), self.degree(self.default_variable()))
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# sage_setup: distribution = sagemath-singular
|
|
2
|
+
# sage.doctest: needs sage.symbolic
|
|
3
|
+
"""
|
|
4
|
+
Substitution Maps
|
|
5
|
+
|
|
6
|
+
This object wraps Pynac ``exmap`` objects. These encode substitutions
|
|
7
|
+
of symbolic expressions. The main use of this module is to hook into
|
|
8
|
+
Pynac's ``subs()`` methods and pass a wrapper for the substitution map
|
|
9
|
+
back to Python.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
# ****************************************************************************
|
|
13
|
+
# Copyright (C) 2013 Volker Braun <vbraun.name@gmail.com>
|
|
14
|
+
#
|
|
15
|
+
# This program is free software: you can redistribute it and/or modify
|
|
16
|
+
# it under the terms of the GNU General Public License as published by
|
|
17
|
+
# the Free Software Foundation, either version 2 of the License, or
|
|
18
|
+
# (at your option) any later version.
|
|
19
|
+
# https://www.gnu.org/licenses/
|
|
20
|
+
# ****************************************************************************
|
|
21
|
+
|
|
22
|
+
from sage.structure.sage_object cimport SageObject
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
cdef class SubstitutionMap(SageObject):
|
|
26
|
+
|
|
27
|
+
cdef GExMap _gmapobj
|
|
28
|
+
|
|
29
|
+
cpdef Expression apply_to(self, Expression expr, unsigned options):
|
|
30
|
+
"""
|
|
31
|
+
Apply the substitution to a symbolic expression.
|
|
32
|
+
|
|
33
|
+
EXAMPLES::
|
|
34
|
+
|
|
35
|
+
sage: from sage.symbolic.expression import make_map
|
|
36
|
+
sage: subs = make_map({x:x+1})
|
|
37
|
+
sage: subs.apply_to(x^2, 0)
|
|
38
|
+
(x + 1)^2
|
|
39
|
+
"""
|
|
40
|
+
return new_Expression_from_GEx(expr._parent,
|
|
41
|
+
expr._gobj.subs_map(self._gmapobj, options))
|
|
42
|
+
|
|
43
|
+
def _repr_(self):
|
|
44
|
+
"""
|
|
45
|
+
Return the string representation.
|
|
46
|
+
|
|
47
|
+
EXAMPLES::
|
|
48
|
+
|
|
49
|
+
sage: from sage.symbolic.expression import make_map
|
|
50
|
+
sage: make_map({x:x+1})
|
|
51
|
+
SubsMap
|
|
52
|
+
"""
|
|
53
|
+
return 'SubsMap' # GEx_to_str(&x._gobj)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
cdef SubstitutionMap new_SubstitutionMap_from_GExMap(const GExMap& smap):
|
|
57
|
+
"""
|
|
58
|
+
Wrap a Pynac object into a Python object.
|
|
59
|
+
|
|
60
|
+
INPUT:
|
|
61
|
+
|
|
62
|
+
- ``smap`` -- a Pynac ``exmap``
|
|
63
|
+
|
|
64
|
+
OUTPUT: a new Python :class:`SubstitutionMap`
|
|
65
|
+
|
|
66
|
+
EXAMPLES::
|
|
67
|
+
|
|
68
|
+
sage: from sage.symbolic.expression import make_map
|
|
69
|
+
sage: make_map({x:x+1})
|
|
70
|
+
SubsMap
|
|
71
|
+
"""
|
|
72
|
+
cdef SubstitutionMap result
|
|
73
|
+
result = <SubstitutionMap>SubstitutionMap.__new__(SubstitutionMap)
|
|
74
|
+
result._gmapobj = smap
|
|
75
|
+
return result
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
cpdef SubstitutionMap make_map(subs_dict):
|
|
79
|
+
"""
|
|
80
|
+
Construct a new substitution map.
|
|
81
|
+
|
|
82
|
+
OUTPUT: a new :class:`SubstitutionMap` for doctesting
|
|
83
|
+
|
|
84
|
+
EXAMPLES::
|
|
85
|
+
|
|
86
|
+
sage: from sage.symbolic.expression import make_map
|
|
87
|
+
sage: make_map({x:x+1})
|
|
88
|
+
SubsMap
|
|
89
|
+
"""
|
|
90
|
+
cdef GExMap smap
|
|
91
|
+
for k, v in subs_dict.iteritems():
|
|
92
|
+
smap.insert(make_pair((<Expression>k)._gobj,
|
|
93
|
+
(<Expression>v)._gobj))
|
|
94
|
+
return new_SubstitutionMap_from_GExMap(smap)
|
|
Binary file
|
sage_wheels/bin/Singular
ADDED
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# cohomo.la - a libtool library file
|
|
2
|
+
# Generated by libtool (GNU libtool) 2.5.4
|
|
3
|
+
#
|
|
4
|
+
# Please DO NOT delete this file!
|
|
5
|
+
# It is necessary for linking the library.
|
|
6
|
+
|
|
7
|
+
# The name that we can dlopen(3).
|
|
8
|
+
dlname='cohomo.so'
|
|
9
|
+
|
|
10
|
+
# Names of this library.
|
|
11
|
+
library_names='cohomo.so cohomo.so cohomo.so'
|
|
12
|
+
|
|
13
|
+
# The name of the static archive.
|
|
14
|
+
old_library=''
|
|
15
|
+
|
|
16
|
+
# Linker flags that cannot go in dependency_libs.
|
|
17
|
+
inherited_linker_flags=''
|
|
18
|
+
|
|
19
|
+
# Libraries that this one depends upon.
|
|
20
|
+
dependency_libs=' -lreadline -lgmp -lrt -lpthread'
|
|
21
|
+
|
|
22
|
+
# Names of additional weak libraries provided by this library
|
|
23
|
+
weak_library_names=''
|
|
24
|
+
|
|
25
|
+
# Version information for cohomo.
|
|
26
|
+
current=0
|
|
27
|
+
age=0
|
|
28
|
+
revision=0
|
|
29
|
+
|
|
30
|
+
# Is this an already installed library?
|
|
31
|
+
installed=yes
|
|
32
|
+
|
|
33
|
+
# Should we warn about portability when linking against -modules?
|
|
34
|
+
shouldnotlink=yes
|
|
35
|
+
|
|
36
|
+
# Files to dlopen/dlpreopen
|
|
37
|
+
dlopen=''
|
|
38
|
+
dlpreopen=''
|
|
39
|
+
|
|
40
|
+
# Directory that this library needs to be installed in:
|
|
41
|
+
libdir='/host/sage-manylinux_2_28_aarch64/lib/singular/MOD'
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# customstd.la - a libtool library file
|
|
2
|
+
# Generated by libtool (GNU libtool) 2.5.4
|
|
3
|
+
#
|
|
4
|
+
# Please DO NOT delete this file!
|
|
5
|
+
# It is necessary for linking the library.
|
|
6
|
+
|
|
7
|
+
# The name that we can dlopen(3).
|
|
8
|
+
dlname='customstd.so'
|
|
9
|
+
|
|
10
|
+
# Names of this library.
|
|
11
|
+
library_names='customstd.so customstd.so customstd.so'
|
|
12
|
+
|
|
13
|
+
# The name of the static archive.
|
|
14
|
+
old_library=''
|
|
15
|
+
|
|
16
|
+
# Linker flags that cannot go in dependency_libs.
|
|
17
|
+
inherited_linker_flags=''
|
|
18
|
+
|
|
19
|
+
# Libraries that this one depends upon.
|
|
20
|
+
dependency_libs=' -lreadline -lgmp -lrt -lpthread'
|
|
21
|
+
|
|
22
|
+
# Names of additional weak libraries provided by this library
|
|
23
|
+
weak_library_names=''
|
|
24
|
+
|
|
25
|
+
# Version information for customstd.
|
|
26
|
+
current=0
|
|
27
|
+
age=0
|
|
28
|
+
revision=0
|
|
29
|
+
|
|
30
|
+
# Is this an already installed library?
|
|
31
|
+
installed=yes
|
|
32
|
+
|
|
33
|
+
# Should we warn about portability when linking against -modules?
|
|
34
|
+
shouldnotlink=yes
|
|
35
|
+
|
|
36
|
+
# Files to dlopen/dlpreopen
|
|
37
|
+
dlopen=''
|
|
38
|
+
dlpreopen=''
|
|
39
|
+
|
|
40
|
+
# Directory that this library needs to be installed in:
|
|
41
|
+
libdir='/host/sage-manylinux_2_28_aarch64/lib/singular/MOD'
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# freealgebra.la - a libtool library file
|
|
2
|
+
# Generated by libtool (GNU libtool) 2.5.4
|
|
3
|
+
#
|
|
4
|
+
# Please DO NOT delete this file!
|
|
5
|
+
# It is necessary for linking the library.
|
|
6
|
+
|
|
7
|
+
# The name that we can dlopen(3).
|
|
8
|
+
dlname='freealgebra.so'
|
|
9
|
+
|
|
10
|
+
# Names of this library.
|
|
11
|
+
library_names='freealgebra.so freealgebra.so freealgebra.so'
|
|
12
|
+
|
|
13
|
+
# The name of the static archive.
|
|
14
|
+
old_library=''
|
|
15
|
+
|
|
16
|
+
# Linker flags that cannot go in dependency_libs.
|
|
17
|
+
inherited_linker_flags=''
|
|
18
|
+
|
|
19
|
+
# Libraries that this one depends upon.
|
|
20
|
+
dependency_libs=' -lreadline -lgmp -lrt -lpthread'
|
|
21
|
+
|
|
22
|
+
# Names of additional weak libraries provided by this library
|
|
23
|
+
weak_library_names=''
|
|
24
|
+
|
|
25
|
+
# Version information for freealgebra.
|
|
26
|
+
current=0
|
|
27
|
+
age=0
|
|
28
|
+
revision=0
|
|
29
|
+
|
|
30
|
+
# Is this an already installed library?
|
|
31
|
+
installed=yes
|
|
32
|
+
|
|
33
|
+
# Should we warn about portability when linking against -modules?
|
|
34
|
+
shouldnotlink=yes
|
|
35
|
+
|
|
36
|
+
# Files to dlopen/dlpreopen
|
|
37
|
+
dlopen=''
|
|
38
|
+
dlpreopen=''
|
|
39
|
+
|
|
40
|
+
# Directory that this library needs to be installed in:
|
|
41
|
+
libdir='/host/sage-manylinux_2_28_aarch64/lib/singular/MOD'
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# gfanlib.la - a libtool library file
|
|
2
|
+
# Generated by libtool (GNU libtool) 2.5.4
|
|
3
|
+
#
|
|
4
|
+
# Please DO NOT delete this file!
|
|
5
|
+
# It is necessary for linking the library.
|
|
6
|
+
|
|
7
|
+
# The name that we can dlopen(3).
|
|
8
|
+
dlname='gfanlib.so'
|
|
9
|
+
|
|
10
|
+
# Names of this library.
|
|
11
|
+
library_names='gfanlib.so gfanlib.so gfanlib.so'
|
|
12
|
+
|
|
13
|
+
# The name of the static archive.
|
|
14
|
+
old_library=''
|
|
15
|
+
|
|
16
|
+
# Linker flags that cannot go in dependency_libs.
|
|
17
|
+
inherited_linker_flags=''
|
|
18
|
+
|
|
19
|
+
# Libraries that this one depends upon.
|
|
20
|
+
dependency_libs=' -lcddgmp -lreadline -lgmp -lrt -lpthread'
|
|
21
|
+
|
|
22
|
+
# Names of additional weak libraries provided by this library
|
|
23
|
+
weak_library_names=''
|
|
24
|
+
|
|
25
|
+
# Version information for gfanlib.
|
|
26
|
+
current=0
|
|
27
|
+
age=0
|
|
28
|
+
revision=0
|
|
29
|
+
|
|
30
|
+
# Is this an already installed library?
|
|
31
|
+
installed=yes
|
|
32
|
+
|
|
33
|
+
# Should we warn about portability when linking against -modules?
|
|
34
|
+
shouldnotlink=yes
|
|
35
|
+
|
|
36
|
+
# Files to dlopen/dlpreopen
|
|
37
|
+
dlopen=''
|
|
38
|
+
dlpreopen=''
|
|
39
|
+
|
|
40
|
+
# Directory that this library needs to be installed in:
|
|
41
|
+
libdir='/host/sage-manylinux_2_28_aarch64/lib/singular/MOD'
|
|
Binary file
|