Sometimes you start working on a ticket thinking "this is just a few
hours of work" when it turns out to be a huge can of worms...
Coercion for multi-variate polynomials might fall in this category.
There are several strange things and bugs. The best example so far:
sage: R.<x,y> = QQ[]
sage: QQ["y,x"](x)
x
sage: R.<x,y> = QQbar[]
sage: QQbar["y,x"](x)
y
So depending on the base ring, you get different maps
R[x,y] -> R[y,x]. In both cases, Sage considers this map a coercion.
I would like to forget the current situation and simply start from
scratch thinking which maps should be coercions. I don't have a good
idea so far, I wonder if somebody else does.
I'd like to say that the following should be coercions:
R -> R[x,y]
R[x] -> R[x,y]
R[y] -> R[x,y]
R[x][y] -> R[x,y]
But not the following:
R[x,y] -> R[x][y]
R[x,y] -> R[y,x]
R[x,y][z] -> R[x][y,z]
--
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
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.