Hey Simon,

>> >    I would then be advocating for using UniqueRepresentation if that 
> was 
> >> > the only issue. 
> >> 
> >> It really depends whether in comparing manifolds you would prefer to do 
> >> *some* 
> >> heuristics to detect homeomorphic manifolds, or prefer to consider 
> >> manifolds unequal if they were created with different input data. 
> >> 
> > 
> > IMO, such checks are too expensive to be done at creation. For example, 
> you 
> > want do so some tests over all n-spheres. 
>
> I did not say anything about whether the tests should be done at 
> creation time or not. I was talking about "comparing manifolds", which 
> obviously means "comparing manifolds AFTER creation"- 
>
> Ah, I'm sorry, I misunderstood what you were asking.
 

> If you want that two distinct homeomorphic manifolds may evaluate equal 
> then 
> you must not use UniqueRepresentation. That's all. 
>

IMO, homeomorphism is too strong of a test for __eq__, which should be kept 
relatively fast.

>
> >    Granted, there are nice and well-defined inputs for 2d and 3d 
> > manifolds, which would make good sense to do Cached/UniqueRepresentation 
> > around these structures. For a general (topological) manifold where 
> there 
> > are not necessarily such nice inputs, what would you give as input data? 
>
> Whatever you currently give. An atlas. A simplicial complex. A system of 
> multivariate polynomial equations. 
>
> Here is an example in terms of "polynomial equations" as input data. 
>
> The first question is to you whether you want that the same set of 
> equations 
> yields identical manifolds or distinct manifolds. The second question is 
> whether 
> you want that the manifolds are identical if and only if the two systems 
> of 
> equations have the same solutions. It depends on your answers whether to 
> use CachedRepresentation, UniqueRepresentation or nothing. 
>
>    I would probably take UniqueRepresentation and have a method 
is_homeomorphic() as the equality check would probably be too 
computationally expensive. I'm thinking what graphs do with a faster 
equality check an a separate is_isomorphic method.

Best,
Travis


-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to