localizing quantifiers for dqbf
play

Localizing Quantifiers for DQBF Aile Ge-Ernst C. Scholl, R. Wimmer - PowerPoint PPT Presentation

Localizing Quantifiers for DQBF Aile Ge-Ernst C. Scholl, R. Wimmer Albert-Ludwigs-University Freiburg Concept Engineering Freiburg Formal Methods in Computer Aided Design San Jos e, CA, USA, Oct 25, 2019 Motivation Prenex QBF vs. DQBF


  1. Localizing Quantifiers for DQBF Aile Ge-Ernst C. Scholl, R. Wimmer Albert-Ludwigs-University Freiburg Concept Engineering Freiburg Formal Methods in Computer Aided Design San Jos´ e, CA, USA, Oct 25, 2019

  2. Motivation

  3. Prenex QBF vs. DQBF Quantified Boolean Formulas (QBF) in prenex form: ψ := Q 1 v 1 Q 2 v 2 ... Q n v n : ϕ ◮ Q 1 v 1 Q 2 v 2 ... Q n v n : quantifier prefix ◮ Q i : quantifier ∀ or ∃ ◮ v 1 , v 2 , ... , v n : Boolean variables ◮ ϕ : matrix, which is a quantifier-free Boolean formula ◮ linearly ordered dependencies: Each existential variable depends on all universal variables to the left of it. 1 / 27

  4. Prenex QBF vs. DQBF Quantified Boolean Formulas (QBF) in prenex form: ψ := Q 1 v 1 Q 2 v 2 ... Q n v n : ϕ ◮ Q 1 v 1 Q 2 v 2 ... Q n v n : quantifier prefix ◮ Q i : quantifier ∀ or ∃ ◮ v 1 , v 2 , ... , v n : Boolean variables ◮ ϕ : matrix, which is a quantifier-free Boolean formula ◮ linearly ordered dependencies: Each existential variable depends on all universal variables to the left of it. Example: ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ϕ ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 ◮ y 1 depends on x 1 ◮ y 2 depends on x 1 and x 2 1 / 27

  5. QBF vs. DQBF Dependency Quantified Boolean Formulas (DQBF) in prenex form: Ψ := ∀ x 1 ∀ x 2 ... ∀ x n ∃ y 1 ( D y 1 ) ∃ y 2 ( D y 2 ) ... ∃ y m ( D y m ) : ϕ ◮ D y j : dependency sets of ∃ -variables y j ◮ Dependencies are stated explicitly. ◮ Variable order in the prefix irrelevant. 2 / 27

  6. QBF vs. DQBF Dependency Quantified Boolean Formulas (DQBF) in prenex form: Ψ := ∀ x 1 ∀ x 2 ... ∀ x n ∃ y 1 ( D y 1 ) ∃ y 2 ( D y 2 ) ... ∃ y m ( D y m ) : ϕ ◮ D y j : dependency sets of ∃ -variables y j ◮ Dependencies are stated explicitly. ◮ Variable order in the prefix irrelevant. Example: ∀ x 1 ∀ x 2 ∃ y 1 ( x 1 ) ∃ y 2 ( x 2 ) : ϕ x 1 x 2 ◮ y 1 depends only on x 1 x 1 x 2 y 1 y 2 ◮ y 2 depends only on x 2 2 / 27

  7. QBF vs. DQBF ◮ DQBFs encodings are more compact than their QBF counterpart. ◮ DQBFs can succinctly express problems involving decisions under partial information. Example: X 1 X 2 ◮ y 1 depends only on x 1 and x 3 X 3 ◮ y 2 depends only on x 2 and x 3 BB 1 BB 2 ⇒ ∀ x 1 ∀ x 2 ∀ x 3 ∃ y 1 ( x 1 , x 3 ) ∃ y 2 ( x 2 , x 3 ) : ϕ Y 1 Y 2 Specification ≡ Implementation ≡ 1? Miter 3 / 27

  8. QBF vs. DQBF ◮ However, until now only prenex DQBFs have been investigated (except for a seminal theoretical work 1 ). ◮ Our contribution: ◮ Definition of non-closed non-prenex DQBF . ◮ Use rules to simplify non-closed non-prenex DQBF. ◮ Experiments to verify effectiveness. 1 Valeriy Balabanov, Hui-Ju Katherine Chiang, and Jie-Hong R. Jiang. “Henkin quantifiers and Boolean formulae: A certification perspective of DQBF”. In: Theoretical Computer Science 523 (2014), pp. 86–100. doi : 10.1016/j.tcs.2013.12.020 . 4 / 27

  9. Outline Semantics of QBF and DQBF Non-Closed Non-Prenex DQBF Quantifier Localization for DQBF Experiments

  10. Semantics of QBF and DQBF

  11. Semantics of Closed Prenex (D)QBF QBF: ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ϕ is satisfied iff there are functions s y 1 and s y 2 such that replacing y 1 with s y 1 ( x 1 ) and y 2 with s y 2 ( x 1 , x 2 ) yields a tautology. DQBF: ∀ x 1 ∀ x 2 ∃ y 1 ( x 1 ) ∃ y 2 ( x 2 ) : ϕ is satisfied iff there are functions s y 1 and s y 2 such that replacing y 1 with s y 1 ( x 1 ) and y 2 with s y 2 ( x 2 ) yields a tautology. ⇒ s y 1 and s y 2 are called Skolem function . 6 / 27

  12. Semantics of Closed Prenex (D)QBF QBF: ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ϕ is satisfied iff there are functions s y 1 and s y 2 such that replacing y 1 with s y 1 ( x 1 ) and y 2 with s y 2 ( x 1 , x 2 ) yields a tautology. DQBF: ∀ x 1 ∀ x 2 ∃ y 1 ( x 1 ) ∃ y 2 ( x 2 ) : ϕ is satisfied iff there are functions s y 1 and s y 2 such that replacing y 1 with s y 1 ( x 1 ) and y 2 with s y 2 ( x 2 ) yields a tautology. ⇒ s y 1 and s y 2 are called Skolem function . Example: ∀ x 1 ∀ x 2 ∃ y 1 ( x 1 ) ∃ y 2 ( x 2 ) : ( x 1 ≡ y 1 ) ∧ ( x 2 �≡ y 2 ) ◮ satisfiable with s y 1 ( x 1 ) = x 1 and s y 2 ( x 2 ) = ¯ x 2 ◮ ⇒ ( x 1 ≡ x 1 ) ∧ ( x 2 �≡ ¯ x 2 ) is a tautology 6 / 27

  13. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: � � ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) 7 / 27

  14. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: � � ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) � � � � ∀ x 1 ∃ y 1 ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) 7 / 27

  15. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: � � ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ∃ y : ( ψ 1 ∧ ψ 2) ≈ ( ψ 1 ∧ ( ∃ y : ψ 2)), if y / ∈ V ψ 1 � � � � ∀ x 1 ∃ y 1 ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) 7 / 27

  16. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: � � ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ∃ y : ( ψ 1 ∧ ψ 2) ≈ ( ψ 1 ∧ ( ∃ y : ψ 2)), if y / ∈ V ψ 1 � � � � ∀ x 1 ∃ y 1 ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) � � � � � � ∀ x 1 ∃ y 1 : ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∀ x 2 ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) 7 / 27

  17. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: � � ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ∃ y : ( ψ 1 ∧ ψ 2) ≈ ( ψ 1 ∧ ( ∃ y : ψ 2)), if y / ∈ V ψ 1 � � � � ∀ x 1 ∃ y 1 ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ∀ x : ( ψ 1 ∧ ψ 2) ≈ (( ∀ x : ψ 1) ∧ ( ∀ x : ψ 2)) � � � � � � ∀ x 1 ∃ y 1 : ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∀ x 2 ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) 7 / 27

  18. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: � � ∀ x 1 ∃ y 1 ∀ x 2 ∃ y 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ∃ y : ( ψ 1 ∧ ψ 2) ≈ ( ψ 1 ∧ ( ∃ y : ψ 2)), if y / ∈ V ψ 1 � � � � ∀ x 1 ∃ y 1 ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ∀ x : ( ψ 1 ∧ ψ 2) ≈ (( ∀ x : ψ 1) ∧ ( ∀ x : ψ 2)) � � � � � � ∀ x 1 ∃ y 1 : ∀ x 2 : ( x 1 ∨ ¯ y 1 ∨ x 2 ) ∧ ∀ x 2 ∃ y 2 : ( y 1 ∨ ¯ x 2 ∨ ¯ y 2 ) ◮ Obtain an equisatisfiable non-prenex QBF. ◮ Gain: Reduced cost for quantifier elimination. ◮ See e. g. optimized (pre-)image computation in Symbolic Model Checking with early quantification . 7 / 27

  19. Non-Closed Non-Prenex QBF Quantifier Localization for QBF: Quantifier localization rules like ∃ y : ( ψ 1 ∧ ψ 2 ) ≈ ( ψ 1 ∧ ( ∃ y : ψ 2 )) , if y / ∈ V ψ 1 can be easily proved by an alternative characterization of the semantics. Alternative characterization using symbolic quantifier elimination: ◮ ( ∃ y : ψ ) ≡ ( ψ [0 / y ] ∨ ψ [1 / y ]) ◮ ( ∀ x : ψ ) ≡ ( ψ [0 / x ] ∧ ψ [1 / x ]) ⇒ Possibly doubling the size of the formula for each quantification. 8 / 27

  20. Non-Close Non-Prenex DQBF? Quantifier Localization for DQBF? But what about DQBF? ◮ An alternative characterization of the semantics based on symbolic quantifier elimination does not work. ◮ How to define the semantics of non-closed non-prenex DQBFs like � �� � �� � � ∀ x 1 ∃ y 1 ( x 1 , x 2 ) : ( x 1 ⊕ y 1 ) ∧ ¬ x 2 ∧ ∀ x 2 ∃ y 2 ( x 1 , x 2 ) : ( x 2 ⊕ y 2 ) ∧ ¬ x 1 which are not just a Boolean combination of closed prenex DQBFs? 9 / 27

  21. Non-Closed Non-Prenex DQBF

  22. Non-Closed Non-Prenex DQBF Semantics of Non-Closed Non-Prenex DQBF Basic Idea: Define semantics based on Skolem functions like for prenex DQBFs. ◮ The Skolem function of an ∃ -variable ∃ y ( D y ) may depend on universal variable x ◮ if x is in y ’s dependency set D y and ◮ if ② is in the scope of ∀ ① . ◮ The only admissable Skolem functions for free variables are constants 0 or 1. ◮ A DQBF is satisfiable, if ◮ replacing ∃ - and free variables by their Skolem functions and ◮ omitting all quantifiers yields a tautological formula. 10 / 27

  23. Non-Closed Non-Prenex DQBF Semantics of Non-Closed Non-Prenex DQBF: Example: � �� � �� � � ∀ x 1 ∃ y 1 ( x 1 , x 2 ) : ( x 1 ⊕ y 1 ) ∧ ¬ x 2 ∧ ∀ x 2 ∃ y 2 ( x 1 , x 2 ) : ( x 2 ⊕ y 2 ) ∧ ¬ x 1 11 / 27

  24. Non-Closed Non-Prenex DQBF Semantics of Non-Closed Non-Prenex DQBF: Example: � � �� �� � � �� �� � � � � ∀ x 1 ∃ y 1 ( x 1 , x 2 ) : ∀ x 1 ∃ y 1 ( x 1 , x 2 ) : ( x 1 ⊕ y 1 ) ∧ ¬ x 2 ( x 1 ⊕ y 1 ) ∧ ¬ x 2 ∧ ∧ ∀ x 2 ∃ y 2 ( x 1 , x 2 ) : ∀ x 2 ∃ y 2 ( x 1 , x 2 ) : ( x 2 ⊕ y 2 ) ∧ ¬ x 1 ( x 2 ⊕ y 2 ) ∧ ¬ x 1 bound bound 11 / 27

Recommend


More recommend