290 likes | 490 Views
Propositional Logic Reasoning correctly computationally. Chapter 7 or 8. Natural Reasoning. John plays tennis if sunny and weekend day. If John plays tennis, Mary goes shopping. It is Saturday. It is sunny. Specific: Does John play tennis? All: what may one conclude?.
E N D
Propositional Logic Reasoning correctly computationally Chapter 7 or 8
Natural Reasoning John plays tennis if sunny and weekend day. If John plays tennis, Mary goes shopping. It is Saturday. It is sunny. • Specific: Does John play tennis? • All: what may one conclude?
State-Space Model? • What are the States? • What are the legal operators? • What is an appropriate search? • What do we want?
States • Collection of boolean formula in boolean variables. • Proposition variables stand for a statement that may be either true or false. • Ex. It is the weekend. Q • Ex. It is Saturday. P • Ex. It is Saturday implies is weekend: P =>Q Initial State: what you know { P, P=>Q} meaning clauses are true.
Operators • Operators take a previous state (collection of formula) and add new formula. • Modus Ponens: If A is true, and A implies B, then B is true. • Model: A = it is Saturday, B = it is weekend and A is true, and A=>B is true, then B is true.
What are the right operators? • If some A are B, and some B are C, then some A are C. • If A implies B, and B is false, then A is false.
A model • Models are particular instantiations of the variables. • If some A are B, and some B are C, then some A are C. • A = women, B= students, C = men • If some women are students, and some students are men, then …. • Bad Rule.
Concerns • What does it mean to say a statement is true? • What are a good set of operators? • What can we say in propositional logic? • What is the efficiency? • Can we guarantee to infer all true conclusions?
Semantic definition of Truth • 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 = 2. • 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
Beware: 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. • Complexity: 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 or worlds. • Validity: a sentence is valid if it is 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)
Horn Clauses = Prolog program • Horn clauses have 1 positive literal. • They have the form a,b,c,…=> d • Modus Ponens is “Horn Clause” complete. • Means: If KB is a set of horn clauses, and KB => horn clause c, then KB -> c by modus ponens. • Resolution is also “horn clause” complete since it yields modus ponens.
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.
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. Proposition -> CNFGoal: Proving R
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 Proof
Resolution Algorithm To prove s1, s2..sn |-- s • Put s1,s2,..sn & not s into cnf. • Resolve any 2 clauses that have complementary literals • If you get empty, done • Continue until set of clauses doesn’t grow. Search can be expensive (exponential).
Forward and Backward Reasoning 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.
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. • Changing world: actions