Space of homomorphisms between two rings.

sage.rings.homset.RingHomset(R, S, category=None)
class sage.rings.homset.RingHomset_generic(R, S, category=None)

Bases: sage.categories.homset.HomsetWithBase

has_coerce_map_from(x)
The default for coercion maps between ring homomorphism spaces is very restrictive (until more implementation work is done).
natural_map()
class sage.rings.homset.RingHomset_quo_ring(R, S, category=None)

Bases: sage.rings.homset.RingHomset_generic

Space of ring homomorphism where the domain is a (formal) quotient ring.

EXAMPLES:

sage: R.<x,y> = PolynomialRing(QQ, 2)
sage: S.<a,b> = R.quotient(x^2 + y^2)
sage: phi = S.hom([b,a]); phi
Ring endomorphism of Quotient of Multivariate Polynomial Ring in x, y over Rational Field by the ideal (x^2 + y^2)
  Defn: a |--> b
        b |--> a
sage: phi(a)
b
sage: phi(b)
a

TESTS:

We test pickling of a homset from a quotient.

sage: R.<x,y> = PolynomialRing(QQ, 2)
sage: S.<a,b> = R.quotient(x^2 + y^2)
sage: H = S.Hom(R)
sage: H == loads(dumps(H))
True

We test pickling of actual homomorphisms in a quotient:

sage: phi = S.hom([b,a])
sage: phi == loads(dumps(phi))
True
sage.rings.homset.is_RingHomset(H)

Previous topic

Homomorphisms of rings

Next topic

Infinity Rings

This Page