Skip to content
Merged
1 change: 1 addition & 0 deletions src/doc/en/reference/polynomial_rings/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ Laurent Polynomials
.. toctree::
:maxdepth: 1

sage/rings/polynomial/laurent_polynomial_ring_base
sage/rings/polynomial/laurent_polynomial_ring
sage/rings/polynomial/laurent_polynomial
sage/rings/polynomial/omega
Expand Down
7 changes: 4 additions & 3 deletions src/sage/categories/pushout.py
Original file line number Diff line number Diff line change
Expand Up @@ -1760,9 +1760,10 @@ def _apply_functor(self, R):
Multivariate Laurent Polynomial Ring in s, t over Rational Field

"""
from sage.rings.polynomial.laurent_polynomial_ring import LaurentPolynomialRing, is_LaurentPolynomialRing
if self.multi_variate and is_LaurentPolynomialRing(R):
return LaurentPolynomialRing(R.base_ring(), (list(R.variable_names()) + [self.var]))
from sage.rings.polynomial.laurent_polynomial_ring import LaurentPolynomialRing
from sage.rings.polynomial.laurent_polynomial_ring_base import LaurentPolynomialRing_generic
if self.multi_variate and isinstance(R, LaurentPolynomialRing_generic):
return LaurentPolynomialRing(R.base_ring(), list(R.variable_names()) + [self.var])
else:
return LaurentPolynomialRing(R, self.var)

Expand Down
2 changes: 1 addition & 1 deletion src/sage/rings/fraction_field.py
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,7 @@ def _coerce_map_from_(self, S):
"""
from sage.rings.rational_field import QQ
from sage.rings.number_field.number_field_base import NumberField
from sage.rings.polynomial.laurent_polynomial_ring import \
from sage.rings.polynomial.laurent_polynomial_ring_base import \
LaurentPolynomialRing_generic

if S is self._R:
Expand Down
5 changes: 3 additions & 2 deletions src/sage/rings/laurent_series_ring.py
Original file line number Diff line number Diff line change
Expand Up @@ -623,9 +623,10 @@ def _coerce_map_from_(self, P):
A = self.base_ring()
from sage.rings.polynomial.polynomial_ring import is_PolynomialRing
from sage.rings.power_series_ring import is_PowerSeriesRing
from sage.rings.polynomial.laurent_polynomial_ring import is_LaurentPolynomialRing
from sage.rings.polynomial.laurent_polynomial_ring_base import LaurentPolynomialRing_generic

if ((is_LaurentSeriesRing(P) or
is_LaurentPolynomialRing(P) or
isinstance(P, LaurentPolynomialRing_generic) or
is_PowerSeriesRing(P) or
is_PolynomialRing(P))
and P.variable_name() == self.variable_name()
Expand Down
5 changes: 3 additions & 2 deletions src/sage/rings/localization.py
Original file line number Diff line number Diff line change
Expand Up @@ -669,8 +669,9 @@ def __init__(self, base_ring, extra_units, names=None, normalize=True, category=
if not type(extra_units) is list:
extra_units = [extra_units]

from sage.rings.polynomial.laurent_polynomial_ring import is_LaurentPolynomialRing
if is_LaurentPolynomialRing(base_ring):
from sage.rings.polynomial.laurent_polynomial_ring_base import LaurentPolynomialRing_generic

if isinstance(base_ring, LaurentPolynomialRing_generic):
extra_units += list(base_ring.gens())
base_ring = base_ring.polynomial_ring()

Expand Down
Loading