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 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
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
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
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
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
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
Outline Semantics of QBF and DQBF Non-Closed Non-Prenex DQBF Quantifier Localization for DQBF Experiments
Semantics of QBF and DQBF
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
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
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
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
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
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
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
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
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
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
Non-Closed Non-Prenex DQBF
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
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
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