Constraint satisfaction problem (CSP) for inequalities of vectors

104 Views Asked by At

I have two vectors $Y= (y_1, y_2, \ldots, y_m)^T$ and $S= (s_1, s_2,\ldots, s_m)^T$, where all entries in $Y$ and $S$ being positive integers. $Y$ is defined by $Y = A + B \cdot X$, where $A$ is a constant $m$-vector, $B$ is a constant $m \times n$ matrix and $X$ is a variable $n$-vector.

Given $S$, I want to find all the possible values of $X = (x_1, x_2, \ldots, x_n)^T$ such that $Y \neq S$ using linear integer programming.

I thought of using the following constraint satisfaction problem (CSP) by adding the variable $z_j$ such that $z_j = |y_j - s_j|$ to check that at least for one entry $j$ we have $y_j \neq s_j$:

$$Y = A + B \cdot X \geqslant \vec{0},\\ z_j = |y_j - s_j|,\quad \forall j \in 1, \cdots, m\\ \sum_{j=1}^{m} z_j \geq 1.$$

But I have a problem with the absolute value. What should I do to achieve this?