RuntimeError: LattE integrale program failed (exit code -6)
The following simple code results in a RuntimeError quoted below.
from sage.interfaces.latte import integrate
P = Polyhedron(ieqs=[[0, 1, 0, 0], [1, -1, 0, 0], [0, 0, 1, 0], [0, 1, -1, 0], [0, 0, 0, 1], [0, 1, 0, -1], [1, -1, -1, -1], [-1, 2, 1, 1]])
print( integrate( P.cdd_Vrepresentation(), cdd=True ) )
The error is
RuntimeError: LattE integrale program failed (exit code -6):
This is LattE integrale 1.7.6
Available from http://www.math.ucdavis.edu/~latte/
Invocation: /home/sc_serv/sage/local/bin/integrate --valuation=volume --triangulate --redundancy-check=none --cdd /dev/stdin
Warning: Not performing check for empty polytope, because it is unimplemented for the CDD-style input format.
size = 8 x 4
Number Type = rational
integrate: latte_gmp.cpp:76: NTL::ZZ convert_mpq_to_ZZ(__mpq_struct*): Assertion `elt.get_den() == 1' failed.
It can be also observed at Sagecell. What's wrong?
The issue is also reported to latte_int github: https://github.com/latte-int/latte/is...
I don't know, but it doesn't seem to like polyhedra with non-integer coordinates.
integrate((12*P).cdd_Vrepresentation(), cdd=True)
works. The error involvingconvert_mpq_to_ZZ
suggests that it's trying to convert something to an integer and failing.John - nice guess. Does it imply that latte_int works only with lattice polyhedra? Docs do not say so anywhere :-/