#10039: Make Parma Polyhedra Library a standard library
----------------------------+-----------------------------------------------
Reporter: vbraun | Owner: mhampton
Type: enhancement | Status: new
Priority: major | Milestone: sage-feature
Component: geometry | Keywords: ppl spkg
Author: Volker Braun | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
----------------------------+-----------------------------------------------
Comment(by novoselt):
Some notes based on the posted documentation:
1. "Note that, by convention, every polyhedron must contain a point" can
be clarified a little that only generator systems containing a point may
define a polyhedron, since there is no point issue in defining a
polyhedron by a constraint system. (I would also add that it is natural to
think about "just rays" as starting at the origin, but since your goal is
to wrap PPL as closely as possible, it is not your design decision.)
2. In the documentation of `Generator` I see "frac"s instead of
fractions.
3. `add_space_dimensions_and_embed` and
`add_space_dimensions_and_project` - I think you want `(x,y)\in P`, not
`R^2`. Also the top of the documentation for "project" still says "embed".
(I also find names confusing, but I guess that's how PPL calls them.)
4. Why `affine_dimension` of the empty polyhedron is 0? Shouldn't it be
-1 to distinguish it from points?
5. Am I right that "concatenating" polyhedra means taking their Cartesian
product? Perhaps, it is a simpler explanation than in
`concatenate_assign`?
6. `contains_integer_point` has wrong documentation description about
being bounded.
7. I don't understand what exactly is done by
`drop_some_non_integer_points`.
8. `frequency` does not have documentation.
9. Is it necessary to have `hash_code`, especially if it only returns the
dimension? My concern is that it can be confusing how it is related to
standard `hash` in Python, also it seems strange to use it for mutable
objects (again, because that's not how things work in Python). If this
function is not used anywhere, I would suggest removing it.
10. I got upset when I read in the documentation of `max_space_dimension`
that it is bounded, but the doctest immediately made me happy ;-)
11. `clear_mpz_globals`, `gmp_randrange`, `init_mpz_globals` have no
documentation.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10039#comment:18>
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.