-
-
Notifications
You must be signed in to change notification settings - Fork 553
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
Normaliz backend is broken with double description input #30248
Comments
comment:1
Notice that normaliz doesn't use precomputed double description yet (waiting for the package upgrade). I suspect intitialzing from inequaltities doesn't work correctly and there is an even simpler one line example for this. |
comment:2
What might be causing it, is passing a generator for the inequalries (in this case you cannot get the error with the normal constructor). If we iterate twice through it (only for number fields), the second time you obviosly don't get anything, which explains the three lines. One solution may be to make a tuple out of the generators, once we decided what we dispose in |
comment:4
Found it. Line 858 and 859 in The fact that the base ring is enforced to be Ouff! Ok, I think this shouldn't be too hard to fix. ...this is a sign that this use-case was not really tested... It pops up when one wants to deal with lots of sorts of polyhedra and eventually need to fix a base ring (done in Hyperplane arrangements). Oiii. |
comment:5
I implemented a few test suite methods already. If you run a test suite on your polyhedron, does it succeed? |
New commits:
|
Commit: |
Branch: public/30248 |
comment:7
Replying to @kliem:
Yes. It seems so. |
Author: Jean-Philippe Labbé |
comment:10
Ping! I think it would be important to have this ticket in the next release... |
Reviewer: Travis Scrimshaw |
comment:11
LGTM. |
Changed branch from public/30248 to |
This bug was found while manipulating hyperplane arrangements.
A minimal example to reproduce the bug is:
Looking at
dilation
it seems that dilation is not the problem, it does the right thing, but theparent.element_class
call messes things up.Notice that changing the base ring to
QQ
orZZ
or removing the'normaliz'
backend, one does not get the error... This is nasty.In the hyperplane arrangement, there are some rational regions, and some irrational regions...
CC: @kliem @LaisRast @mkoeppe @tscrim
Component: geometry
Keywords: polytope, backend, normaliz, hyperplane, regions
Author: Jean-Philippe Labbé
Branch/Commit:
83453fb
Reviewer: Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/30248
The text was updated successfully, but these errors were encountered: