Propositional Logic or how to reason correctly Chapter 8 (new edition) Chapter 7 (old edition)
Goals Feigenbaum: In the knowledge lies the power. Success with expert systems. 70’s. What can we represent? –Logic(s): Prolog –Mathematical knowledge: mathematica –Common Sense Knowledge: Lenat’s Cyc has a million statement in various knowledge –Probabilistic Knowledge: Bayesian networks Reasoning: via search
History 300 BC Aristotle: Syllogisms Late 1600’s Leibnitz’s goal: mechanization of inference 1847 Boole: Mathematical Analysis of Logic 1879: Complete Propositional Logic: Frege 1965: Resolution Complete (Robinson) 1971: Cook: satisfiability NP-complete 1992: GSAT Selman min-conflicts
Syllogisms Proposition = Statement that may be either true or false. John is in the classroom. Mary is enrolled in 270A. If A is true, and A implies B, then B is true. If some A are B, and some B are C, then some A are C. If some women are students, and some students are men, then ….
Concerns What does it mean to say a statement is true? What are sound rules for reasoning What can we represent in propositional logic? What is the efficiency? Can we guarantee to infer all true statements?
Semantics Model = possible world x+y = 4 is true in the world x=3, y=1. x+y = 4 is false in the world x=3, y = 1. Entailment S1,S2,..Sn |= S means in every world where S1…Sn are true, S is true. Careful: No mention of proof – just checking all the worlds. Some cognitive scientists argue that this is the way people reason.
Reasoning or Inference Systems Proof is a syntactic property. Rules for deriving new sentences from old ones. Sound: any derived sentence is true. Complete: any true sentence is derivable. NOTE: Logical Inference is monotonic. Can’t change your mind.
Proposition Logic: Syntax See text for complete rules Atomic Sentence: true, false, variable Complex Sentence: connective applied to atomic or complex sentence. Connectives: not, and, or, implies, equivalence, etc. Defined by tables.
Propositional Logic: Semantics Truth tables: p =>q |= ~p or q pqp =>q~p or q tttt tfff tttt tttt
Implies => If 2+2 = 5 then monkeys are cows. TRUE If 2+2 = 5 then cows are animals. TRUE Indicates a difference with natural reasoning. Single incorrect or false belief will destroy reasoning. No weight of evidence.
Inference Does s1,..sk entail s? Say variables (symbols) v1…vn. Check all 2^n possible worlds. In each world, check if s1..sk is true, that s is true. Approximately O(2^n). Complete: possible worlds finite for propositional logic, unlike for arithmetic.
Translation into Propositional Logic If it rains, then the game will be cancelled. If the game is cancelled, then we clean house. Can we conclude? –If it rains, then we clean house. p = it rains, q = game cancelled r = we clean house. If p then q. not p or q If q then r. not q or r if p then r. not p or r (resolution)
Concepts Equivalence: two sentences are equivalent if they are true in same models. Validity: a sentence is valid if it true in all models. (tautology) e.g. P or not P. –Sign: Members or not Members only. –Berra: It’s not over till its over. Satisfiability: a sentence is satisfied if it true in some model.
Validity != Provability Goldbach’s conjecture: Every even number (>2) is the sum of 2 primes. This is either valid or not. It may not be provable. Godel: No axiomization of arithmetic will be complete, i.e. always valid statements that are not provable.
Natural Inference Rules Modus Ponens: p, p=>q |-- q. –Sound Resolution example (sound) –p or q, not p or r |-- q or r Abduction (unsound, but common) –q, p=>q |-- p –ground wet, rained => ground wet |-- rained –medical diagnosis
Natural Inference Systems Typically have dozen of rules. Difficult for people to use. Expensive for computation. –e.g. a |-- a or b –a and b |-- a All known systems take exponential time in worse case. (co-np complete)
Full Propositional Resolution clause 1: x1 +x2+..xn+y (+ = or) clause 2: -y + z1 + z2 +… zm clauses contain complementary literals. x1 +.. xn +z1 +… zm y and not y are complementary literals. Theorem: If s1,…sn |= s then s1,…sn |-- s by resolution. Refutation Completeness. Factoring: (simplifying: x or x goes to x)
Conjunctive Normal Form To apply resolution we need to write what we know as a conjunct of disjuncts. Pg 215 contains the rules for doing this transformation. Basically you remove all and => and move “not’s” inwards. Then you may need to apply distributive laws.
Proposition -> CNF Goal: Proving R P (P&Q) =>R (S or T) => Q T Distributive laws: (-s&-t) or q (-s or q)&(-t or q). P -P or –Q or R -S or Q -T or Q T Remember:implicit adding.
Resolution Proof P (1) -P or –Q or R (2) -S or Q (3) -T or Q (4) T (5) ~R (6) -P or –Q : 7 by 2 & 6 -Q : 8 by 7 & 1. -T : 9 by 8 & 4 empty: by 9 and 5. Done: order only effects efficiency.
Resolution Algorithm To prove s1, s2..sn |-- s 1.Put s1,s2,..sn & not s into cnf. 2.Resolve any 2 clauses that have complementary literals 3.If you get empty, done 4.Continue until set of clauses doesn’t grow. Search can be expensive (exponential).
Forward and Backward Reasoning Horn clause has at most 1 positive literal. –Prolog only allows Horn clauses. –if a, b, c then d => not a or not b or not c or d –Prolog writes this: d :- a, b, c. –Prolog thinks: to prove d, set up subgoals a, b,c and prove/verify each subgoal.
Forward Reasoning From facts to conclusions Given s1: p, s2: q, s3: p&q=>r Rewrite in clausal form: s3 = (-p+-q+r) s1 resolve with s3 = -q+r (s4) s2 resolve with s4 = r Generally used for processing sensory information.
Backwards Reasoning: what prolog does From Negative of Goal to data Given s1: p, s2: q, s3: p&q=>r Goal: s4 = r Rewrite in clausal form: s3 = (-p+-q+r) Resolve s4 with s3 = -p +-q (s5) Resolve s5 with s2 = -p (s6) Resolve s6 with s1 = empty. Eureka r is true.
Davis-Putnam Algorithm Effective, complete propositional algorithm Basically: recursive backtracking with tricks. –early termination: short circuit evaluation –pure symbol: variable is always + or – (eliminate the containing clauses) –one literal clauses: one undefined variable, really special cases of MRV Propositional satisfication is a special case of Constraint satisfication.
WalkSat Heuristic algorithm, like min-conflicts Randomly assign values (t/f) For a while do –randomly select a clause –with probability p, flip a random variable in clause –else flip a variable which maximizes number of satisfied clauses. Of course, variations exists.
Hard Satisfiability Problems Critical point: ratio of clauses/variables = 4.24 (empirical). If above, problems usually unsatsifiable. If below, problems usually satisfiable. Theorem: Critical range is bounded by [3.0003, 4.598].
What can’t we say? Quantification: every student has a father. Relations: If X is married to Y, then Y is married to X. Probability: There is an 80% chance of rain. Combine Evidence: This car is better than that one because… Uncertainty: Maybe John is playing golf.