# Re: [sage-devel] Re: Coercion for multi-variate polynomials

```On 2018-06-12 23:07, Simon King wrote:
```
```And now think about quotients of polynomial rings. Let A,B have the same
variable names in the same positions, but let the monomial orderings be
different. Let I be an ideal in A and J the corresponding ideal in B.
So, if we say that there is a name and position preserving COERCION
from A to B, then by applying the quotient construction (that's a
construction functor!), we have to have a name and position preserving
coercion from A/I to B/J. However, when doing computations in A/I and
B/J, we are interested in normal forms of elements of A wrt I and of
B wrt J. And if the monomial orderings are different, a name and position
preserving map would not be compatible with normal forms.
```

```
```
For me, a coercion does not need to preserve normal forms, so I no objection here.
```
```
```As R[x][z] corresponds to an ordered sub-ring of R[x][y][z] by a name
preserving map, one could argue that there should be a coercion.
```
```
```
There certainly should be. There is a base ring injection map R[x] -> R[x][y] leading to a base change map (by functorial construction) R[x][z] -> R[x][y][z].
```
```
```However,
these iterated polynomial ring constructions are quite inefficient.
```
```
True, but I don't see that as an argument to have no coercion.

```
```I thus tend to kind of proposing the following:
- All default (partial) conversions between polynomial rings are
preserving names, as that's less surprising than position preserving
maps.
```
```
```
The problem is what you do with R[x] -> R[y]? We have always allowed that as a conversion.
```
```
```- If P1,P2 are polynomial rings over R, then a coercion from P1 to P2 is
a *name* preserving homomorphism of graded-rings-with-monomial-ordering.
Hence, it is name preserving, degree preserving, and maps P1 to
an ordered sub-ring of P2. That's of course very strict, but I think
this would work best with categorial constructions.
```
```
```
What does "degree preserving" mean? And what would this rule imply for coercions R[x][y] -> R[x,y]?
```
--
You received this message because you are subscribed to the Google Groups
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email