#16843: Zeromorphism
---------------------------------------+----------------------------
Reporter: mkamalakshya | Owner: mkamalakshya
Type: defect | Status: needs_work
Priority: minor | Milestone: sage-6.4
Component: algebra | Resolution:
Keywords: days60 | Merged in:
Authors: Kamalakshya Mahatab | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: | Stopgaps:
---------------------------------------+----------------------------
Comment (by pbruin):
Replying to [comment:6 tscrim]:
> Replying to mkamalakshya:
> > Should Zero morphism be a morphism of rings?
> > In other words, do we assume that our homomorphisms take 1 to 1?
>
> We have to be careful about what we mean by '1' in the image. In
particular, the image is the trivial ring (field) with `0 = 1` and it
still satisfies all of the usual ring (field) properties (where we aren't
dividing, but it's just a statement about the multiplicative inverse). So
in this case, the image of 1 from `QQ` is `0` and satisfies all of the
expected multiplicative identity axioms:
>
> * `0x = x0 = x` (note that `x = 0` in the image)
> * `x x^{-1} = x^{-1} x = 0` (and `x^{-1} = 0` as well in the image)
>
> So the zero morphism is a morphism as rings (fields) by sending the
additive/multiplicative identity to the additive/multiplicative identity.
No, it isn't. '''The zero map between two rings is a ring homomorphism if
and only if the codomain is the zero ring''' (note: codomain, not image).
You are not correctly checking the definition of ring homomorphism. A
ring is a triple (''R'', +, .) satisfying the ring axioms, which say
(among other things) that there exists a two-sided multiplicative identity
1 in ''R''; this is automatically unique. A ring homomorphism from ''R''
to ''S'' is a homomorphism of additive groups that respects the
multiplication ''and'' sends the multiplicative identity element of ''R''
to that of ''S''. (One can rephrase this as saying that is compatible
with the empty product. See also [http://arxiv.org/abs/1404.0135].) This
implies in particular that any ring homomorphism from '''Q''' to itself
sends 1 to 1, and that the only ring homomorphism from '''Q''' to '''Q'''
is the identity.
The zero map is only a ''rng'' homomorphism (since rngs don't have 1, we
can't require rng homomorphisms to preserve 1). So someone who cares
about rngs might want the following to work (it currently doesn't):
{{{
sage: H = QQ.Hom(QQ, category=Rngs())
sage: H([0])
}}}
The following is also problematic (in my opinion even more so):
{{{
sage: H = QQ.Hom(QQ, category=VectorSpaces(QQ))
Traceback (most recent call last):
...
ValueError: Rational Field is not in Category of vector spaces over
Rational Field
}}}
We should make sure that `QQ` is in `VectorSpaces(QQ)`. For the moment,
one has to construct '''Q''' as a 1-dimensional vector space over itself:
{{{
sage: H = Hom(QQ^1, QQ^1)
sage: f = H([0])
sage: f
Vector space morphism represented by the matrix:
[0]
Domain: Vector space of dimension 1 over Rational Field
Codomain: Vector space of dimension 1 over Rational Field
}}}
--
Ticket URL: <http://trac.sagemath.org/ticket/16843#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.