cs156 the calculus of computation
play

CS156: The Calculus of Computation Zohar Manna Winter 2010 - PowerPoint PPT Presentation

CS156: The Calculus of Computation Zohar Manna Winter 2010 Chapter 7: Quantified Linear Arithmetic Page 1 of 40 Quantifier Elimination (QE) Algorithm for elimination of all quantifiers of formula F until quantifier-free formula (qff) G that is


  1. CS156: The Calculus of Computation Zohar Manna Winter 2010 Chapter 7: Quantified Linear Arithmetic Page 1 of 40

  2. Quantifier Elimination (QE) Algorithm for elimination of all quantifiers of formula F until quantifier-free formula (qff) G that is equivalent to F remains Note: Could be enough if F is equisatisfiable to G , that is F is satisfiable iff G is satisfiable A theory T admits quantifier elimination iff there is an algorithm that given Σ-formula F returns a quantifier-free Σ-formula G that is T -equivalent to F . Page 2 of 40

  3. Example: ∃ x . 2 x = y For Σ Q -formula F : ∃ x . 2 x = y , quantifier-free T Q -equivalent Σ Q -formula is G : ⊤ For Σ Z -formula F : ∃ x . 2 x = y , there is no quantifier-free T Z -equivalent Σ Z -formula. Let � T Z be T Z with divisibility predicates | . For � Σ Z -formula F : ∃ x . 2 x = y , a quantifier-free � T Z -equivalent � Σ Z -formula is G : 2 | y . Page 3 of 40

  4. About QE Algorithm In developing a QE algorithm for theory T , we need only consider formulae of the form ∃ x . F for quantifier-free F . Example: For Σ-formula G 1 : ∃ x . ∀ y . ∃ z . F 1 [ x , y , z ] � �� � F 2 [ x , y ] G 2 : ∃ x . ∀ y . F 2 [ x , y ] G 3 : ∃ x . ¬ ∃ y . ¬ F 2 [ x , y ] � �� � F 3 [ x ] G 4 : ∃ x . ¬ F 3 [ x ] � �� � F 4 G 5 : F 4 G 5 is quantifier-free and T -equivalent to G 1 Page 4 of 40

  5. Quantifier Elimination for T Z Σ Z : { . . . , − 2 , − 1 , 0 , 1 , 2 , . . . , − 3 · , − 2 · , 2 · , 3 · , . . . , + , − , = , < } Lemma: Given quantifier-free Σ Z -formula F [ y ] s.t. free( F [ y ]) = { y } . S represents the set of integers S : { n ∈ Z : F [ n ] is T Z -valid } . Either S ∩ Z + or Z + \ S is finite. Note: Z + is the set of positive integers. Example: Σ Z -formula F [ y ] : ∃ x . 2 x = y S : even integers S ∩ Z + : positive even integers — infinite Z + \ S : positive odd integers — infinite Therefore, by the lemma, there is no quantifier-free T Z -formula that is T Z -equivalent to F [ y ]. Thus, T Z does not admit QE. Page 5 of 40

  6. Augmented theory � T Z � Σ Z : Σ Z with countable number of unary divisibility predicates for k ∈ Z + k | · Intended interpretations: k | x holds iff k divides x without any remainder Example: x > 1 ∧ y > 1 ∧ 2 | x + y is satisfiable (choose x = 2 , y = 2). ¬ (2 | x ) ∧ 4 | x is not satisfiable. Axioms of � T Z : axioms of T Z with additional countable set of axioms for k ∈ Z + ∀ x . k | x ↔ ∃ y . x = ky Page 6 of 40

  7. � T Z admits QE (Cooper’s method) Algorithm: Given � Σ Z -formula ∃ x . F [ x ] , where F is quantifier-free, construct quantifier-free � Σ Z -formula that is equivalent to ∃ x . F [ x ]. 1. Put F[x] into Negation Normal Form (NNF). 2. Normalize literals: s < t , k | t , or ¬ ( k | t ). 3. Put x in s < t on one side: hx < t or s < hx . 4. Replace hx with x ′ without a factor. 5. Replace F [ x ′ ] by � F [ j ] for finitely many j . Page 7 of 40

  8. Cooper’s Method: Step 1 Put F [ x ] in Negation Normal Form (NNF) F 1 [ x ], so that ∃ x . F 1 [ x ] ◮ has negations only in literals (only ∧ , ∨ ) ◮ is � T Z -equivalent to ∃ x . F [ x ] Example: ∃ x . ¬ ( x − 6 < z − x ∧ 4 | 5 x + 1 → 3 x < y ) is equivalent to ∃ x . x − 6 < z − x ∧ 4 | 5 x + 1 ∧ ¬ (3 x < y ) Note: ¬ ( A ∧ B → C ) ⇔ ( A ∧ B ∧ ¬ C ) Page 8 of 40

  9. Cooper’s Method: Step 2 Replace (left to right) s = t ⇔ s < t + 1 ∧ t < s + 1 ¬ ( s = t ) ⇔ s < t ∨ t < s ¬ ( s < t ) ⇔ t < s + 1 The output ∃ x . F 2 [ x ] contains only literals of form k | t , or ¬ ( k | t ) , s < t , where s , t are � T Z -terms and k ∈ Z + . Example: ¬ ( x < y ) ∧ ¬ ( x = y + 3) ⇓ y < x + 1 ∧ ( x < y + 3 ∨ y + 3 < x ) Page 9 of 40

  10. Cooper’s Method: Step 3 Collect terms containing x so that literals have the form hx < t , t < hx , k | hx + t , or ¬ ( k | hx + t ) , where t is a term (does not contain x ) and h , k ∈ Z + . The output is the formula ∃ x . F 3 [ x ], which is � T Z -equivalent to ∃ x . F [ x ]. Example: x + x + y < z + 3 z + 2 y − 4 x 5 | − 7 x + t ⇓ ⇓ 6 x < 4 z + y 5 | 7 x − t Page 10 of 40

  11. Cooper’s Method: Step 4 I Let δ ′ = lcm { h : h is a coefficient of x in F 3 [ x ] } , where lcm is the least common multiple. Multiply atoms in F 3 [ x ] by constants so that δ ′ is the coefficient of x everywhere: hx < t ⇔ δ ′ x < h ′ t where h ′ h = δ ′ h ′ t < δ ′ x h ′ h = δ ′ t < hx ⇔ where k | hx + t ⇔ h ′ k | δ ′ x + h ′ t where h ′ h = δ ′ ¬ ( h ′ k | δ ′ x + h ′ t ) h ′ h = δ ′ ¬ ( k | hx + t ) ⇔ where The result ∃ x . F ′ 3 [ x ], in which all occurrences of x in F ′ 3 [ x ] are in terms δ ′ x . 3 with a fresh variable x ′ to form Replace δ ′ x terms in F ′ F ′′ : F 3 { δ ′ x �→ x ′ } 3 Page 11 of 40

  12. Cooper’s Method: Step 4 II Finally, construct 3 [ x ′ ] ∧ δ ′ | x ′ ∃ x ′ . F ′′ � �� � F 4 [ x ′ ] ∃ x ′ . F 4 [ x ′ ] is equivalent to ∃ x . F [ x ] and each literal of F 4 [ x ′ ] has one of the forms: (A) x ′ < t (B) t < x ′ (C) k | x ′ + t (D) ¬ ( k | x ′ + t ) where t is a term that does not contain x ′ , and k ∈ Z + . Page 12 of 40

  13. Cooper’s Method: Step 4 III Example: � T Z -formula ∃ x . 3 x + 1 > y ∧ 2 x − 6 < z ∧ 4 | 5 x + 1 � �� � F [ x ] After step 3: ∃ x . 2 x < z + 6 ∧ y − 1 < 3 x ∧ 4 | 5 x + 1 � �� � F 3 [ x ] Collecting coefficients of x (step 4): δ ′ = lcm(2 , 3 , 5) = 30 Multiply when necessary: ∃ x . 30 x < 15 z + 90 ∧ 10 y − 10 < 30 x ∧ 24 | 30 x + 6 Page 13 of 40

  14. Cooper’s Method: Step 4 IV Multiply when necessary: ∃ x . 30 x < 15 z + 90 ∧ 10 y − 10 < 30 x ∧ 24 | 30 x + 6 Replacing 30 x with fresh x ′ and adding divisibility conjunct: ∃ x ′ . x ′ < 15 z + 90 ∧ 10 y − 10 < x ′ ∧ 24 | x ′ + 6 ∧ 30 | x ′ � �� � F 4 [ x ′ ] ∃ x ′ . F 4 [ x ′ ] is equivalent to ∃ x . F [ x ]. Page 14 of 40

  15. Cooper’s Method: Step 5 Construct left infinite projection F −∞ [ x ′ ] of F 4 [ x ′ ] by (A) replacing literals x ′ < t by ⊤ (B) replacing literals t < x ′ by ⊥ Idea: very small numbers satisfy (A) literals but not (B) literals Let � � k of (C) literals k | x ′ + t δ = lcm k of (D) literals ¬ ( k | x ′ + t ) and B be the set of terms t appearing in (B) literals of F 4 [ x ′ ]. Construct δ δ � � � F 5 : F −∞ [ j ] ∨ F 4 [ t + j ] . j =1 j =1 t ∈ B F 5 is quantifier-free and � T Z -equivalent to ∃ x . F [ x ]. Page 15 of 40

  16. Intuition of Step 5 I Property (Periodicity) if m | δ then m | n iff m | n + λδ for all λ ∈ Z That is, m |· cannot distinguish between m | n and m | n + λδ . By the choice of δ (lcm of the k ’s) — no | literal in F 5 can distinguish between n and n + λδ , for any λ ∈ Z . δ δ � � � F 5 : F −∞ [ j ] ∨ F 4 [ t + j ] j =1 j =1 t ∈ B Page 16 of 40

  17. Intuition of Step 5 II ◮ left disjunct � δ j =1 F −∞ [ j ] : Contains only | literals Asserts: no least n ∈ Z s.t. F 4 [ n ]. For if there exists n satisfying F −∞ , then every n − λδ , for λ ∈ Z + , also satisfies F −∞ ◮ right disjunct � δ � t ∈ B F 4 [ t + j ] : j =1 Asserts: There is least n ∈ Z s.t. F 4 [ n ]. For let t ∗ = { largest t | t < x ′ in (B) } . If n ∈ Z is s.t. F 4 [ n ], then ∃ j (1 ≤ j ≤ δ ) . t ∗ + j ≤ n ∧ F 4 [ t ∗ + j ] In other words, if there is a solution, then one must appear in δ interval to the right of t ∗ Page 17 of 40

  18. Example of Step 5 I ∃ x . 3 x + 1 > y ∧ 2 x − 6 < z ∧ 4 | 5 x + 1 � �� � F [ x ] ⇓ ∃ x ′ . x ′ < 15 z + 90 ∧ 10 y − 10 < x ′ ∧ 24 | x ′ + 6 ∧ 30 | x ′ � �� � F 4 [ x ′ ] By step 5, F −∞ [ x ′ ] : ⊤ ∧ ⊥ ∧ 24 | x ′ + 6 ∧ 30 | x ′ , which simplifies to ⊥ . Page 18 of 40

  19. Example of Step 5 II Compute δ = lcm { 24 , 30 } = 120 and B = { 10 y − 10 } . Then replacing x ′ by 10 y − 10 + j in F 4 [ x ′ ] produces � � 120 � 10 y − 10 + j < 15 z + 90 ∧ 10 y − 10 < 10 y − 10 + j F 5 : ∧ 24 | 10 y − 10 + j + 6 ∧ 30 | 10 y − 10 + j j =1 which simplifies to � � 120 � 10 y + j < 15 z + 100 ∧ ✘✘ 0 < j ✘ F 5 : . ∧ 24 | 10 y + j − 4 ∧ 30 | 10 y − 10 + j j =1 F 5 is quantifier-free and � T Z -equivalent to ∃ x . F [ x ]. Page 19 of 40

  20. Cooper’s Method: Example I ∃ x . (3 x + 1 < 10 ∨ 7 x − 6 > 7) ∧ 2 | x � �� � F [ x ] Isolate x terms ∃ x . (3 x < 9 ∨ 13 < 7 x ) ∧ 2 | x , so δ ′ = lcm { 3 , 7 , 1 } = 21 . After multiplying coefficients by proper constants, ∃ x . (21 x < 63 ∨ 39 < 21 x ) ∧ 42 | 21 x , we replace 21 x by x ′ : ∃ x ′ . ( x ′ < 63 ∨ 39 < x ′ ) ∧ 42 | x ′ ∧ 21 | x ′ . � �� � F 4 [ x ′ ] Page 20 of 40

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend