Sets of Morphisms between Differentiable Manifolds¶
The class DifferentiableManifoldHomset implements sets of morphisms between
two differentiable manifolds over the same topological field
(in most
applications,
or
), a morphism being a differentiable map
for the category of differentiable manifolds.
AUTHORS:
- Eric Gourgoulhon (2015): initial version
REFERENCES:
- [Lee13] J.M. Lee : Introduction to Smooth Manifolds, 2nd ed., Springer (New York) (2013)
- [KN63] S. Kobayashi & K. Nomizu : Foundations of Differential Geometry, vol. 1, Interscience Publishers (New York) (1963)
-
class
sage.manifolds.differentiable.manifold_homset.DifferentiableManifoldHomset(domain, codomain, name=None, latex_name=None)¶ Bases:
sage.manifolds.manifold_homset.TopologicalManifoldHomsetSet of differentiable maps between two differentiable manifolds.
Given two differentiable manifolds
and
over a topological field
,
the class DifferentiableManifoldHomsetimplements the set
of morphisms (i.e. differentiable maps)
.This is a Sage parent class, whose element class is
DiffMap.INPUT:
domain– differentiable manifold
(domain of the morphisms),
as an instance of
DifferentiableManifoldcodomain– differentiable manifold
(codomain of the morphisms),
as an instance of
DifferentiableManifoldname– (default:None) string; name given to the homset; ifNone, Hom(M,N) will be usedlatex_name– (default:None) string; LaTeX symbol to denote the homset; ifNone,
will be used
EXAMPLES:
Set of differentiable maps between a 2-dimensional differentiable manifold and a 3-dimensional one:
sage: M = Manifold(2, 'M') sage: X.<x,y> = M.chart() sage: N = Manifold(3, 'N') sage: Y.<u,v,w> = N.chart() sage: H = Hom(M, N) ; H Set of Morphisms from 2-dimensional differentiable manifold M to 3-dimensional differentiable manifold N in Category of smooth manifolds over Real Field with 53 bits of precision sage: type(H) <class 'sage.manifolds.differentiable.manifold_homset.DifferentiableManifoldHomset_with_category'> sage: H.category() Category of homsets of topological spaces sage: latex(H) \mathrm{Hom}\left(M,N\right) sage: H.domain() 2-dimensional differentiable manifold M sage: H.codomain() 3-dimensional differentiable manifold N
An element of
His a differentiable map fromMtoN:sage: H.Element <class 'sage.manifolds.differentiable.diff_map.DiffMap'> sage: f = H.an_element() ; f Differentiable map from the 2-dimensional differentiable manifold M to the 3-dimensional differentiable manifold N sage: f.display() M --> N (x, y) |--> (u, v, w) = (0, 0, 0)
The test suite is passed:
sage: TestSuite(H).run()When the codomain coincides with the domain, the homset is a set of endomorphisms in the category of differentiable manifolds:
sage: E = Hom(M, M) ; E Set of Morphisms from 2-dimensional differentiable manifold M to 2-dimensional differentiable manifold M in Category of smooth manifolds over Real Field with 53 bits of precision sage: E.category() Category of endsets of topological spaces sage: E.is_endomorphism_set() True sage: E is End(M) True
In this case, the homset is a monoid for the law of morphism composition:
sage: E in Monoids() True
This was of course not the case for
H = Hom(M, N):sage: H in Monoids() False
The identity element of the monoid is of course the identity map of
M:sage: E.one() Identity map Id_M of the 2-dimensional differentiable manifold M sage: E.one() is M.identity_map() True sage: E.one().display() Id_M: M --> M (x, y) |--> (x, y)
The test suite is passed by
E:sage: TestSuite(E).run()This test suite includes more tests than in the case of
H, sinceEhas some extra structure (monoid).-
Element¶ alias of
DiffMap
