
Dear Ken,
it seems you have found a genuine bug in the PPL. We are investigating and we hope to be back to you with a workaround soon. All the best
Roberto
kmixter@longshot.com wrote:
Hi,
I'm doing a first pass at integrating PPL with the Action Language Verifier under Dr. Tevfik Bultan at UC Santa Barbara. I've run into what appears to be a problem in the most recent 0.4.2 release. Please let me know as soon as possible if I'm doing something wrong or if it's a genuine problem. I'd like to have an integration I can show next week.
The problem is that minimized_constraints is crashing when it gets down into strongly_minimize_constraints:
if (topologically_closed || !strict_inequals_saturate_all_rays) { assert(cs_rows < cs.num_rows()); ...
The condition topologically_closed is true, but cs_rows == cs.num_rows().
Here is the testcase which reproduces the condition:
#include "ppl.hh" using namespace Parma_Polyhedra_Library;
int main() { Variable x2(0), x3(1), x5(2); NNC_Polyhedron poly(3, Polyhedron::UNIVERSE);
poly.add_constraint(x5 > x2); poly.add_constraint(x3 >= x2); poly.add_constraint(x2 + 1 > x3);
poly.minimized_constraints(); return 0; }
Thanks, Ken Mixter