Variable Ranges in Linear Constraints Salvatore RUGGIERI and Fred MESNARD Dipartimento di Informatica, Universit` a di Pisa, Italy LIM-IREMIA, universit´ e de la R´ eunion, France 1/22
Introduction: example We add variable ranges to linear constraint over the real numbers as a means to reason on the approximation of variables. Example ◮ linear constraint: ◮ 0 ≤ x ≤ 4 means x ∈ [0 , 4]. ◮ linear constraint with variable range: ◮ 0 ≤ x ≤ 4 , δ x = 1 means x belongs to one of [ max (0 , a − 1) , min (4 , a + 1)] where the real number a ∈ [1 , 3] . ◮ 0 ≤ x ≤ 4 , δ x ≥ 3 means false . 2/22
Plan Introduction Example Basic definitions LR-constraints Syntax Semantics Satisfiability Interlude Computing widths Conclusion 3/22
Introduction: basic definitions ◮ vars ( c ): the set of variables in the linear constraint c . ◮ A polyhedron : the set of solution points that satisfy a linear system: Sol ( Ax ≤ b ) = { x ∈ R n | Ax ≤ b } . Let S = Sol ( Ax ≤ b ) be a non-empty polyhedron, and x a variable in x . ◮ width ( S , x ) = max { x | x ∈ S } − min { x | x ∈ S } if both min and max exist. ◮ Otherwise, width ( S , x ) = ∞ . For an empty polyhedron S = ∅ , we set width ( S , x ) = 0. 4/22
LR-constraints: syntax ◮ Let Var be the set of linear constraint variables. We define ∆ = { δ x | x ∈ Var } as the set of range variables. ◮ A primitive range constraint is an inequality δ x ≃ s , where ≃ is in {≤ , ≥} and s ≥ 0 ∈ R . ◮ A range constraint d is a sequence of primitive range constraints. ◮ A linear-range constraint (LR-constraint) c ∧ d is a sequence of linear constraints and range constraints. ◮ δ x = s is a shorthand for δ x ≤ s , δ x ≥ s . 5/22
LR-constraints: syntax Example Syntax 1. 0 ≤ x ≤ 2 2. 1 ≤ x ≤ 4 , δ x ≤ 1 3. x = 2 y , δ y ≤ 1 , δ x ≥ 3 6/22
LR-constraints: syntax Example Syntax and semantics 1. 0 ≤ x ≤ 2 denotes a set of values for x ranging from 0 to 2, and hence δ x = 1. 2. 1 ≤ x ≤ 4 , δ x ≤ 1 3. x = 2 y , δ y ≤ 1 , δ x ≥ 3 6/22
LR-constraints: syntax Example Syntax and semantics 1. 0 ≤ x ≤ 2 denotes a set of values for x ranging from 0 to 2, and hence δ x = 1. 2. 1 ≤ x ≤ 4 , δ x ≤ 1 denotes a collection of intervals for x of the form [ max (1 , a − δ ) , min (4 , a + δ )] with a ∈ R and 0 ≤ δ ≤ 1. 3. x = 2 y , δ y ≤ 1 , δ x ≥ 3 6/22
LR-constraints: syntax Example Syntax and semantics 1. 0 ≤ x ≤ 2 denotes a set of values for x ranging from 0 to 2, and hence δ x = 1. 2. 1 ≤ x ≤ 4 , δ x ≤ 1 denotes a collection of intervals for x of the form [ max (1 , a − δ ) , min (4 , a + δ )] with a ∈ R and 0 ≤ δ ≤ 1. 3. x = 2 y , δ y ≤ 1 , δ x ≥ 3 is unsatisfiable since the approximation of x is at most 2 (the double of the approximation of y ) which contradicts δ x ≥ 3. 6/22
LR-constraints: semantics ◮ A model of a LR-constraint c ∧ d is a non-empty polyhedron: � S = Sol ( c ∧ x ≤ x ≤ x ) δ x ∈ vars ( d ) where x , x ∈ R such that for every δ x ≃ s in d with ≃ in {≤ , ≥} , we have width ( S , x ) ≃ 2 s . ◮ c ∧ d is satisfiable if there exists a model of it. ◮ c ∧ d entails δ x ≤ s if every model of c ∧ d is a model of δ x ≤ s . 7/22
LR-constraints: semantics ◮ NB: when d is empty, satisfiability conservatively boils down to the condition Sol ( c ) � = ∅ . ◮ Towards providing a procedure for checking satisfiability in the general case, we first compile LR-constraints into parameterized linear systems. ◮ A parameterized linear system of inequalities is a linear system Ax ≤ b + Ba where a is a vector of parameters . 8/22
LR-constraints: semantics For c ∧ d , we define the parameterized linear system: � S ( c ∧ d ) = c ∧ d ∧ ( a x − δ x ≤ x ≤ a x + δ x , 0 ≤ δ x ) δ x ∈ vars ( d ) where the a x , δ x ’s are parameters. Intuition: a x models an approximatively known value for x , and δ x its radius. Example 1. S (0 ≤ x ≤ 2) is 0 ≤ x ≤ 2 (a 0-parameter linear system). 2. S (1 ≤ x ≤ 4 , δ x ≤ 1) is 1 ≤ x ≤ 4 , a x − δ x ≤ x ≤ a x + δ x , 0 ≤ δ x ≤ 1. 3. S ( x = 2 y , δ y ≤ 1 , δ x ≥ 3) is x = 2 y , a y − δ y ≤ y ≤ a y + δ y , 0 ≤ δ y ≤ 1 , a x − δ x ≤ x ≤ a x + δ x , δ x ≥ 3. 9/22
LR-constraints: semantics A parameterized polyhedron is the collection of polyhedra defined by fixing the values of the parameters in a parameterized linear system: Sol ( Ax ≤ b + Ba , u ) = { x | Ax ≤ b + Bu } , where u ∈ R | a | is an instance of a . Example 1. S (0 ≤ x ≤ 2) boils down to Sol (0 ≤ x ≤ 2). 2. For S (1 ≤ x ≤ 4 , δ x ≤ 1), we enumerate below the polyhedra obtained by fixing δ x = 1: Sol (1 ≤ x ≤ a x + 1) when a x ≤ 2 Sol ( a x − 1 ≤ x ≤ a x + 1) when 2 ≤ a x ≤ 3 Sol ( a x − 1 ≤ x ≤ 4) when 3 ≤ a x . 3. S ( x = 2 y , δ y ≤ 1 , δ x ≥ 3) is unexpectedly non-empty! Let δ x = 3 , δ y = a x = a y = 0, then x = y = 0 is a solution. 10/22
LR-constraints: semantics So we explicitly restrict to parameter instances that satisfy the lower bounds in a range constraint. ◮ Let S = S ( c ∧ d ). We say that a parameter instance u is a solution of d in S if for every δ x ≥ s in d , we have: width ( Sol ( S , u ) , x ) ≥ 2 s . And we extend the width () function. ◮ Let S = Ax ≤ b + Ba be a parameterized linear system. The width of x in S is defined as: parwidth ( S , x ) = max u width ( Sol ( S , u ) , x ), if it exists. Otherwise, parwidth ( S , x ) = ∞ . 11/22
LR-constraints: satisfiability Theorem A LR-constraint c ∧ d is satisfiable iff ◮ c is satisfiable, ◮ d ∧ � δ x ∈ vars ( d ) 0 ≤ δ x is satisfiable as a linear constraint, ◮ there exists a solution of d in S ( c ∧ d ) . For c ∧ d satisfiable and s = parwidth ( S ( c ∧ d ) , x ) / 2 � = ∞ ◮ c ∧ d entails δ x ≤ s. We’ll give algorithms for checking the existence of a solution of d and computing parwidth (). 12/22
LR-constraints: satisfiability Example Let c ∧ d be 0 ≤ x ≤ 10 , 0 ≤ y ≤ x , δ x = 3 , δ y ≥ 4. Satisfiable? S = S ( c ∧ d ), where a x , a y , δ x , δ y are parameters, is: 0 ≤ x ≤ 10 , 0 ≤ y ≤ x , δ x = 3 , 4 ≤ δ y , a x − δ x ≤ x ≤ a x + δ x , a y − δ y ≤ y ≤ a y + δ y ◮ c is satisfiable, ◮ δ x = 3 , δ y ≥ 4 , 0 ≤ δ x , 0 ≤ δ y is satisfiable, ◮ let us find a parameter instance u such that: width ( Sol ( S , u ) , x ) ≥ 6, since δ x ≥ 3 is in d , and width ( Sol ( S , u ) , y ) ≥ 8, since δ y ≥ 4 is in d . By defining u as: a x = 7 , δ x = 3 , a y = 5 , δ y = 5, we have width ( Sol ( S , u ) , x ) = 6 and width ( Sol ( S , u ) , y ) = 10. Hence u is a solution for d in S . Yes , c ∧ d is satisfiable. 13/22
Interlude Minkowski, Motzkin, 1953: Theorem (Minkowski’s decomposition thm) There exists an effective procedure that given Ax ≤ b decides whether or not the polyhedron Sol ( Ax ≤ b ) is empty and, if not, it yields a generating matrix R and a vertex matrix V such that: ◮ Sol ( Ax ≤ b ) = { x | x = R λ , λ ≥ 0 } + { x | x = V γ , γ ≥ 0 , Σ γ = 1 } , ◮ Sol ( Ax ≤ 0 ) = { x | x = R λ , λ ≥ 0 } . 14/22
Interlude Example � x -1 1 0 � 1 1 ≤ 0 y -2 -1 3 � 1 � 0 � � 1 -1 R = V = -2 -1 0 -1 15/22
Interlude Loechner and Wilde, 1997: Theorem (Minkowski’s thm for parameterized polyhedra) Every parameterized polyhedron can be expressed by a generating matrix R and finitely many pairs ( v a (1) , C 1 a ≤ c 1 ) , . . . , ( v a ( k ) , C k a ≤ c k ) where, for i = 1 .. k, v a ( i ) is a vector parametric in a , Sol ( C i a ≤ c i ) � = ∅ , and such that: ◮ Sol ( Ax ≤ b + Ba , u ) = { x | x = R λ , λ ≥ 0 } + ConvexHull ( { v u ( i ) | i = 1 .. k , C i u ≤ c i } ) , ◮ Sol ( Ax ≤ 0 ) = { x | x = R λ , λ ≥ 0 } . 16/22
Interlude Example a + b ≥ y , y ≥ a , y ≥ b , x = a 1 0 0 1 0 � x � a -1 0 0 -1 0 � � 0 1 ≤ 0 + 1 1 y b 0 -1 0 -1 0 0 -1 0 0 -1 R = 0 � � � � � � a a a ( , b ≥ a ≥ 0) ( , a ≥ b ≥ 0) ( , a , b ≥ 0) b a a+b 17/22
Computing widths: abs() The maximum absolute value of a linear expression over the solutions of a non-empty polyhedron S : ◮ abs ( S , c T x + α ) = max {| c T x 0 + α | | x 0 ∈ S } if it exists. ◮ Otherwise, abs ( S , c T x + α ) = ∞ . A direct implementation of the abs () function: ◮ M = max { c T x + α | x ∈ S } , ◮ m = min { c T x + α | x ∈ S } , ◮ abs ( S , c T x + α ) = r ∈ R iff M , m ∈ R and max { M , − m } = r . 18/22
Computing widths Theorem Consider the Minkowski’s form of the parameterized S = S ( c ∧ d ) . ◮ parwidth ( S , x i ) = r ∈ R iff row ( R , i ) = 0 and r = max ( { 0 } ∪ { s | 1 ≤ m < n ≤ k , Sol ( P m , n ) � = ∅ , s = abs ( Sol ( P m , n ) , v a ( m ) i − v a ( n ) i ) } ) , where P m , n = C m a ≤ c m , C n a ≤ c n . ◮ There exists a solution of d in S iff the following constraint over parameters is satisfiable: � � ( P m , n ∧ | v a ( m ) i − v a ( n ) i | ≥ 2 s ) δ x i ≥ s ∈ d , 1 ≤ m < n ≤ k s > 0 , row ( R , i )= 0 19/22
Recommend
More recommend