Date: Apr 12, 2013 3:56 AM
Author: RGVickson@shaw.ca
Subject: Re: disjunctive constraints in integer linear programming
On Thursday, April 11, 2013 12:24:57 PM UTC-7, d.inf...@gmail.com wrote:

> I have an integer linear programming problem as follows:

>

>

>

> The constraints are either

>

>

>

>

>

> x >= 0

>

> y = u

>

> z = x + v

>

>

>

>

>

> or

>

>

>

> x < 0

>

> y = u - x

>

> z = v

>

>

>

>

>

> where y, z, u, v range over non-negative integers. There are other unrelated constraints associated with u, v, y, z.

>

>

>

>

>

> What's the most simple way to encode the disjunctive case? Does any linear encoding where all co-efficients are -1, 0, 1 exist?

>

>

>

> Thank you!

If x is real valued (or even rational) the strict inequality x < 0 cannot be modelled exactly; instead, one must replace it by x <= =e, where e > 0 is "small". If x is also integer (<>0) then, of course, x < 0 is the same as x <= -1, so that is again OK.