#11400: Add PointCollection
---------------------------+------------------------------------------------
Reporter: novoselt | Owner: novoselt
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-4.7.1
Component: geometry | Keywords:
Work_issues: | Upstream: N/A
Reviewer: | Author: Andrey Novoseltsev
Merged: | Dependencies:
---------------------------+------------------------------------------------
Comment(by novoselt):
Hi Florent,
Currently they derive from `SageObject` and don't have a parent. I am not
sure what would be the parent - they are arbitrary collections of points
of the same space, repetitions are allowed. So parent is the set of finite
sequences of the underlying module. Do we have it in Sage?
Implementation-wise, there is an internal tuple and I have added those
access methods which I definitely need. It is of course possible to add
slicing etc, but definitely they will remain immutable.
Note also that these are collections of points of ''the same space'' and
the whole class is written with this restriction in mind, which is
probably not what you want for cartesian products. So maybe the best
option for them would be to implement something similar but with necessary
tweaks. As you can see from my patch, it is quite simple and short, I have
spent most of the time figuring out how to do things in Cython (which I am
still a beginner in) and running tests to make sure that the speed is
close to tuples.
I thought of deriving from `Element` to use cache from Simon's new
patches, but his work is not merged yet. I suppose we can derive from
`Element` and try to split this new class into two, one for "arbitrary
points" and one for points of the same space. I am a little worried about
the overhead, but perhaps in Cython it will not get much worse.
Thanks for the interest!
Andrey
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11400#comment:3>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.