Skip to content

Commit 20ac0fb

Browse files
committed
Allow coercion from Frac(QQ[x]) to LaurentSeriesRing(QQ)
1 parent 5188024 commit 20ac0fb

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

src/sage/rings/laurent_series_ring.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -649,6 +649,8 @@ def _coerce_map_from_(self, P):
649649
True
650650
sage: S.has_coerce_map_from(PolynomialRing(ZZ, 't'))
651651
True
652+
sage: S.has_coerce_map_from(Frac(PolynomialRing(ZZ, 't')))
653+
False
652654
sage: S.has_coerce_map_from(LaurentPolynomialRing(ZZ, 't'))
653655
True
654656
sage: S.has_coerce_map_from(PowerSeriesRing(ZZ, 't'))
@@ -671,6 +673,12 @@ def _coerce_map_from_(self, P):
671673
sage: S.has_coerce_map_from(LaurentSeriesRing(QQ, 't'))
672674
False
673675
676+
sage: T.<t> = LaurentSeriesRing(QQ)
677+
sage: T.has_coerce_map_from(QQ['t'])
678+
True
679+
sage: T.has_coerce_map_from(Frac(QQ['t']))
680+
True
681+
674682
sage: R.<t> = LaurentSeriesRing(QQ['x'])
675683
sage: R.has_coerce_map_from(QQ[['t']])
676684
True
@@ -687,7 +695,10 @@ def _coerce_map_from_(self, P):
687695
sage: R.has_coerce_map_from(LazyLaurentSeriesRing(ZZ['x'], 't'))
688696
True
689697
"""
698+
from sage.rings.fraction_field import FractionField_generic
690699
A = self.base_ring()
700+
if isinstance(P, FractionField_generic) and A.is_field():
701+
return self.has_coerce_map_from(P.base())
691702
if (isinstance(P, (LaurentSeriesRing, LazyLaurentSeriesRing,
692703
LaurentPolynomialRing_generic,
693704
PowerSeriesRing_generic, LazyPowerSeriesRing,

0 commit comments

Comments
 (0)