-
-
Notifications
You must be signed in to change notification settings - Fork 517
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
vertex facet graph for trivial polyhedra fails #29898
Comments
Branch: public/29898 |
Commit: |
New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:3
Does a 0-dimensional polyhedron really have a facet?? |
comment:4
I would say so. This is the "definition" from Günter Zieglers book "Lectures on Polytopes":
According to this the facets of the 0-dimensional polytope is the empty face. And I would say that this is reasonable. There is also an inequality defining that face: "(0,...,0)*x + 1 >= 0" (and the 0-vector might have lenght 0 according to ambient dimension).
But of course, I might have be influential to "bug fixes" to make it behave like this. |
comment:5
Hm... the old version of Ziegler's at https://arxiv.org/pdf/math/9909177.pdf says "The maximal non-trivial faces, of dimension dim(P) − 1, are the facets of P." -- which excludes the empty face as a possibility. |
comment:6
I find the version that allows the empty face pretty disturbing. |
comment:7
Either definition is trouble:
|
comment:8
Either way, I set up the vertex-facet graph wrong. There shouldn't be an edge, as the vertex is not contained in the facet. |
comment:9
Well the empty face is maximal in the proper faces but not maximal in the nontrivial faces. |
comment:10
In the new definition that is different:
And then comes the part that I already quoted. But... The facets not corresponding to inequalities is huge trouble. I myself made "mistakes" because of that. It seems much easier to define the facets as maximal non-trival faces with the empty face being trivial as well. Than we have our irreducible inequality/facet correspondence. So I agree with you that this definition makes more sense. But that would involve a few "fixes". I'll also send a quick note to Günter Ziegler and see what he thinks, as he is still revising his new definition I believe. |
comment:11
This statement is exercise 2.15 (iii) and clearly doesn't fit to the definition. Then again we loose the vertex-facet correspondence for polarity. Btw the polarity for 0-dimensional polyhedra is broken as well (but only for base ring
|
comment:12
|
comment:13
Replying to @kliem:
Yes, this is not good. |
comment:14
Replying to @mkoeppe:
The reason for this is simple. Either way, we cannot have it consistent:
I personally think that we should define facets as the But I have no hard feelings either way. It just should be made clear that the 0-polytope cannot be made consistent in some ways. |
comment:15
Either way, definitely To me, the bijection between facets and irredundant inequalities is the most important. Let me add that even the status of the empty set as a face is not uniform across the literature. For example, in Schrijver, Theory of Linear and Integer Programming, faces are nonempty by definition (section 8.3), and the face lattice is obtained by considering the empty set as a special element in addition to the faces (section 8.6). |
comment:16
Replying to @mkoeppe:
+1 Looking at the subsets of the polytope obtained through supporting hyperplanes gives faces. My interpretation here is that it is a combinatorial discussion to have "the whole polytope" and "the empty face" included in the poset of faces, as of course adding them makes it a lattice. This act of "adding the trivial faces" forces an eventual consideration of "non-proper/non-trivial" faces when defining anything... Obviously, things go wrong in the following case: one removes the non-proper faces and obtains a poset which consists of an anti-chain (can only contain 1 or 2 elements in our case...) In this case, "vertices" and "facets" are the same. Now you can even go wild and think about the actual object in space (not-being full-dimensional). If you have one element only, i.e., you have a 0-dimensional polytope, then, what happens combinatorially is that the two elements are fusioned into one and yes, there isn't a bijection between actual maximal subsets given by supporting hyperplanes and the facet defining inequalities. I would say that the 0-dimensional polytopes form "the exception that confirms the rule", as we say in French. Because of the fact that vertices and facet are the same, this creates this special situation, otherwise, the bijection should exist. With this perspective, the next step is that one removes the non-proper faces and obtains an empty poset, for the empty polyhedron. Does the empty polyhedron have facets? I hope not, right? |
comment:17
The case where vertices and facets are the same, is for 1-dimensional polyhedra. |
comment:18
One other problem with the definition as maximal subfaces (including the empty face) is that it doesn't make any sense for any polyhedron without inequalities. Surely you don't want that the empty face is a facet of RR^2 The 0-dimensional polytope belongs to that family. The other thing is that the vertex-facet-digraph relies on the fact that vertices are contained in facets or not. If facets are -1-dimensional and vertices 0-dimensional, this doesn't make any sense anymore. To summarize this discussion, I think we agree that we should alter |
comment:19
I think it's fine to do this here on this ticket. |
comment:20
I will. |
This comment has been minimized.
This comment has been minimized.
Changed branch from public/29898 to public/29898-reb |
comment:23
Typo "non-trival" -> "nontrivial". When done, you can set "positive review" |
Reviewer: Matthias Koeppe |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:25
Thank you. |
Changed branch from public/29898-reb to |
Changed commit from |
The vertex facet graph of
CombinatorialPolyhedron
only works for polyhedra of dimension at least one. With #29188 this makes it fail with forPolyhedron_base
as well.We fix this to return
Digraph
on 0 vertices for the empty polyhedron andDigraph
on 1 vertex for the 0-dimensional polyhedron (it was misbehaved even before Move vertex facet graph to combinatorial polyhedron #29188).We also "fix" the definition of facets to correspond to inequalities.
The
0
-dimensional polyhedron does not have facets in this case anymore.(Before this ticket
n_facets
andfacets
would use different definitions of facets.)CC: @jplab @LaisRast
Component: geometry
Keywords: polyhedra, vertex facet graph
Author: Jonathan Kliem
Branch:
25cfaa0
Reviewer: Matthias Koeppe
Issue created by migration from https://trac.sagemath.org/ticket/29898
The text was updated successfully, but these errors were encountered: