passagemath-flint 10.5.43__cp312-cp312-musllinux_1_2_aarch64.whl → 10.6.1rc1__cp312-cp312-musllinux_1_2_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.
- {passagemath_flint-10.5.43.dist-info → passagemath_flint-10.6.1rc1.dist-info}/METADATA +5 -6
- {passagemath_flint-10.5.43.dist-info → passagemath_flint-10.6.1rc1.dist-info}/RECORD +100 -100
- passagemath_flint.libs/{libflint-7dd7ad94.so.19.0.0 → libflint-4ce13791.so.20.0.1} +0 -0
- sage/combinat/posets/hasse_cython_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/data_structures/bounded_integer_sequences.cpython-312-aarch64-linux-musl.so +0 -0
- sage/data_structures/bounded_integer_sequences.pyx +22 -20
- sage/graphs/chrompoly.cpython-312-aarch64-linux-musl.so +0 -0
- sage/graphs/chrompoly.pyx +4 -3
- sage/graphs/matchpoly.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/arb/arith.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/arith.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/arith_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/flint.pxd +2 -2
- sage/libs/flint/flint_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/flint_wrap.h +4 -0
- sage/libs/flint/fmpq_poly_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/fmpz_factor_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/fmpz_poly.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/fmpz_poly_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/nmod_poly_linkage.pxi +5 -4
- sage/libs/flint/qsieve.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/qsieve_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/types.pxd +2 -2
- sage/libs/flint/ulong_extras.cpython-312-aarch64-linux-musl.so +0 -0
- sage/libs/flint/ulong_extras_sage.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/change_ring.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_complex_ball_dense.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_cyclo_dense.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_cyclo_dense.pyx +3 -3
- sage/matrix/matrix_integer_dense.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_integer_dense.pyx +50 -33
- sage/matrix/matrix_integer_sparse.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_integer_sparse.pyx +1 -1
- sage/matrix/matrix_rational_dense.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_rational_dense.pyx +64 -28
- sage/matrix/matrix_rational_sparse.cpython-312-aarch64-linux-musl.so +0 -0
- sage/matrix/matrix_rational_sparse.pyx +3 -3
- sage/matrix/misc_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/modular/modform/eis_series_cython.cpython-312-aarch64-linux-musl.so +0 -0
- sage/modular/modsym/apply.cpython-312-aarch64-linux-musl.so +0 -0
- sage/modular/modsym/heilbronn.cpython-312-aarch64-linux-musl.so +0 -0
- sage/modular/pollack_stevens/dist.cpython-312-aarch64-linux-musl.so +0 -0
- sage/modular/pollack_stevens/dist.pyx +2 -2
- sage/quivers/algebra.py +2 -1
- sage/quivers/algebra_elements.cpython-312-aarch64-linux-musl.so +0 -0
- sage/quivers/algebra_elements.pyx +5 -5
- sage/quivers/ar_quiver.py +21 -21
- sage/quivers/homspace.py +2 -1
- sage/quivers/morphism.py +31 -29
- sage/quivers/path_semigroup.py +14 -11
- sage/quivers/paths.cpython-312-aarch64-linux-musl.so +0 -0
- sage/quivers/paths.pyx +2 -2
- sage/quivers/representation.py +22 -24
- sage/rings/complex_arb.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/complex_arb.pyx +37 -36
- sage/rings/complex_interval.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/convert/mpfi.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/factorint_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/fraction_field_FpT.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/fraction_field_FpT.pyx +29 -0
- sage/rings/number_field/S_unit_solver.py +1 -1
- sage/rings/number_field/galois_group.py +1 -1
- sage/rings/number_field/morphism.py +3 -4
- sage/rings/number_field/number_field.py +97 -75
- sage/rings/number_field/number_field_element.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/number_field/number_field_element.pyx +72 -0
- sage/rings/number_field/number_field_element_quadratic.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/number_field/number_field_element_quadratic.pyx +35 -17
- sage/rings/number_field/number_field_morphisms.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/number_field/number_field_morphisms.pyx +2 -2
- sage/rings/number_field/number_field_rel.py +1 -1
- sage/rings/number_field/order.py +44 -47
- sage/rings/number_field/order_ideal.py +2 -5
- sage/rings/polynomial/evaluation_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/hilbert.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/hilbert.pyx +3 -6
- sage/rings/polynomial/polynomial_complex_arb.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/polynomial_integer_dense_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/polynomial_integer_dense_flint.pyx +3 -5
- sage/rings/polynomial/polynomial_number_field.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/polynomial_rational_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/polynomial_rational_flint.pxd +3 -3
- sage/rings/polynomial/polynomial_rational_flint.pyx +24 -11
- sage/rings/polynomial/polynomial_zmod_flint.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/polynomial_zmod_flint.pyx +3 -4
- sage/rings/polynomial/real_roots.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/real_roots.pyx +1 -1
- sage/rings/polynomial/refine_root.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/weil/weil_polynomials.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/polynomial/weil/weil_polynomials.pyx +1 -1
- sage/rings/qqbar.py +1 -1
- sage/rings/real_arb.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/real_arb.pyx +21 -10
- sage/rings/real_interval_absolute.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/real_mpfi.cpython-312-aarch64-linux-musl.so +0 -0
- sage/rings/real_mpfi.pyx +14 -11
- sage/schemes/elliptic_curves/descent_two_isogeny.cpython-312-aarch64-linux-musl.so +0 -0
- sage/schemes/elliptic_curves/descent_two_isogeny.pyx +11 -0
- {passagemath_flint-10.5.43.dist-info → passagemath_flint-10.6.1rc1.dist-info}/WHEEL +0 -0
- {passagemath_flint-10.5.43.dist-info → passagemath_flint-10.6.1rc1.dist-info}/top_level.txt +0 -0
sage/rings/real_mpfi.pyx
CHANGED
@@ -952,16 +952,16 @@ cdef class RealIntervalField_class(sage.rings.abc.RealIntervalField):
|
|
952
952
|
"""
|
953
953
|
return 1
|
954
954
|
|
955
|
-
def gens(self):
|
955
|
+
def gens(self) -> tuple:
|
956
956
|
"""
|
957
|
-
Return a
|
957
|
+
Return a tuple of generators.
|
958
958
|
|
959
959
|
EXAMPLES::
|
960
960
|
|
961
961
|
sage: RIF.gens()
|
962
|
-
|
962
|
+
(1,)
|
963
963
|
"""
|
964
|
-
return
|
964
|
+
return (self.gen(),)
|
965
965
|
|
966
966
|
def _is_valid_homomorphism_(self, codomain, im_gens, base_map=None):
|
967
967
|
"""
|
@@ -5004,7 +5004,7 @@ cdef class RealIntervalFieldElement(RingElement):
|
|
5004
5004
|
"""
|
5005
5005
|
return (~self).arctanh()
|
5006
5006
|
|
5007
|
-
def
|
5007
|
+
def algebraic_dependency(self, n):
|
5008
5008
|
r"""
|
5009
5009
|
Return a polynomial of degree at most `n` which is
|
5010
5010
|
approximately satisfied by ``self``.
|
@@ -5020,13 +5020,13 @@ cdef class RealIntervalFieldElement(RingElement):
|
|
5020
5020
|
|
5021
5021
|
ALGORITHM:
|
5022
5022
|
|
5023
|
-
|
5023
|
+
This uses the PARI C-library :pari:`algdep` command.
|
5024
5024
|
|
5025
5025
|
EXAMPLES::
|
5026
5026
|
|
5027
5027
|
sage: r = sqrt(RIF(2)); r
|
5028
5028
|
1.414213562373095?
|
5029
|
-
sage: r.
|
5029
|
+
sage: r.algebraic_dependency(5) # needs fpylll
|
5030
5030
|
x^2 - 2
|
5031
5031
|
|
5032
5032
|
If we compute a wrong, but precise, interval, we get a wrong
|
@@ -5034,7 +5034,7 @@ cdef class RealIntervalFieldElement(RingElement):
|
|
5034
5034
|
|
5035
5035
|
sage: r = sqrt(RealIntervalField(200)(2)) + (1/2)^40; r
|
5036
5036
|
1.414213562374004543503461652447613117632171875376948073176680?
|
5037
|
-
sage: r.
|
5037
|
+
sage: r.algebraic_dependency(5) # needs fpylll
|
5038
5038
|
7266488*x^5 + 22441629*x^4 - 90470501*x^3 + 23297703*x^2 + 45778664*x + 13681026
|
5039
5039
|
|
5040
5040
|
But if we compute an interval that includes the number we mean,
|
@@ -5042,13 +5042,13 @@ cdef class RealIntervalFieldElement(RingElement):
|
|
5042
5042
|
interval is very imprecise::
|
5043
5043
|
|
5044
5044
|
sage: r = r.union(sqrt(2.0))
|
5045
|
-
sage: r.
|
5045
|
+
sage: r.algebraic_dependency(5) # needs fpylll
|
5046
5046
|
x^2 - 2
|
5047
5047
|
|
5048
5048
|
Even on this extremely imprecise interval we get an answer which is
|
5049
5049
|
technically correct::
|
5050
5050
|
|
5051
|
-
sage: RIF(-1, 1).
|
5051
|
+
sage: RIF(-1, 1).algebraic_dependency(5) # needs fpylll
|
5052
5052
|
x
|
5053
5053
|
"""
|
5054
5054
|
# If 0 is in the interval, then we have no known bits! But
|
@@ -5061,7 +5061,10 @@ cdef class RealIntervalFieldElement(RingElement):
|
|
5061
5061
|
|
5062
5062
|
known_bits = -self.relative_diameter().log2()
|
5063
5063
|
|
5064
|
-
return sage.arith.misc.
|
5064
|
+
return sage.arith.misc.algebraic_dependency(self.center(),
|
5065
|
+
n, known_bits=known_bits)
|
5066
|
+
|
5067
|
+
algdep = algebraic_dependency
|
5065
5068
|
|
5066
5069
|
def factorial(self):
|
5067
5070
|
"""
|
Binary file
|
@@ -974,6 +974,8 @@ cdef int everywhere_locally_soluble(mpz_t a, mpz_t b, mpz_t c, mpz_t d, mpz_t e)
|
|
974
974
|
|
975
975
|
# Odd finite primes
|
976
976
|
Delta = f.discriminant()
|
977
|
+
if not Delta:
|
978
|
+
raise ValueError("the curve is singular, Delta is zero")
|
977
979
|
for p in prime_divisors(Delta):
|
978
980
|
if p == 2:
|
979
981
|
continue
|
@@ -998,6 +1000,15 @@ def test_els(a, b, c, d, e):
|
|
998
1000
|
....: print("This never happened", a, b, c, d, e)
|
999
1001
|
....: except ValueError:
|
1000
1002
|
....: continue
|
1003
|
+
|
1004
|
+
TESTS:
|
1005
|
+
|
1006
|
+
Check that :issue:`39864` is fixed::
|
1007
|
+
|
1008
|
+
sage: test_els(194, 617, 846, 617, 194)
|
1009
|
+
Traceback (most recent call last):
|
1010
|
+
...
|
1011
|
+
ValueError: the curve is singular, Delta is zero
|
1001
1012
|
"""
|
1002
1013
|
cdef Integer A, B, C, D, E
|
1003
1014
|
A = Integer(a)
|
File without changes
|
File without changes
|