Re: [sage-devel] missing coercion?

2022-10-12 Thread 'Martin R' via sage-devel
Ah, thank you! On Wednesday, 12 October 2022 at 23:19:09 UTC+2 David Roe wrote: > It's the difference between conversion and coercion. > > P = PolynomialRing(GF(2), "z", sparse=True); Q = PolynomialRing(ZZ, "z", > sparse=False) > sage: P.convert_map_from(Q) > Conversion map: > From:

Re: [sage-devel] missing coercion?

2022-10-12 Thread David Roe
It's the difference between conversion and coercion. P = PolynomialRing(GF(2), "z", sparse=True); Q = PolynomialRing(ZZ, "z", sparse=False) sage: P.convert_map_from(Q) Conversion map: From: Univariate Polynomial Ring in z over Integer Ring To: Sparse Univariate Polynomial Ring in z over

Re: [sage-devel] missing coercion?

2022-10-12 Thread 'Martin R' via sage-devel
Sorry, I don't understand your last sentence. We have sage: P = PolynomialRing(GF(2), "z", sparse=True); Q = PolynomialRing(ZZ, "z", sparse=False) sage: P.has_coerce_map_from(Q) False How does this fit with "And of course you can convert even when Q is not sparse."? Martin On

Re: [sage-devel] missing coercion?

2022-10-12 Thread David Roe
Yes, that's expected. sage: P = PolynomialRing(GF(2), "z", sparse=True); Q = PolynomialRing(ZZ, "z", sparse=True) sage: P.has_coerce_map_from(Q) True And of course you can convert even when Q is not sparse. David On Wed, Oct 12, 2022 at 4:58 PM 'Martin R' via sage-devel <

[sage-devel] missing coercion?

2022-10-12 Thread 'Martin R' via sage-devel
I have no idea whether the following is to be expected: sage: P = PolynomialRing(GF(2), "z", sparse=False); Q = PolynomialRing(ZZ, "z") sage: P.has_coerce_map_from(Q) True sage: P = PolynomialRing(GF(2), "z", sparse=True); Q = PolynomialRing(ZZ, "z") sage: P.has_coerce_map_from(Q)