Skip to content

Commit 735daa4

Browse files
author
Release Manager
committed
Trac #34192: Remove imports from sage.rings.all in sage.calculus, functions, symbolic
URL: https://trac.sagemath.org/34192 Reported by: mkoeppe Ticket author(s): Matthias Koeppe Reviewer(s): Kwankyu Lee
2 parents 9cafd35 + 9d3577e commit 735daa4

16 files changed

+48
-30
lines changed

src/sage/calculus/calculus.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1140,7 +1140,7 @@ def minpoly(ex, var='x', algorithm=None, bits=None, degree=None, epsilon=0):
11401140
raise ValueError("Could not find minimal polynomial (%s bits, degree %s)." % (bits, degree))
11411141

11421142
if algorithm is None or algorithm == 'algebraic':
1143-
from sage.rings.all import QQbar
1143+
from sage.rings.qqbar import QQbar
11441144
return QQ[var](QQbar(ex).minpoly())
11451145

11461146
raise ValueError("Unknown algorithm: %s" % algorithm)

src/sage/calculus/riemann.pyx

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ from sage.misc.decorators import options
3131

3232
from sage.ext.fast_callable import fast_callable
3333

34-
from sage.rings.all import CDF
34+
from sage.rings.complex_double import CDF
3535

3636
from sage.arith.srange import srange
3737

src/sage/functions/bessel.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,9 @@
216216
from sage.functions.trig import sin, cos
217217
from sage.libs.mpmath import utils as mpmath_utils
218218
from sage.misc.latex import latex
219-
from sage.rings.all import Integer, ZZ, QQ
219+
from sage.rings.integer import Integer
220+
from sage.rings.integer_ring import ZZ
221+
from sage.rings.rational_field import QQ
220222
from sage.structure.element import get_coercion_model
221223
from sage.symbolic.constants import pi
222224
from sage.symbolic.ring import SR

src/sage/functions/gamma.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
from sage.symbolic.function import GinacFunction, BuiltinFunction
55
from sage.symbolic.expression import register_symbol, symbol_table
66
from sage.structure.all import parent as s_parent
7-
from sage.rings.all import Rational, ComplexField
7+
from sage.rings.complex_mpfr import ComplexField
8+
from sage.rings.rational import Rational
89
from sage.functions.exp_integral import Ei
910
from sage.libs.mpmath import utils as mpmath_utils
1011
from .log import exp

src/sage/functions/generalized.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@
5252
##############################################################################
5353

5454
from sage.symbolic.function import (BuiltinFunction, GinacFunction)
55-
from sage.rings.all import ComplexIntervalField, ZZ
55+
from sage.rings.complex_interval_field import ComplexIntervalField
56+
from sage.rings.integer_ring import ZZ
5657

5758

5859
class FunctionDiracDelta(BuiltinFunction):

src/sage/functions/orthogonal_polys.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2565,7 +2565,7 @@ def _eval_special_values_(self, n, a, x):
25652565
if a == 0:
25662566
return laguerre(n, x)
25672567
if x == 0:
2568-
from sage.arith.all import binomial
2568+
from sage.arith.misc import binomial
25692569
return binomial(n+a, n)
25702570

25712571
def _pol_gen_laguerre(self, n, a, x):

src/sage/functions/other.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
from sage.functions.trig import arctan2
3838

39-
from sage.arith.all import binomial as arith_binomial
39+
from sage.arith.misc import binomial as arith_binomial
4040

4141
from sage.misc.functional import sqrt
4242

@@ -220,7 +220,7 @@ def _eval_floor_ceil(self, x, method, bits=0, **kwds):
220220
# The strategy is to first reduce the absolute diameter of the
221221
# interval until its size is at most 10^(-6). Then we check for
222222
# (B) by simplifying the expression.
223-
from sage.rings.all import RealIntervalField
223+
from sage.rings.real_mpfi import RealIntervalField
224224

225225
# Might it be needed to simplify x? This only applies for
226226
# elements of SR (or its subrings)

src/sage/functions/prime_pi.pyx

+1-1
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ cdef class PrimePi(BuiltinFunction):
192192
return plot_step_function([(xmin,0),(xmax,0)], **kwds)
193193
y = self(xmin)
194194
v = [(xmin, y)]
195-
from sage.rings.all import prime_range
195+
from sage.rings.fast_arith import prime_range
196196
for p in prime_range(xmin+1, xmax+1, py_ints=True):
197197
y += 1
198198
v.append((p,y))

src/sage/symbolic/callable.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ def __init__(self, arguments):
144144
CallableSymbolicExpressionFunctor(x, y)
145145
"""
146146
self._arguments = arguments
147-
from sage.categories.all import Rings
147+
from sage.categories.rings import Rings
148148
self.rank = 3
149149
ConstructionFunctor.__init__(self, Rings(), Rings())
150150

src/sage/symbolic/expression.pyx

+12-5
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,8 @@ More sanity tests::
376376
from cysignals.signals cimport sig_on, sig_off
377377
from sage.ext.cplusplus cimport ccrepr, ccreadstr
378378

379+
from copy import copy
380+
379381
import operator
380382
import sage.rings.integer
381383
import sage.rings.rational
@@ -2548,8 +2550,9 @@ cdef class Expression(Expression_abc):
25482550
sage: SR(1.2).is_algebraic()
25492551
False
25502552
"""
2553+
from sage.rings.qqbar import QQbar
25512554
try:
2552-
ex = sage.rings.all.QQbar(self)
2555+
ex = QQbar(self)
25532556
except (TypeError, ValueError, NotImplementedError):
25542557
return False
25552558
return True
@@ -7798,7 +7801,7 @@ cdef class Expression(Expression_abc):
77987801
if len(v) != 1:
77997802
raise ValueError("self must be a polynomial in one variable but it is in the variables %s" % tuple([v]))
78007803
f = self.polynomial(base_ring)
7801-
from sage.rings.all import PowerSeriesRing
7804+
from sage.rings.power_series_ring import PowerSeriesRing
78027805
R = PowerSeriesRing(base_ring, names=f.parent().variable_names())
78037806
return R(f, f.degree()+1)
78047807

@@ -11792,13 +11795,14 @@ cdef class Expression(Expression_abc):
1179211795
from sage.symbolic.operators import add_vararg as opadd, \
1179311796
mul_vararg as opmul
1179411797
from sage.misc.misc_c import prod
11798+
from sage.symbolic.ring import SR
1179511799

1179611800
def treat_term(op, term, args):
11797-
l = sage.all.copy(args)
11801+
l = copy(args)
1179811802
l.insert(0, term)
1179911803
return op(*l)
1180011804

11801-
if self.parent() is not sage.all.SR:
11805+
if self.parent() is not SR:
1180211806
return self
1180311807

1180411808
op = self.operator()
@@ -13731,7 +13735,10 @@ cpdef new_Expression(parent, x):
1373113735
from sage.misc.misc_c import prod
1373213736
return prod([SR(p)**e for p,e in x], SR(x.unit()))
1373313737
elif x in Sets():
13734-
from sage.rings.all import NN, ZZ, QQ, AA
13738+
from sage.rings.integer_ring import ZZ
13739+
from sage.rings.qqbar import AA
13740+
from sage.rings.rational_field import QQ
13741+
from sage.rings.semirings.non_negative_integer_semiring import NN
1373513742
from sage.sets.real_set import RealSet
1373613743
if (x.is_finite() or x in (NN, ZZ, QQ, AA)
1373713744
or isinstance(x, RealSet)):

src/sage/symbolic/expression_conversions.py

+5-3
Original file line numberDiff line numberDiff line change
@@ -1200,7 +1200,7 @@ def arithmetic(self, ex, operator):
12001200
# root is selected).
12011201
try:
12021202
if operator is _operator.pow:
1203-
from sage.rings.all import Rational
1203+
from sage.rings.rational import Rational
12041204
base, expt = ex.operands()
12051205
base = self.field(base)
12061206
expt = Rational(expt)
@@ -1636,7 +1636,7 @@ def __init__(self, ex, base_ring=None, ring=None):
16361636
super().__init__(ex, base_ring, ring)
16371637

16381638
if ring is None and base_ring is not None:
1639-
from sage.rings.all import LaurentPolynomialRing
1639+
from sage.rings.polynomial.laurent_polynomial_ring import LaurentPolynomialRing
16401640
self.ring = LaurentPolynomialRing(self.base_ring,
16411641
names=self.varnames)
16421642

@@ -1945,7 +1945,9 @@ def arithmetic(self, ex, operator):
19451945

19461946
operands = ex.operands()
19471947
if operator is _operator.pow:
1948-
from sage.all import Integer, Rational
1948+
from sage.rings.integer import Integer
1949+
from sage.rings.rational import Rational
1950+
19491951
base, expt = operands
19501952

19511953
if expt == Rational(((1,2))):

src/sage/symbolic/function.pyx

+3-1
Original file line numberDiff line numberDiff line change
@@ -1060,7 +1060,9 @@ cdef class BuiltinFunction(Function):
10601060
return res
10611061

10621062
p = res.parent()
1063-
from sage.rings.all import ZZ, RDF, CDF
1063+
from sage.rings.complex_double import CDF
1064+
from sage.rings.integer_ring import ZZ
1065+
from sage.rings.real_double import RDF
10641066
if ZZ.has_coerce_map_from(p):
10651067
return int(res)
10661068
elif RDF.has_coerce_map_from(p):

src/sage/symbolic/relation.py

+6-3
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,7 @@ def string_to_list_of_solutions(s):
572572
sage: sage.symbolic.relation.string_to_list_of_solutions(s)
573573
[x == -1/2*a - 1/2*sqrt(a^2 - 4*b), x == -1/2*a + 1/2*sqrt(a^2 - 4*b)]
574574
"""
575-
from sage.categories.all import Objects
575+
from sage.categories.objects import Objects
576576
from sage.structure.sequence import Sequence
577577
from sage.calculus.calculus import symbolic_expression_from_maxima_string
578578
v = symbolic_expression_from_maxima_string(s, equals_sub=True)
@@ -1570,7 +1570,9 @@ def solve_mod(eqns, modulus, solution_dict=False):
15701570
15711571
15721572
"""
1573-
from sage.rings.all import Integer, Integers, crt_basis
1573+
from sage.rings.finite_rings.integer_mod_ring import Integers
1574+
from sage.rings.integer import Integer
1575+
from sage.rings.integer_ring import crt_basis
15741576
from sage.structure.element import Expression
15751577
from sage.misc.mrange import cartesian_product_iterator
15761578
from sage.modules.free_module_element import vector
@@ -1686,7 +1688,8 @@ def _solve_mod_prime_power(eqns, p, m, vars):
16861688
13241296179, 19473547571, 2263241296179]
16871689
16881690
"""
1689-
from sage.rings.all import Integers, PolynomialRing
1691+
from sage.rings.finite_rings.integer_mod_ring import Integers
1692+
from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing
16901693
from sage.modules.free_module_element import vector
16911694
from sage.misc.mrange import cartesian_product_iterator
16921695

src/sage/symbolic/ring.pyx

+4-6
Original file line numberDiff line numberDiff line change
@@ -214,11 +214,9 @@ cdef class SymbolicRing(sage.rings.abc.SymbolicRing):
214214
from sage.rings.polynomial.polynomial_ring import is_PolynomialRing
215215
from sage.rings.polynomial.multi_polynomial_ring import is_MPolynomialRing
216216
from sage.rings.polynomial.laurent_polynomial_ring import is_LaurentPolynomialRing
217-
218-
from sage.rings.all import (ComplexField,
219-
RLF, CLF,
220-
InfinityRing,
221-
UnsignedInfinityRing)
217+
from sage.rings.complex_mpfr import ComplexField
218+
from sage.rings.infinity import InfinityRing, UnsignedInfinityRing
219+
from sage.rings.real_lazy import RLF, CLF
222220
from sage.rings.finite_rings.finite_field_base import is_FiniteField
223221

224222
from sage.interfaces.maxima import Maxima
@@ -1225,7 +1223,7 @@ cdef class NumpyToSRMorphism(Morphism):
12251223
from sage.rings.real_double import RDF
12261224
self._intermediate_ring = RDF
12271225
elif issubclass(numpy_type, numpy.complexfloating):
1228-
from sage.rings.all import CDF
1226+
from sage.rings.complex_double import CDF
12291227
self._intermediate_ring = CDF
12301228
else:
12311229
raise TypeError("{} is not a numpy number type".format(numpy_type))

src/sage/symbolic/series_impl.pxi

+1-1
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,6 @@ cdef class SymbolicSeries(Expression):
271271
sage: g.parent()
272272
Power Series Ring in x over Symbolic Ring
273273
"""
274-
from sage.rings.all import PowerSeriesRing
274+
from sage.rings.power_series_ring import PowerSeriesRing
275275
R = PowerSeriesRing(base_ring, names=str(self.default_variable()))
276276
return R(self.list(), self.degree(self.default_variable()))

src/sage/symbolic/subring.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -407,7 +407,9 @@ def _coerce_map_from_(self, P):
407407
# Workaround; can be deleted once #19231 is fixed
408408
return False
409409

410-
from sage.rings.all import RLF, CLF, AA, QQbar, InfinityRing
410+
from sage.rings.infinity import InfinityRing
411+
from sage.rings.qqbar import AA, QQbar
412+
from sage.rings.real_lazy import RLF, CLF
411413

412414
if isinstance(P, type):
413415
return SR._coerce_map_from_(P)

0 commit comments

Comments
 (0)