abduction and induction
play

Abduction and Induction Deduction, Abduction and Induction - PowerPoint PPT Presentation

Abduction and Induction Deduction, Abduction and Induction Abduction Mathematical Induction Steffen H olldobler Abduction and Induction (5th January 2009) 1 An Introductory Example: Abduction K | = G . We use the following


  1. Abduction and Induction ◮ Deduction, Abduction and Induction ◮ Abduction ◮ Mathematical Induction Steffen H¨ olldobler Abduction and Induction (5th January 2009) 1

  2. An Introductory Example: Abduction ◮ K | = G . ◮ We use the following atoms: grassIsW et, wheelsAreW et, sprinklerIsRunning, raining . ◮ Let K = { g → w, s → w, r → g } . ⊲ Does K | = w hold? ◮ Idea: Find atom p such that K ∪ { p } | = w and K ∪ { p } is satisfiable. ⊲ p ≡ w ⊲ p ≡ g ⊲ p ≡ s or p ≡ r ◮ This process is called abduction. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 2

  3. Deduction, Abduction and Induction ◮ Peirce 1931: K facts ∪ K rules | = G result . ⊲ Deduction is an analytic process based on the application of general rules to particular facts, with the inference as a result. ⊲ Abduction is synthetic reasoning which infers a fact from the rules and the result. ⊲ Induction is synthetic reasoning which infers a rule from the facts and the result. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 3

  4. An Introductory Example: Induction ◮ K plus = { ( ∀ Y : number ) plus (0 , Y ) ≈ Y, ( ∀ X, Y : number ) plus ( s ( X ) , Y ) ≈ s ( plus ( X, Y )) } ⊲ Does K plus | = ( ∀ X, Y : number ) plus ( X, Y ) ≈ plus ( Y, X ) hold? ◮ D = N ∪ {♦} I 0 s/ 1 plus / 2 0 f/ 1 ⊕ / 2  1 if d = ♦ ⊲ f ( d ) = if d ∈ N d + 1 8 if d = e = ♦ 0 > > > ♦ if d = 0 and e = ♦ > > < if d ∈ N + and e = ♦ ⊲ d ⊕ e = d e if d = ♦ and e ∈ N > > > > d + e if d, e ∈ N > : ⊲ where + / 2 : N → N is the usual addition on N and N + = N \ { 0 } . ◮ Then, I | = K plus , but ( ♦ ⊕ 0) � = (0 ⊕ ♦ ) � Exercise. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 4

  5. The Example Continued ◮ K plus = { ( ∀ Y : number ) plus (0 , Y ) ≈ Y, ( ∀ X, Y : number ) plus ( s ( X ) , Y ) ≈ s ( plus ( X, Y )) } ⊲ Does K plus | = ( ∀ X, Y : number ) plus ( X, Y ) ≈ plus ( Y, X ) hold? ◮ Add Peano’s induction principle to K plus : ( P (0) ∧ ( ∀ M : number ) ( P ( M ) → P ( s ( M )))) → ( ∀ M : number ) P ( M ) . ◮ In order to prove the induction base ( X = 0 ) we need P ( Y ) ≡ plus ( Y, 0) ≈ Y . ◮ Let K I be an appropriate set of induction axioms, then K plus ∪ K I | = ( ∀ X, Y : number ) plus ( X, Y ) ≈ plus ( Y, X ) . ◮ How does K I look like? � Exercise. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 5

  6. Abduction ◮ Example Starting a car. ◮ Applications ⊲ fault diagnosis ⊲ medical diagnosis ⊲ high level vision ⊲ natural language understanding ⊲ reasoning about states, actions and causality ⊲ knowledge assimilation Steffen H¨ olldobler Abduction and Induction (5th January 2009) 6

  7. A First Characterization of Abduction ◮ Given K and G ; find explanation K ′ such that ⊲ K ∪ K ′ | = G and ⊲ K ∪ K ′ is satisfiable. The elements of K ′ are said to be abduced. ◮ Abducing atoms is no real restriction. ◮ Weakness of this first characterization: We want to abduce causes of effects, but no other effects. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 7

  8. Restrictions ◮ Abducible formulas: ⊲ set of pre-specified and domain-dependent formulas; ⊲ abduction is restricted to this set; ⊲ default in logic programming: set of undefined predicates. ◮ Typical criteria for choosing a set of abducible formulas: ⊲ an explanation should be basic, i.e., it cannot be explained by another explanation; ⊲ an explanation should be minimal, i.e., it cannot be subsumed by another explanation; ⊲ additional information; ⊲ domain-dependent preference criteria; ⊲ integrity constraints. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 8

  9. Abductive Framework ◮ Abductive framework �K , K A , K IC � , where ⊲ K is a set of formulas, ⊲ K A is a set of ground atoms called abducibles, ⊲ K IC is a set of integrity constraints. ◮ Observation G is explained by K ′ iff ⊲ K ′ ⊆ K A , ⊲ K ∪ K ′ | = G and ⊲ K ∪ K ′ satisfies K IC . ◮ K ∪ K ′ satisfies K IC iff ⊲ K ∪ K ′ ∪ K IC are satisfiable (satisfiability view) or ⊲ K ∪ K ′ | = K IC (theoremhood view). Steffen H¨ olldobler Abduction and Induction (5th January 2009) 9

  10. Knowledge Assimilation ◮ Task assimilate new knowledge into a given knowledge base. ◮ Example ⊲ K = { ( ∀ X, Y, Z ) ( sibling ( X, Y ) ← parent ( Z, X ) ∧ parent ( Z, Y )) , ( ∀ X, Y ) ( parent ( X, Y ) ← father ( X, Y )) , ( ∀ X, Y ) ( parent ( X, Y ) ← mother ( X, Y )) , father ( john , mary ) , } mother ( jane , mary ) ⊲ K IC = { ( ∀ X, Y, Z ) ( X ≈ Y ← father ( X, Z ) ∧ father ( Y, Z )) , ( ∀ X, Y, Z ) ( X ≈ Y ← mother ( X, Z ) ∧ mother ( Y, Z )) } , ⊲ K A = { A | A is a ground instance of father ( X, Y ) or mother ( X, Y ) } ⊲ ≈ / 2 : ‘built–in’ predicate such that ( ∀ X ) X ≈ X and s �≈ t for all distinct ground terms s and t . ⊲ Task assimilate sibling ( mary , bob ) . Steffen H¨ olldobler Abduction and Induction (5th January 2009) 10

  11. The Example Continued ◮ Four minimal explanations: ⊲ { father ( john , bob ) } ⊲ { mother ( jane , bob ) } . ⊲ { father ( jane , bob ) } ⊲ { mother ( john , bob ) } ◮ Exercise Revise the example such that the last two minimal explanations are eliminated. ◮ What happens in the revised example if we additionally observe that mother ( joan , bob ) ? ⊲ Only one minimal explanation: { father ( john , bob ) } ⊲ belief revision. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 11

  12. Theory Revision ◮ Default reasoning and jumping to a conclusion. ◮ Example ⊲ K = { ( ∀ X ) ( penguin ( X ) → bird ( X )) , ( ∀ X ) ( birds-fly ( X ) → ( bird ( X ) → fly ( X ))) , ( ∀ X ) ( penguin ( X ) → ¬ fly ( X )) , penguin ( tweedy ) , bird ( john ) } ⊲ K IC = ∅ ⊲ K A = { A | A is a ground instance of birds-fly ( X ) } ◮ Task 1 Explain fly ( john ) . ⊲ Minimal set { birds-fly ( john ) } . ◮ Task 2 Explain fly ( tweedy ) . ◮ What happens if we additionally observe penguin ( john ) ? Steffen H¨ olldobler Abduction and Induction (5th January 2009) 12

  13. Abduction and Model Generation ◮ Example ⊲ K = { wobbly-wheel ↔ broken-spokes ∨ flat-tyre , flat-tyre ↔ punctured-tube ∨ leaky-valve } ⊲ K IC = ∅ ⊲ K A = { broken-spokes , punctured-tube , leaky-valve } ◮ K = K ← ∪ K → where ⊲ K ← = { wobbly-wheel ← broken-spokes , wobbly-wheel ← flat-tyre , flat-tyre ← punctured-tube , flat-tyre ← leaky-valve } ⊲ K → = { wobbly-wheel → broken-spokes ∨ flat-tyre , flat-tyre → punctured-tube ∨ leaky-valve } Steffen H¨ olldobler Abduction and Induction (5th January 2009) 13

  14. The Wobbly–Wheel Example ◮ Observation wobbly-wheel ◮ What is a minimal and basic explanation? K ′ = { broken-spokes ∨ punctured-tube ∨ leaky-valve } . It is unique! ◮ How can this explanation be computed? ⊲ SLD–resolution, ⊲ Model generation. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 14

  15. Abduction and SLD–Resolution ◮ Consider the SLD-derivation tree for ← wobbly-wheel wrt K ← : ← wobbly-wheel � ❅ � ❅ � ❅ � ❅ � ❅ ← broken-spokes ← flat-tyre � ❅ � ❅ � ❅ � ❅ � ❅ ← punctured-tube ← leaky-valve ◮ Combine negated leaves disjunctively. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 15

  16. Abduction and Model Generation ◮ Remember K → = { wobbly-wheel → broken-spokes ∨ flat-tyre , flat-tyre → punctured-tube ∨ leaky-valve } . ◮ Add wobbly-wheel to K → . ◮ What are the minimal models of the extended knowledge base? { wobbly-wheel , flat-tyre , punctured-tube } , { wobbly-wheel , flat-tyre , leaky-valve } , { wobbly-wheel , broken-spokes } . ◮ Restrict these models to the abducible predicates. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 16

  17. Mathematical Induction ◮ Essential proof technique used to verify properties about recursively defined objects like natural numbers, lists, trees, logic formulas, etc. ◮ Central role in the fields of mathematics, algebra, logic, computer science, formal language theory, etc. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 17

  18. Problems ◮ Should induction be really used to prove a statement? ◮ Should the statement be generalized before an attempt is made to prove it by induction? ◮ Which variable is to be the induction variable? ◮ What induction principle is to be used? ◮ What is the property used within the induction principle? ◮ Should nested induction be taken into account? Steffen H¨ olldobler Abduction and Induction (5th January 2009) 18

  19. Data Structures ◮ Function symbols are split into constructors and defined function symbols: ⊲ Constructors: C ⊆ F , ⊲ Defined function symbols: D ⊆ F , ⊲ C ∩ D = ∅ , ⊲ C ∪ D = F , ⊲ T ( C ) : set of constructor ground terms. ◮ Data structures (or sorts) are sets of constructor ground terms. Steffen H¨ olldobler Abduction and Induction (5th January 2009) 19

Recommend


More recommend