We say that a constraint system C implies or entails a (set of) constraint(s) I if I evaluates to true for all s∈ Qδ(C) [129].7 We also denote this relation- ship by writing C` I. Although equalities and other highlighted constraints are not part of our standard constraints, we still say that a constraint system C implies a highlighted constraint if its equivalent standard representation evaluates to true for all s∈ Qδ(C). For instance, C ` hTx = g if and only if{hTx≤ g, −hTx≤ −g} evaluates to true for all s ∈ Q
δ(C). A constraint I implied by C is explicit if it does appear in C, i.e., I ∈ C. A highlighted constraint I implied by C is also called explicit if its equivalent standard rep- resentation C0 appears in C, i.e., C0 ⊆ C. Otherwise, implied (highlighted) constraints are called implicit.
Besides our general/rational entailments C ` I over the rationals, we also use mixed entailments and integer entailments denoted by C `MI and C `Z I, respectively. And similarly to our general entailment definition, C`MI if I evaluates to true for all s∈ Mδ(C) and C`Z I if I evaluates to true for all s∈ Z(C). Since Z(C) ⊆ Mδ(C)⊆ Qδ(C), this also means that all generally entailed constraints are mixed entailed and all mixed entailed constraints are integer entailed, i.e., if C` I, then C `M I and, if C`M I, then C `Z I. The reverse is not true as shown by the following example: {2x1 + 4x2 ≤ 7} `Z x1+ 2x2 ≤ 27 and {2x1+ 4x2 ≤ 7} ` x1 + 2x2 ≤ 72 because dividing a constraint by a positive constant factor does not change its solutions. However, we also know that{2x1+ 4x2≤ 7} `Z x1+ 2x2 ≤ 3 because the term x1+ 2x2 evaluates under every integer assignment to an integer value so the fractional bound of x1+ 2x2 ≤ 72 can be rounded down without losing any integer solutions. In contrast, {2x1+ 4x2 ≤ 7} does not generally entail x1+ 2x2 ≤ 3 because the assignment (72, 0)T is a rational solution for 2x1+ 4x2≤ 7 but not for x1+ 2x2 ≤ 3.
There are types of constraint systems for which we can constructively de- fine their implied/entailed constraints. For instance, any constraint system without rational solutions entails all constraints. Similarly, any constraint system without mixed solutions mixed entails all constraints and any con- straint system without integer solutions integer entails all constraints. Corollary 2.5.1(Unsatisfiable Entailments). Let I be any linear arithmetic constraint. If Qδ(C) = ∅, then C ` I. If Mδ(C) = ∅, then C `M I. If Z(C) = ∅, then C `Z I.
7Note that the general definition for implied constraints is related to the rational solu-
tions of the problem and not the mixed solutions. This is standard in the literature [129]. Later in this section, we will also define two other types of implied constraints that are related to mixed and integer solutions.
The implied/entailed inequalities of a systems of inequalities Ax ≤ b can also be defined constructively. Either Ax ≤ b has no rational solution and implies all constraints (see Corollary 2.5.1) or all implied inequalities are so-called linear combinations of the inequalities in Ax ≤ b. A linear combination of the inequalities in Ax ≤ b is an inequality hTx ≤ g that resulted from multiplying each inequality in Ax≤ b by a non-negative factor and adding them up. Formally this means that there exists a vector y∈ Qm with y ≥ 0m, yTA = hT, and yTb ≤ g. It is relatively easy to prove that any linear combination of Ax≤ b is also implied by Ax ≤ b:
Corollary 2.5.2 (Linear Combination Corollary [129]). Let there exists a y ∈ Qm with y ≥ 0m, yTA = hT, and yTb ≤ g, i.e., there exists a linear combination of inequalities inAx≤ b that results in the inequality hTx≤ g. Then Ax≤ b implies hTx≤ g.
Proof. If s ∈ Qδ(Ax ≤ b), then all aTi s ≤ bi are true. Since all aTi s ≤ bi are constant, we also know that hTs = yTAs ≤ yTb ≤ g is true. Hence, every s ∈ Qδ(Ax ≤ b) is also a solution of hTx ≤ g. So Ax ≤ b implies hTx≤ g.
Before we can finish the proof that all implications are linear combina- tions, we need the help of the following very important and famous lemma: Lemma 2.5.3 (Farkas’ Lemma [61, 108]). Q(Ax ≤ b) = ∅ iff there exists a y ∈ Qm with y≥ 0m and yTA = (0n)T so that yTb < 0, i.e., there exists a non-negative linear combination of inequalities in Ax≤ b that results in an inequality yTAx≤ yTb that is constant and unsatisfiable.
Farkas’ Lemma was originally formulated over the standard rationals and not the δ-rationals. So we have to prove that Farkas’ Lemma still works with δ-rationals:
Lemma 2.5.4 (Farkas’ Lemma for Qδ). Qδ(Ax≤ b) = ∅ iff there exists a y ∈ Qm with y ≥ 0m and yTA = (0n)T so that yTb < 0, i.e., there exists a non-negative linear combination of inequalities in Ax ≤ b that results in an inequality yTAx ≤ yTb that is constant and unsatisfiable. If such a y exists, then we call it a certificate of unsatisfiability or alternatively a conflict (explanation).
Proof. Let us first consider the case where Ax≤ b is rationally unsatisfiable. Dutertre and de Moura’s version of the dual simplex algorithm is a complete and correct algorithm for determining the satisfiability of a linear arithmetic problem over the δ-rationals (for more details see Section 2.7 and [58]). In case the problem is rationally unsatisfiable, the algorithm returns a conflict explanation, which can be turned, together with the final simplex tableau, into the linear combination y∈ Qm we are looking for. Let us now consider
the case where s ∈ Qn
δ is a solution for Ax ≤ b. Due to Corollary 2.5.2, we know that s is also a solution to any linear combination yTA ≤ yTb of inequalities in Ax ≤ b. So there cannot exist a y ∈ Qm with y ≥ 0m, yTA = (0n)T, and yTb < 0 because 0 = (0n)Ts = yTAs ≤ yTb < 0 is a contradiction.
Now given the δ-rational version of Farkas’ Lemma, we can prove that either Ax≤ b has no rational solution or all implied inequalities are linear combinations of the inequalities in Ax≤ b:
Lemma 2.5.5 (Linear Implication Lemma [129]8). Let Qδ(Ax ≤ b) 6= ∅, h ∈ Qn\ {0n}, and g ∈ Q
δ. Then Ax≤ b implies hTx ≤ g iff there exists a y ∈ Qm with y ≥ 0m and yTA = hT so that yTb≤ g, i.e., there exists a non-negative linear combination of inequalities in Ax≤ b that results in the inequality hTx≤ g.
Proof. Let us first consider the case where Ax ≤ b implies the inequality hTx ≤ g. In this case, the system Ax ≤ b ∪ {−hTx ≤ (−g)} is rationally unsatisfiable. It follows by Lemma 2.5.4 that there exists (i) y ≥ 0m and ym+1 ≥ 0 such that (ii) yTA− ym+1h = 0n and (iii) yTb + ym+1(−g) < 0. It also follows by Lemma 2.5.4 and Ax≤ b being rationally satisfiable that ym+1 > 0. Now we choose the linear combination y0 = ym+11 y. This linear combination is positive because of (i). Moreover, it holds that y0TA = hT because of (ii). Finally, it holds that y0Tb < g because of (iii), which implies that y0Tb ≤ g. Hence, y0 = 1
ym+1y is the linear combination that gets us
hTx≤ g.
Let us now consider the case where there exists a y ∈ Qm with y ≥ 0m and yTA = hT so that yTb ≤ g. If s ∈ Q
δ(Ax ≤ b), then s also satisfies hTx≤ g since hTx = yTAx≤ yTb≤ g. Hence, Ax ≤ b ` hTx≤ g.
Linear combinations are not just useful for their relationship to implied inequalities. We can also use them to prove many more theorems over systems of linear inequalities. For instance, we can prove some properties for minimal sets of unsatisfiable inequalities.
2.5.1 Minimal Sets of Unsatisfiable Inequalities
We call an unsatisfiable set C of inequalities minimal if every proper sub- set C0 ⊂ C is satisfiable. Whenever a polyhedron Ax ≤ b is rationally unsatisfiable (i.e.,Qδ(Ax≤ b) = ∅), then there exists a minimal set C of ra- tionally unsatisfiable inequalities so that every inequality in C appears also
8
in Ax≤ b [58]. We call such a minimal set C a minimal conflict (explana- tion)for Ax≤ b’s rational unsatisfiability. If we are investigating a minimal set of unsatisfiable inequalities, then we can strengthen Farkas’ Lemma as follows:
Lemma 2.5.6(Farkas’ Lemma for Explanations). Let the system of inequa- litiesC ={aT
i x≤ bi : 1≤ i ≤ m} be a minimal set of rationally unsatisfiable inequalities. LetA = (a1, . . . , am)T andb = (b1, . . . , bm)T. Then it holds for every y ∈ Qm with y ≥ 0m, yTA = (0n)T, and yTb < 0 that y
i > 0 for all i∈ {1, . . . , m}.
Proof. Suppose to the contrary that there exists y≥ 0m with yTA = (0n)T and yTb < 0 such that one component of y is zero. Without loss of generality we assume that ym = 0. Let C = {aTi x ≤ bi : 1 ≤ i ≤ m − 1}, A0 = (a1, . . . , am−1)T, b0 = (b1, . . . , bm−1)T, and y0 = (y1, . . . , ym−1)T. Then, y0 ≥ 0m−1, y0TA0 = (0n)T, and y0Tb0 < 0. However, by Lemma 2.5.4, this implies that (A0x≤ b0) ⊂ C is rationally unsatisfiable. Therefore, C is not minimal, which contradicts our initial assumptions.