2-Propositional Logic
2-Propositional Logic
Department of Informatics
University of Fribourg
I N F O R M AT I C S
Why Study Propositional Logic?
University of Fribourg
I N F O R M AT I C S
Syntax of Propositional Logic
University of Fribourg
I N F O R M AT I C S
Interpretations of Propositional Variables
I : {P 7→ true, Q 7→ false, . . .}
University of Fribourg
I N F O R M AT I C S
Semantics of Propositional Variables (1)
I |= F
University of Fribourg
I N F O R M AT I C S
Semantics of Propositional Variables (2)
University of Fribourg
I N F O R M AT I C S
Proof Rules (1)
I |= ¬F I |6 = ¬F
I 6|= F I |= F
I |= F ∧ G I 6|= F ∧ G
I |= F I 6|= F | I 6|= G
I |= G
I |= F ∨ G I 6|= F ∨ G
I |= F | I |= G I 6|= F
I 6|= G
University of Fribourg
I N F O R M AT I C S
Proof Rules (2)
I |= F → G I 6|= F → G
I 6|= F | I |= G I |= F
I 6|= G
I |= F ↔ G I 6|= F ↔ G
I |= F ∧ G | I 6|= F ∨ G I |= ¬F ∧ G | I |= F ∧ ¬G
I |= F
I 6|= F
I |= ⊥
University of Fribourg
I N F O R M AT I C S
Satisfiability and Validity
University of Fribourg
I N F O R M AT I C S
The Duality of Satisfiability and Validity
University of Fribourg
I N F O R M AT I C S
An example
(P ∧ (P → Q)) → Q
University of Fribourg
I N F O R M AT I C S
Equivalence and Implication of Formulas
University of Fribourg
I N F O R M AT I C S
An example
Does
P ∧ (P → Q)
imply
Q
?
University of Fribourg
I N F O R M AT I C S
Substitutions (1)
{F1 7→ G1 , F2 7→ G2 , . . . , Fn 7→ Gn }
University of Fribourg
I N F O R M AT I C S
Substitutions (2)
University of Fribourg
I N F O R M AT I C S
Substitutions (3)
University of Fribourg
I N F O R M AT I C S
An example
University of Fribourg
I N F O R M AT I C S
Negation Normal Form
¬¬F ⇔ F
¬> ⇔ ⊥
¬⊥ ⇔ >
¬(F ∧ G) ⇔ (¬F ∨ ¬G )
¬(F ∨ G) ⇔ (¬F ∧ ¬G )
F →G ⇔ ¬F ∨ G
F ↔G ⇔ (F → G ) ∧ (G → F )
University of Fribourg
I N F O R M AT I C S
Disjunctive Normal Form
(F ∨ G ) ∧ H ⇔ (F ∧ H) ∨ (G ∧ H)
F ∧ (G ∨ H) ⇔ (F ∧ G ) ∨ (F ∧ H)
University of Fribourg
I N F O R M AT I C S
Conjunctive Normal Form
(F ∧ G ) ∨ H ⇔ (F ∨ H) ∧ (G ∨ H)
F ∨ (G ∧ H) ⇔ (F ∨ G ) ∧ (F ∨ H)
University of Fribourg
I N F O R M AT I C S
An example
Turn
(P ∧ (P → Q)) → Q
into CNF.
University of Fribourg
I N F O R M AT I C S
Deciding Satisfiability (1)
The table will have size O(2n ). However, we can check this more
(space) efficiently.
University of Fribourg
I N F O R M AT I C S
Deciding Satisfiability (2)
SAT(F ) {
if (F = >) return true;
elsif (F = ⊥) return false;
else{
P = choose vars(F );
return( SAT(F {P 7→ >}) ∨ SAT(F {P 7→ ⊥}) );
}
}
University of Fribourg
I N F O R M AT I C S
An example
Show that
(P ∧ (P → Q)) → Q
is satisfiable and that it is valid by using the procedure SAT of the
previous slide.
University of Fribourg
I N F O R M AT I C S
Resolution (1)
into CNF?
University of Fribourg
I N F O R M AT I C S
Equisatisfiability (1)
University of Fribourg
I N F O R M AT I C S
Equisatisfiability (2)
I rep(>) = >
I rep(⊥) = ⊥
I rep(P) = P for variables P
I rep(F ) = PF for all other formulas F
University of Fribourg
I N F O R M AT I C S
Equisatisfiability (3)
University of Fribourg
I N F O R M AT I C S
Equisatisfiability (4)
University of Fribourg
I N F O R M AT I C S
Resolution (2)
C1 C2
C1 {P 7→ ⊥} ∨ C2 {¬P →
7 ⊥}
University of Fribourg
I N F O R M AT I C S
Resolution (3)
University of Fribourg
I N F O R M AT I C S
An example
Show that
P ∧ (P → Q) → Q
is satisfiable by using resolution.
University of Fribourg
I N F O R M AT I C S
Boolean Constraint Propagation (BCP)
P C [¬P] ¬P C [P]
C {¬P 7→ ⊥} C {P 7→ ⊥}
University of Fribourg
I N F O R M AT I C S
Davis Putnam Logemann Loveland
DPLL(F ) {
F 0 = BCP(F );
if (F 0 = >) return true;
elsif (F 0 = ⊥) return false;
else {
P = choose vars(F 0 );
return(DPLL(F 0 {P 7→ >}) ∨ DPLL(F 0 {P 7→ ⊥}));
}
}
University of Fribourg
I N F O R M AT I C S
An example
Show that
P ∧ (P → Q) → Q
is satisfiable by using DPLL.
University of Fribourg
I N F O R M AT I C S
That’s all
University of Fribourg
I N F O R M AT I C S