Sep 19, 2003 ------------- - More concepts - satisfiability - validity - Relating entailment to these - a entails b if ... is unsatisfiable - a entails b if ... is valid - fill up the blanks! - a new island: Horn clauses - a representation for which Modus Ponens is complete - note that Modus Ponens is really a specialization of Resolution - Definition of Horn Clause - a disjunction with at most one positive literal - Types of Horn clauses - facts - rules - goal - Using propositional logic - proving theorems by model-checking - proving theorems by rewrite rules - Using propositional logic in software - forward chaining - careful book-keeping in arrays - backward chaining - goal-driven - Recap algorithms for propositional logic - checking validity - resolution-refutation - checking satisfiability - GSAT - But - GSAT is incomplete - it is sound though - What is a complete and sound algorithm? - DPLL: Davis-Putnam-Logemann-Loveland - Lots of nice tricks in DPLL - unit clause propagation - see if a given symbol appears with same parity throughout (AIMA calls this "pure symbol heuristic") - if all clauses have two or more literals - set something to true/false and branch - backtrack when unsatisfiable - DPLL - is sound AND - complete - because it will can detect unsatisfiable formulas - When to use GSAT versus DPLL - GSAT: when you know a solution exists - DPLL: when you don't know and might be interested in proving a formula unsatisfiable - Practical applications of propositional reasoning - scheduling problems