#9954: f_vector outputs an extra top-dimensional cell
----------------------------------+-----------------------------------------
Reporter: schilly | Owner: mhampton
Type: defect | Status: needs_work
Priority: major | Milestone: sage-4.6.1
Component: geometry | Keywords:
Author: Volker Braun | Upstream: N/A
Reviewer: Andrey Novoseltsev | Merged:
Work_issues: |
----------------------------------+-----------------------------------------
Changes (by novoselt):
* status: needs_review => needs_work
Comment:
1. It seems that you wanted to cache the face lattice but forgot - the
output of `hasse_diagram_from_incidences` is directly returned.
1. Perhaps we should rename the method to `Hasse...`?
1. `PolyhedronFace` constructor does not describe input.
1. I think it would be nice to be able to treat polyhedron faces as
polyhedrons themselves, in the way how it is done for cones. This is
feasible only if creating new polyhedra is very fast, which is not the
case now, but maybe it is something to think about in the future. As an
easier to implement alternative, I would suggest adding a method
`polyhedron` to `PolyhedronFace` that will produce a corresponding
`Polyhedron` object. Note that this will clash with my desire to include
lines to all faces including the bottom one. I am not sure what is the
best option about it. Do you know what is the standard treatment in such
situations?
1. I think that new argument `faces_at_infinity` should be gone - it
seems obscure to me and it is unnecessary. Currently you have replaced my
line
{{{
head.extend(faces[frozenset([atom]), coatoms]
for atom, coatoms in enumerate(atom_to_coatoms))
}}}
with
{{{
for atom, coatoms in enumerate(atom_to_coatoms):
try:
head.append(faces[frozenset([atom]), coatoms])
except KeyError, msg:
if not faces_at_infinity:
raise KeyError, msg
}}}
but you can get the same result with
{{{
head.extend(faces[frozenset([atom]), coatoms]
for atom, coatoms in enumerate(atom_to_coatoms)
if atoms_require_one_of is None or atom in atoms_require_one_of)
}}}
1. How about renaming `atoms_require_one_of` to `required_atoms`? I agree
that your variant is more descriptive, but it sounds a bit weird as a
parameter name.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9954#comment:6>
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.