• No se han encontrado resultados

La pregunta sobre el ser La pregunta sobre el ser

q) Símboloq) Símbolo

3. La pregunta sobre el ser La pregunta sobre el ser

The common definition of linear arithmetic in the literature supports only one type of constraint: non-strict inequality constraints [28, 84, 90, 94, 104, 129]. There are multiple reasons for this choice.

First of all, the rational solutions of system of inequalities have some very useful properties. For instance, they define a polyhedron in the n- dimensional vector space Qn, where each rational solution is equivalent to a point in the polyhedron [129]. In the case that our system C contains only non-strict inequalities, the polyhedron is even closed convex [129]. This entails two very useful properties: firstly, the closed convex polyhedron has a surface if it is neither empty nor encompasses the whole Qn; secondly, any supremum hmax = sup{hTx : x ∈ Qnsatisfies C} over a linear objective h ∈ Qn is either h

max = −∞ because there exists no point satisfying our constraints, hmax=∞ because the supremum is unbounded, or there exists an actual maximum, i.e., there exists an x∈ Qnthat satisfies the constraints and its cost hTx is equal to our supremum h

max.

Adding strict inequalities to our constraint system has the effect that our rational solutions are no longer guaranteed to be a closed set. And if we add divisibility constraints, then our rational solutions describe no longer a polyhedron nor are they a convex set. However, these properties are necessary for most classical algorithms and theorems in linear arithmetic. For instance, the classical dual simplex algorithm [129] returns only rational

solutions on the surface of the polyhedron. It is, therefore, not trivial to adapt all classical algorithms and theorems to also handle strict inequalities or divisibility constraints directly. Instead, we show how to represent both divisibility constraints as well as strict inequalities via non-strict inequalities.

2.3.1 Reducing Divisibility Constraints

We can transform any divisibility constraint and negated divisibility con- straint into an equality by introducing additional variables q (and r). For divisibility constraints di | aTi x− bi, this transformation is known as the diophantine representation [45]:

{di | aTix− bi} ≡ ∃q ∈ Z.{diq− aTi x =−bi},

where q is a fresh integer variable. For negated divisibility constraints di - aTi x− bi, there exists a similar transformation:

{di- aTi x− bi} ≡ ∃q ∈ Z, r ∈ Q.{diq + r− aTi x =−bi , 0 < r < di}, where q is a fresh integer variable and r a fresh rational variable. Both of these transformations describe the formal definition of dividing aT

ix− bi by di, i.e., aTi x− bi= diq + r, where q is the quotient of the division and r the remainder. Since the divisibility constraint enforces that di divides aTi x−bi, the remainder r must be zero. Likewise, the negated divisibility constraint enforces that di does not divide aTi x− bi. Therefore, the remainder r lies in the open interval (0, d).

It is actually a big disadvantage that we have to introduce additional variables q (and r) whenever we want to get rid of a (negated) divisibility constraint because divisibility constraints are typically introduced to eli- minate variables. For instance, quantifier elimination techniques for linear integer arithmetic introduce divisibility constraints in order to eliminate a quantified variable (see also Chapter 3.4 and [45]). So eliminating the newly introduced divisibility constraint by adding another quantified varia- ble would be counter productive.

Another disadvantage is that the above reduction is only mixed equisat- isfiable and not rationally equisatisfiable. For instance, 1 | xj guarantees that xj is assigned to an integer value in all rational solutions and the di- ophantine representation q = xj does not. This is due to the fact that the transformation moves the integer guarantee out of the evaluation semantics of divisibility constraints and into the type condition of the new variable q. These disadvantages lead us to the following consequences: (i) we never eliminate divisibility constraints introduced during one of our algorithms and (ii) we are careful to differentiate between the rational relaxation of the original problem and the rational relaxation of the transformed problem.

2.3.2 Reducing Strict Inequalities

We model strict inequalities as non-strict inequalities by generalizing the field Q for our inequality bounds bi and our variable assignments to Qδ [58]. Lemma 2.3.1 (δ-Rationals [58]). Let ai ∈ Qn and bi ∈ Q. Then a set of linear arithmetic constraints C that contains strict inequalities

C ⊇ C0={aT

1x < b1, . . . , aTmx < bm}

is rationally satisfiable iff there exists a rational number δ > 0 such that Cδ0 = (C∪ C0

δ0)\ C0 is rationally satisfiable for all δ0 with 0 < δ0≤ δ, where

Cδ00 ={aT1x≤ b1− δ0, . . . , aTmx≤ bm− δ0}.

We express the above observation symbolically as an infinitesimal para- meter δ > 0. This leads to the ordered vector space Qδ = Q× Q, which we call the δ-rationals, that has pairs of rationals as elements (p, q) ∈ Qδ representing p + qδ with the following operations:

(p1, q1) + (p2, q2) ≡ (p1+ p2, q1+ q2) a· (p1, q1) ≡ (a · p1, a· q1) (p1, q1)≤ (p2, q2) ≡ (p1< p2)∨ (p1 = p2∧ q1≤ q2) (p1, q1) < (p2, q2) ≡ (p1< p2)∨ (p1 = p2∧ q1< q2) d1 | (p1, q1) ≡ (q1= 0)∧ (d1 | p1) b(p1, q1)c ≡      bp1c for p16∈ Z p1− 1 for p1∈ Z and q1 < 0 p1 else d(p1, q1)e ≡      dp1e for p16∈ Z p1+ 1 for p1∈ Z and q1 > 0 p1 else d(p1, q1)c ≡ b(p1+ 0.5, q1)c |(p1, q1)| ≡ (|p1|, |q1|) kp + qδkd ≡ (kpkd,kqkd) distd(b, c) ≡ kb − ckd where pi, qi ∈ Q, p = (p1, . . . , pn)T, q = (q1, . . . , qn)T, a ∈ Q, d1 ∈ Z with d1 > 0, d∈ Z ∪ {∞} with d > 0, and b, c ∈ Qnδ [58]5. Given the δ-rationals and Lemma 2.3.1, we can now represent aT

i x < bi by aTi x ≤ bi− δ, where ai ∈ Qn and bi ∈ Q. For the remainder of this thesis, we abbreviate with bδi the strict version of a given bound bi∈ Qδ. If the bound bi is non-strict, i.e., bi = (pi, 0), then the strict version is bδi := (pi,−1). Otherwise, the bound bi is already strict, i.e., bi = (pi, qi) with qi < 0, and we just standardize the δ-coefficient to−1, i.e, bδ

i := (pi,−1). Furthermore, we abbreviate with

5

Note that Lemma 2.1.1 still works for Qδ with the above definitions for d.c and

distd(., .). However, the range of distd(., .) is only Qδfor d = 1 and d = ∞ and Rδ= R × R

¯

bi that we swap between the strict and non-strict version. If bi is non-strict (i.e., bi = (pi, 0)), then ¯bi := bδi = (pi,−1) gives us the strict version bi. If bi is strict (i.e., bi = (pi, qi) with qi < 0), then ¯bi := (pi, 0) gives us the non-strict version of bi.

As mentioned before, we now also let the assignments for our variables range over Qδ. This means we now also have δ-rational solutions and δ-mixed solutions and we denote their solution sets by Qδ(C) = {s ∈ Qnδ : C(s)} and Mδ(C) = {s ∈ (Qnδ1 × Zn2) : C(s)}. Similar to rational inequality systems, the solutions of our δ-rational inequalities describe a closed convex polyhedron in the n-dimensional Qn

δ and methods like the classical simplex algorithm are again complete.

It is also easy to extract a purely rational/mixed solution s0 ∈ Qn from a δ-rational/mixed solution s∈ Qn

δ. We just have to choose a small enough value δ0 ∈ Q and replace the parameter δ with this value (Lemma 2.3.1). Therefore, we call δ-rational solutions and δ-mixed solutions just rational solutions and mixed solutions, respectively. Analogously, we also say ratio- nally/mixed satisfiable, rationally/mixed equivalent, and rationally/mixed equisatisfiable when we are actually talking about the δ-rational/δ-mixed versions of these expressions.

Representing our strict inequalities as non-strict inequalities also allows us to use the second property listed above for closed convex polyhedra, i.e., any supremum hmax= sup{hTx : x∈ Qnδ satisfies C} over a linear objective h∈ Qnis either h

max=−∞, hmax=∞, or there exists an actual maximum and not just a limit. This property is especially useful on techniques based on optimization like the largest cube test (see Chapter 4).

There exists an alternative and much easier elimination if all variables of a strict inequality are integer variables. In this case, the equivalence aT

ix < bi≡ aTi x≤ dbie−1 can be used to replace strict inequalities with non- strict inequalities [129]. This version is to be preferred whenever possible as it removes some (δ-)rational solutions that would violate the type of the integer variables.

Outline

Documento similar