piplib doesn't terminate(?) till memory exhaustion

6 views
Skip to first unread message

Uday Bondhugula

unread,
Jul 26, 2013, 3:11:56 AM7/26/13
to pip...@googlegroups.com

I'm using the git version of piplib (current tip of master - commit
c430380bd7080af6773392736a5ac571921c0bd2). For this input, piplib (64-bit version) seems to run forever (at least till I run out of memory).

(no parameters).

17 17
 0 0 0 0 1 0 0 0 0 0 -1 0 0 0 0 0 0
 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 -3
 0 0 0 0 0 0 1 0 0 0 0 0 -1 0 0 0 0
 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 -2
 1 -1 -1 0 0 0 0 1 1 0 0 0 0 0 0 0 -1
 1 0 0 0 0 0 0 0 0 20 -2 0 -1 0 0 0 18
 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
 1 0 0 0 0 0 0 0 0 0 -1 0 0 0 1 0 -1
 1 0 0 0 0 0 0 0 0 0 0 0 -1 1 0 0 -2
 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 -3
 1 25 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 24
 1 0 0 0 0 0 0 -25 0 0 1 0 0 0 0 0 0
 1 0 10 0 0 0 0 0 0 0 -1 0 0 0 0 0 8
 1 0 0 0 0 0 0 0 -20 0 2 0 0 0 0 0 3
 1 0 0 -20 0 0 0 0 0 0 2 0 1 0 0 0 0
 1 0 0 20 0 0 0 0 0 0 -2 0 -1 0 0 0 19
 1 0 0 0 0 0 0 0 0 -20 2 0 1 0 0 0 1

To reproduce, run example/example64, and input

0 2

-1

<followed by the above matrix>

~ Uday

Sven Verdoolaege

unread,
Jul 26, 2013, 4:28:37 PM7/26/13
to Uday Bondhugula, pip...@googlegroups.com
On Fri, Jul 26, 2013 at 12:11:56AM -0700, Uday K Bondhugula wrote:
> 17 17
> 0 0 0 0 1 0 0 0 0 0 -1 0 0 0 0 0 0
> 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 -3
> 0 0 0 0 0 0 1 0 0 0 0 0 -1 0 0 0 0
> 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 -2
> 1 -1 -1 0 0 0 0 1 1 0 0 0 0 0 0 0 -1
> 1 0 0 0 0 0 0 0 0 20 -2 0 -1 0 0 0 18
> 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
> 1 0 0 0 0 0 0 0 0 0 -1 0 0 0 1 0 -1
> 1 0 0 0 0 0 0 0 0 0 0 0 -1 1 0 0 -2
> 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 -3
> 1 25 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 24
> 1 0 0 0 0 0 0 -25 0 0 1 0 0 0 0 0 0
> 1 0 10 0 0 0 0 0 0 0 -1 0 0 0 0 0 8
> 1 0 0 0 0 0 0 0 -20 0 2 0 0 0 0 0 3
> 1 0 0 -20 0 0 0 0 0 0 2 0 1 0 0 0 0
> 1 0 0 20 0 0 0 0 0 0 -2 0 -1 0 0 0 19
> 1 0 0 0 0 0 0 0 0 -20 2 0 1 0 0 0 1

In my experience, the PIP algorithm generally has a difficult
time on such empty polyhedra. You may want to check if your
input is empty first before trying to compute its minimal
element.

skimo
Reply all
Reply to author
Forward
0 new messages