morphisms between multivariate polynomial rings

49 views
Skip to first unread message

Martin R

unread,
Feb 10, 2024, 11:08:43 AM2/10/24
to sage-devel
I was a bit surprised about the following:

sage: k = ZZ["q"].hom(QQ["q"])
sage: isinstance(k, Morphism)
True
sage: m = ZZ["q,t"].hom(QQ["q,t"])
sage: isinstance(m, Morphism)
False

However, I vaguely recall a discussion about morphisms between multivariate polynomial rings being problematic.  Does my memory trick me?

Martin

Travis Scrimshaw

unread,
Feb 11, 2024, 6:12:37 PM2/11/24
to sage-devel
Hi Martin,
   That is coming from this:

sage: type(m)
<class 'sage.structure.coerce_maps.DefaultConvertMap_unique'>

Although I don't think we have a specific "all morphisms should inherit from this ABC (or generic base class)" specification. It might be easy to get something to work for it.

Are you thinking of the difficulty of determining a consistent way of setting coercions between polynomial rings? That's the only thing I know that is problematic.

Best,
Travis
Reply all
Reply to author
Forward
0 new messages