240
240
from sage .structure .unique_representation import (CachedRepresentation ,
241
241
UniqueRepresentation )
242
242
from sage .structure .richcmp import richcmp_by_eq_and_lt
243
+ import sage .rings .abc
243
244
from .misc import WithLocals
244
245
245
246
@@ -3622,13 +3623,12 @@ def _convert_(self, data):
3622
3623
from sage .symbolic .ring import SR
3623
3624
return self ._convert_ (SR (data ))
3624
3625
3625
- from sage .symbolic .ring import SymbolicRing
3626
3626
from sage .rings .polynomial .polynomial_ring import PolynomialRing_general
3627
3627
from sage .rings .polynomial .multi_polynomial_ring_base import \
3628
3628
MPolynomialRing_base
3629
3629
from sage .rings .power_series_ring import PowerSeriesRing_generic
3630
3630
import operator
3631
- if isinstance (P , SymbolicRing ):
3631
+ if isinstance (P , sage . rings . abc . SymbolicRing ):
3632
3632
if data .operator () == operator .pow :
3633
3633
base , exponent = data .operands ()
3634
3634
if str (base ) == var :
@@ -4419,10 +4419,9 @@ def __init__(self, base, *args, **kwds):
4419
4419
sage: forget()
4420
4420
"""
4421
4421
from warnings import warn
4422
- from sage .symbolic .ring import SymbolicRing
4423
4422
4424
4423
super (ExponentialGrowthGroup , self ).__init__ (base , * args , ** kwds )
4425
- if isinstance (base , SymbolicRing ) and not self ._an_element_base_ () > 0 :
4424
+ if isinstance (base , sage . rings . abc . SymbolicRing ) and not self ._an_element_base_ () > 0 :
4426
4425
warn ("When using the Exponential {}, make "
4427
4426
"assumptions on the used symbolic elements.\n "
4428
4427
"In particular, use something like "
@@ -4552,9 +4551,8 @@ def _convert_(self, data):
4552
4551
import operator
4553
4552
from sage .functions .log import Function_exp
4554
4553
from sage .symbolic .operators import mul_vararg
4555
- from sage .symbolic .ring import SymbolicRing
4556
4554
4557
- if isinstance (P , SymbolicRing ):
4555
+ if isinstance (P , sage . rings . abc . SymbolicRing ):
4558
4556
op = data .operator ()
4559
4557
if op == operator .pow :
4560
4558
base , exponent = data .operands ()
@@ -4654,38 +4652,31 @@ def _split_raw_element_(base):
4654
4652
(-x, -1)
4655
4653
sage: forget()
4656
4654
"""
4657
- from sage .rings .complex_arb import ComplexBallField
4658
- from sage .rings .complex_mpfr import ComplexField_class
4659
- from sage .rings .complex_interval_field import ComplexIntervalField_class
4660
4655
from sage .rings .integer_ring import ZZ
4661
4656
from sage .rings .rational_field import QQ
4662
- from sage .rings .real_arb import RealBallField
4663
- from sage .rings .real_mpfr import RealField_class
4664
- from sage .rings .real_mpfi import RealIntervalField_class
4665
4657
from sage .rings .qqbar import AA
4666
4658
from sage .structure .element import parent
4667
- from sage .symbolic .ring import SymbolicRing
4668
4659
4669
4660
P = base .parent ()
4670
- if isinstance (P , SymbolicRing ):
4661
+ if isinstance (P , sage . rings . abc . SymbolicRing ):
4671
4662
try :
4672
4663
base = base .pyobject ()
4673
4664
except TypeError :
4674
4665
pass
4675
4666
else :
4676
4667
P = base .parent ()
4677
4668
4678
- if P in (ZZ , QQ , AA ) or isinstance (P , (SymbolicRing ,
4679
- RealField_class ,
4680
- RealIntervalField_class ,
4681
- RealBallField )):
4669
+ if P in (ZZ , QQ , AA ) or isinstance (P , (sage . rings . abc . SymbolicRing ,
4670
+ sage . rings . abc . RealField ,
4671
+ sage . rings . abc . RealIntervalField ,
4672
+ sage . rings . abc . RealBallField )):
4682
4673
if base > 0 :
4683
4674
return base , None
4684
4675
if base < 0 :
4685
4676
return - base , - 1
4686
- elif isinstance (P , (ComplexField_class ,
4687
- ComplexIntervalField_class ,
4688
- ComplexBallField )):
4677
+ elif isinstance (P , (sage . rings . abc . ComplexField ,
4678
+ sage . rings . abc . ComplexIntervalField ,
4679
+ sage . rings . abc . ComplexBallField )):
4689
4680
size = abs (base )
4690
4681
direction = base / size
4691
4682
return size , direction
@@ -4847,9 +4838,6 @@ def factory(cls,
4847
4838
from sage .categories .cartesian_product import cartesian_product
4848
4839
from sage .groups .misc_gps .argument_groups import AbstractArgumentGroup
4849
4840
from sage .groups .misc_gps .argument_groups import ArgumentGroup
4850
- from sage .rings .complex_arb import ComplexBallField
4851
- from sage .rings .complex_mpfr import ComplexField_class
4852
- from sage .rings .complex_interval_field import ComplexIntervalField_class
4853
4841
from sage .rings .number_field .number_field import NumberField_cyclotomic
4854
4842
from sage .rings .qqbar import QQbar , AA
4855
4843
@@ -4861,9 +4849,9 @@ def factory(cls,
4861
4849
UU = cls ._non_growth_group_class_ (
4862
4850
ArgumentGroup (domain = base ), var )
4863
4851
groups = (EE , UU )
4864
- elif isinstance (base , (ComplexField_class ,
4865
- ComplexIntervalField_class ,
4866
- ComplexBallField )):
4852
+ elif isinstance (base , (sage . rings . abc . ComplexField ,
4853
+ sage . rings . abc . ComplexIntervalField ,
4854
+ sage . rings . abc . ComplexBallField )):
4867
4855
EE = cls (base ._real_field (), var , ** kwds )
4868
4856
UU = cls ._non_growth_group_class_ (
4869
4857
ArgumentGroup (exponents = base ._real_field ()), var )
0 commit comments