#18529: Topological manifolds: basics
-------------------------------------+-------------------------------------
Reporter: egourgoulhon | Owner: egourgoulhon
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-6.10
Component: geometry | Resolution:
Keywords: topological | Merged in:
manifolds | Reviewers:
Authors: Eric Gourgoulhon | Work issues:
Report Upstream: N/A | Commit:
Branch: | 6dec6d592a09e56921b9a761827309dd31ae2533
public/manifolds/top_manif_basics | Stopgaps:
Dependencies: #18175 |
-------------------------------------+-------------------------------------
Comment (by tscrim):
Replying to [comment:32 egourgoulhon]:
> Replying to [comment:31 tscrim]:
> > It really comes down to what you're doing mostly in the code. If you'd
be doing a lot of conversions between points thought of as being in the
subset and as in the manifold, then a facade is probably an okay way to
go. If you care about associating the point with a particular subset, then
it should not be a facade.
>
> I think we are precisely in the first case. In particular we do not care
about associating the point with a particular subset (since many
overlapping subsets can be introduced that contain the point and none of
them is to be privileged with respect to the point). So I would say that
we should use the facade.
Then we go with that.
> > This comes down to the manifold not being well-defined by its
dimension, name, and base field. It also needs to be defined by its chart.
>
> Indeed. More precisely, a manifold is defined by its maximal atlas. But
there is no way to represent the latter in Sage, nor in any computer
system. Accordingly, we cannot check the equality of two manifolds. This
is why equality by id seems reasonable here.
Then we are in agreement: equality by id.
> > I understand that giving two distinct manifolds the same name is bad
mathematically, and you are reflecting that in your code. However what if
I create a manifold `M`, then decide I want to create a new (and
different) manifold `M` of the same dimension over the same base field?
When I try to do this naïvely, I get all of the previous chart information
much to my surprise (the garbage collector this was more about temporary
objects).
>
> You are right: a user may want to restart some computation by creating a
manifold with the same name as that used previously. If he is doing so in
the same session, the `UniqueRepresentation` behavior will return the
previously created object. We cannot demand that the user runs
`_clear_cache_()` before creating the manifold...
As I outlined above, it should be easy enough to remove the
`UniqueRepresentation` behavior and still retain the desirable behaviors
such as hashability.
--
Ticket URL: <http://trac.sagemath.org/ticket/18529#comment:33>
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.