1 / 24

Logics for Data and Knowledge Representation

Logics for Data and Knowledge Representation. Exercises: Propositional Logic. Fausto Giunchiglia, Rui Zhang and Vincenzo Maltese. Outline. Syntax Symbols and formation rules Modeling a problem Semantics Assignments, models Logical implication Reasoning Satisfiability and validity

june
Download Presentation

Logics for Data and Knowledge Representation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Logics for Data and KnowledgeRepresentation Exercises: Propositional Logic Fausto Giunchiglia, Rui Zhang and Vincenzo Maltese

  2. Outline • Syntax • Symbols and formation rules • Modeling a problem • Semantics • Assignments, models • Logical implication • Reasoning • Satisfiability and validity • Tableaux calculus • DPLL • Some nice problems

  3. Symbols in PL SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Which of the following symbols are used in PL? ⊓  ⊤ ∨ ≡ ⊔ ⊑ → ↔ ⊥ ∧ ⊨ • Which of the following symbols are in well formed formulas? ⊓  ⊤ ∨ ≡ ⊔ ⊑ → ↔ ⊥ ∧ ⊨

  4. Symbols in PL (solution) SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Which of the following symbols are used in PL? ⊓  ⊤∨ ≡ ⊔ ⊑ → ↔ ⊥ ∧ ⊨ • Which of the following symbols are in well formed formulas? ⊓  ⊤ ∨ ≡ ⊔ ⊑ → ↔ ⊥ ∧ ⊨ Remember the BNF grammar: <Atomic Formula> ::= A | B | ... | P | Q | ... | ⊥ | ⊤ <wff> ::= <Atomic Formula> | ¬<wff> |<wff>∧ <wff> | <wff>∨ <wff> | <wff> → <wff> | <wff> ↔ <wff> 4

  5. Formation rules SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Which of the following is not a wff? •  MonkeyLow∨ BananaHigh •   MonkeyLow  BananaHigh • MonkeyLow   BananaHigh • MonkeyLow→ GetBanana NUM. 3 IS WRONG! 5

  6. Modeling: Bananas SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS Bananas may differ in many ways. However, there are red and yellow bananas. I like bananas, but I eat only yellow bananas. If I do not eat at least a banana I get crazy. • Highlight relevant words, define a PL language and a theory for the problem below. 6

  7. Modeling: Bananas (possible solution) SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS Bananas may differ in many ways. However, there are red and yellow bananas. I like bananas, but I eat only yellow bananas. If I do not eat at least a banana I get crazy. L = {RedBanana, YellowBanana, EatBanana, GetCrazy, Banana} T = {RedBanana → Banana, YellowBanana → Banana, EatBanana → YellowBanana, EatBanana → GetCrazy} 7

  8. Truth valuations and Truth Tables SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • A truth valuation on a PL language L is a mapping ν that assigns to each formula P of L a truth value ν(P). • A truth table is composed of one column for each input variable and one (or more) final column for all of the possible results of the logical operation that the table is meant to represent. Each row of the truth table therefore contains one possible assignment of the input variables, and the result of the operation for those values. LOGICAL OPERATION VARIABLES POSSIBLE ASSIGNEMENTS

  9. Example SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Calculate the Truth Table of the following formulas: • (1) A ∧ B; (2) A ∨ B; (3) A ↔ B. VARIABLES (1) (2) (3) POSSIBLE ASSIGNEMENTS

  10. Exercise: Truth Valuations SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Compute truth valuations for the formulas: (A∨B)∧¬C (A∨B)→C (A∨B→C∨D∨E)∧(¬F↔A)∧(¬F∨G∧¬H∨F)∧(¬I→¬(D∧J))∧(¬J∨¬D∨E)∧F 10

  11. Provide the models for the propositions SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • RECALL: a truth valuation ν is a model for a proposition P iff ν(P) = true • List the models for the following formulas: • A ∧ ¬B • (A ∧ B) ∨ (B ∧ C) • A ∨ B → C • ¬A ↔ B ↔ C MODEL 11

  12. Entailment SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • RECALL:  ⊨ ψ iff all models satisfying the formulas in  also satisfy ψ • Let A, B, C be propositional sentences. If A ⊨ B ∧ C, then A ⊨ B or A ⊨ C or both? Proof:If A ⊨ B ∧ C, for all ν such that v(A) = T it should be v(B ∧ C) = T. However, by definition this means that v(B) = T and v(C) = T. Therefore (a) is true for both.

  13. Exercise: prove entailment SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Given that: P = (A ∨ B ) ∧ (C ∨ D ∨ E) Q1 = A ∨ B Q2 = (A ∨ B ∨ C) ∧ ((B ∧ C ∧ D) → E) Q3 = (A ∨ B) ∧ (D ∨ E) Does P ⊨ Qi ? Proof: Let X = A ∨ B, Y = D ∨ E, then we can rewrite: P = X ∧ (¬C ∨ Y); Q1 = X; Q2 = (X ∨ C) ∧ (¬B ∨ ¬C ∨ Y); Q3 = X ∧ Y P ⊨ Q1 is obvious. Since X ⊨ X ∨ C and (¬ C ∨ Y) ⊨ (¬B ∨ ¬C ∨ Y), then P ⊨ Q2. Since Y ⊨ (¬C ∨ Y), then Q3 ⊨ P (and not vice versa).

  14. Exercise: prove entailment using truth tables SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Given that: P = (A ∨ B ) ∧ (C ∨ D ∨ E) Q1 = A ∨ B Q2 = (A ∨ B ∨ C) ∧ ((B ∧ C ∧ D) → E) Q3 = (A ∨ B) ∧ (D ∨ E) (1) List all truth assignments such that P ⊨ Qi (2) Is there any assignment such that P ⊨ Qi for all i? • Solution to (1): First compute the truth tables for all the propositions above. Then, list all rows for which both P and Qi are true. • Solution to (2): Check whether there is any assignment for which all the sentences above are true. 14

  15. Logical implication and deduction SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Deduction (⊢) is the process of inferring new knowledge from known facts. • Logical implication (→) is a way to include deduction directly in the language. It is an alternative way to implement deduction. For instance: ¬(A ∨ B) → (¬A ∧ ¬B) iff ¬(A ∨ B) ⊢ (¬A ∧ ¬B) • We provided some well known tautologies in the theoretical part (e.g. the De Morgan Law above) 15

  16. Prove using truth tables, the following deductions SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Double negative elimination P ⊢ P • Conjunction introduction / elimination (a) {P, Q} ⊢ P∧Q; (b) P ∧ Q ⊢ P; (c) P ∧ Q ⊢ Q. • Disjunction introduction / elimination  (a) P ⊢P ∨ Q; (a) Q ⊢ P ∨ Q; (c) {P ∨ Q, P → R, Q → R} ⊢ R • Bi-conditional introduction / elimination (P → Q) ∧ (Q → P) ⊢ (P ↔ Q)  • De Morgan (a) (P ∧ Q) ⊢ P ∨ Q; (b) (P ∨ Q) ⊢ P ∧ Q 16

  17. Proofs of the Deduction Rules SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS 17

  18. Prove validity (I) SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Suppose p, q, r, s are four propositional sentences, is the following sentence valid? A = (p → r) → (p ∨ r) • A way to prove validity is to show that the proposition entails ⊤. This can be done by applying well known tautologies (e.g. De Morgan). In alternative we can show using truth tables that all the assignments are true. (p → r) → (¬p ∨ r) = ¬(p → r) ∨ (¬p ∨ r) = ¬(¬p ∨ r) ∨ (¬p ∨ r) = ⊤

  19. Calculus with Tableaux SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS Γ = {A B, B, A} Γ = {B A, B} Γ = {(A  B), A} A B A B B  A A  B A B A B A  B closed closed A B closed closed 19

  20. Calculus with Tableaux SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS Γ = {(A B)  (B  A), B} B (A  B)  ( B  A) (A  B)  B  A A  B B A closed A B closed 20

  21. Recall the DPLL algorithm SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS • Input: a proposition P in CNF • Output: true if "P satisfiable" or false if "P unsatisfiable" boolean function DPLL(P) { if consistent(P) then returntrue; if hasEmptyClause(P) then return false; foreach unit clause C in P do P = unit-propagate(C, P); foreach pure-literal L in P do P = pure-literal-assign(L, P); L = choose-literal(P); return DPLL(P  L) OR DPLL(P L); } Consistency Check Empty Close Test Unit Propagation Pure Literal Elimination Splitting rule 21

  22. Use DPLL to prove satisfiability B  ¬A  (¬C  A)  (B  C) 1. Is it a consistent set of literals? There are no contradictions, but there are closes which are not atomic. 2. Are there any empty clauses? No, go ahead. 3. Assign the right truth value to all literals and simplify the formula: Assign v(B) = T, v(A) = F and then the formula simplifies to ¬C 4. Assign the right value to pure literals: Assign v(C) = F. Done. 5. No need for the splitting rule The formula is satisfiable at least for the assignment (a model for it): v(A) = F, v(B) = T, v(C) = F SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS

  23. Are you ‘Sherlock Holmes’? SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS There was a robbery in which a lot of goods were stolen. The robber(s) left in a truck. It is known that : (1) Nobody else could have been involved other than A, B and C. (2) C never commits a crime without A's participation. (3) B does not know how to drive. Is A innocent or guilty? Proof: The 3 points above can be translated in PL as follows: (1) θ1 = A ∨ B ∨ C; (2) θ2 = C → A; (3) θ3 = B → (B ∧ A) ∨ (B ∧ C) Does {θ1 ,θ2 ,θ3}⊨ A ? Yes! We can prove it by showing that θ1 ∧θ2 ∧θ3 → A is a tautology.

  24. Knights and Knaves SYNTAX :: MODELING A PROBLEM :: SEMANTICS :: LOGICAL IMPLICATION :: REASONING :: SOME NICE PROBLEMS :: DPLL • A very special island is inhabited only by knights and knaves. Knights always tell the truth, and knaves always lie. You meet two inhabitants: Zoey and Mel. Zoey tells you that Mel is a knave. Mel says ‘Neither Zoey nor I are knaves’. Can you determine what are they? (who is a knight and who is a knave?) Proof: The two sentences above can be translated in PL as follows: (1) Z →M; (2) M → Z ∧ M. We can use truth tables to prove that there are two possible situations: - Both lie (they are both knaves) - Zoey tells the true (is a Knight) and Mel lies (is a knave)

More Related