#18529: Topological manifolds: basics
-------------------------------------+-------------------------------------
Reporter: egourgoulhon | Owner: egourgoulhon
Type: enhancement | Status: needs_info
Priority: major | Milestone: sage-7.0
Component: geometry | Resolution:
Keywords: topological | Merged in:
manifolds | Reviewers: Travis Scrimshaw
Authors: Eric Gourgoulhon, | Work issues:
Travis Scrimshaw | Commit:
Report Upstream: N/A | 3cd03a48d847e12745ed8c25b23f19db141c179a
Branch: | Stopgaps:
public/manifolds/top_manif_basics |
Dependencies: #18175 |
-------------------------------------+-------------------------------------
Comment (by egourgoulhon):
Here is another proposal, which is a kind of mix between Hierarchy-1 and
Hierarchy-3:
{{{
Hierarchy-4:
AbstractAmbient AbstractSet AbstractSubset
| | | | \ / | | |
| | | | ManifoldSubset | | |
| | | | | | |
| | | TopologicalManifoldOpenSet | | |
| | \ / | \ / | |
| | TopologicalManifold | OpenTopSubmanifold | |
| | | | |
| | DifferentiableManifoldOpenSet | |
| \ / | \ / |
| DifferentiableManifold | OpenDiffSubmanifold |
| | |
| IntervalOpenSet /
\____ ____/ \ __________/
OpenInterval OpenSubInterval
|
RealLine
}}}
Contrary to Hierarchy-1, it has no diamond problem and involves no mixin
class.
As in Hierarchy-3, the class `AbstractAmbient` implements only the methods
`union` and `intersection`, but contrary to Hierarchy-3, the classes for
ambient objects (`TopologicalManifold`, `DifferentiableManifold`, etc.) do
no longer have the attribute `_manifold`. This attribute is present only
in the sub-object classes `OpenTopSubmanifold`, `OpenDiffSubmanifold` and
`OpenSubinterval`, as in Hierarchy-1. In Hierarchy-4, the attribute
`_manifold` is inherited from `AbstractSubset`. The class `ManifoldSubset`
implements generic (not open) subsets of a manifold.
The classes `TopologicalManifold` and `OpenTopSubmanifold` do not
implement
any new method by themselves: most methods are implemented in their parent
abstract class `TopologicalManifoldOpenSet`, like `chart()`, `atlas()`,
`scalar_field_algebra()`, etc.
Similarly, methods for differentiable manifolds, like `vector_frame()` or
`tensor_field()`, are implemented in the abstract class
`DifferentiableManifoldOpenSet`.
--
Ticket URL: <http://trac.sagemath.org/ticket/18529#comment:111>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.