description logic reasoning
play

Description Logic Reasoning Reasoning with Expressive Description - PowerPoint PPT Presentation

Description Logic Reasoning Reasoning with Expressive Description Logics p. 1/27 Basic Inference Problems Reasoning with Expressive Description Logics p. 2/27 Basic Inference Problems Subsumption check knowledge is correct C I


  1. Tableaux Algorithms — Details ☞ Work on tree T representing model I of concept C • Nodes represent elements of ∆ I ; labeled with subconcepts of C • Edges represent role-successorships between elements of ∆ I ☞ T initialised with single root node labeled { C } ☞ Tableau rules repeatedly applied to node labels • Extend labels or extend/modify T structure • Rules can be blocked , e.g, if predecessor has superset label • Nondeterministic rules − → search possible extensions ☞ T contains Clash if obvious contradiction in some node label • E.g., { A, ¬ A } ⊆ L ( x ) for some concept A and node x ☞ T fully expanded if no rules are applicable ☞ C satisfiable iff fully expanded clash free T found • Trivial correspondence between such a T and a model of C Reasoning with Expressive Description Logics – p. 4/27

  2. Tableaux Rules for ALC Reasoning with Expressive Description Logics – p. 5/27

  3. ✙ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✙ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✙ ✚ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✚ ✚ ✙ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✙ ✙ ✚ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✘ ✘ ✘ ✘ ✘ ✘ ✙ ✙ ✙ ✙ � ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✙ ✚ ✚ ✘ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✛ ✛ ✚ ✚ ✛ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✛ ✛ ✜ ✜ ✛ ✛ ✛ ✛ ✛ ✜ ✜ ✜ ✜ ✛ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✜ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✛ ✘ ✘ ✜ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✗ ✌ ✡ ✡ ✡ ☛ ☛ ☞ ☞ ✌ ✠ ✍ ✍ ✎ ✎ ✏ ✏ ✑ ✑ ✡ ✠ ✒ ☎ � ✁ ✁ ✂ ✂ ✄ ✄ ☎ ✆ ✟ ✆ ✝ ✝ ✞ ✞ ✟ ✟ ✟ ✒ ✓ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✓ ✖ ✔ ✔ ✕ ✕ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✗ ✗ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✘ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✘ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✘ ✘ ✘ ✘ ✘ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✗ ✜ Reasoning with Expressive Description Logics – p. 5/27 x { C 1 ⊓ C 2 , C 1 , C 2 , . . . } for C ∈ { C 1 , C 2 } x { C 1 ⊔ C 2 , C, . . . } {∃ R.C, . . . } {∀ R.C, . . . } { C, . . . } { C } R R x x y y Tableaux Rules for ALC → ⊓ → ⊔ → ∃ → ∀ x { C 1 ⊓ C 2 , . . . } x { C 1 ⊔ C 2 , . . . } x {∃ R.C, . . . } x {∀ R.C, . . . } { . . . } R y

  4. Tableaux Rule for Transitive Roles Reasoning with Expressive Description Logics – p. 6/27

  5. ✬ ✬ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✬ ✬ ✭ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✭ ✭ ✬ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✬ ✬ ✭ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✢ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✭ ✭ ✬ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✮ ✯ ✯ ✯ ✮ ✮ ✮ ✮ ✮ ✮ ✭ ✮ ✮ ✮ ✮ ✮ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✭ ✬ ✬ ✯ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✧ ✪ ✪ ✪ ✩ ✩ ★ ★ ✧ ✦ ✪ ✦ ✥ ✥ ✤ ✤ ✣ ✣ ✢ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✬ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✫ ✫ ✫ ✫ ✫ ✫ ✫ ✫ ✫ ✫ ✫ ✪ ✫ ✪ ✪ ✪ ✪ ✪ ✪ ✪ ✯ Tableaux Rule for Transitive Roles x {∀ R.C, . . . } → ∀ + {∀ R.C, . . . } x R R { . . . } {∀ R.C, . . . } y y Where R is a transitive role (i.e., ( R I ) + = R I ) Reasoning with Expressive Description Logics – p. 6/27

  6. ✺ ✺ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✺ ✺ ✻ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✻ ✻ ✺ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✺ ✺ ✻ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✰ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✻ ✻ ✺ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✼ ✽ ✽ ✽ ✼ ✼ ✼ ✼ ✼ ✼ ✻ ✼ ✼ ✼ ✼ ✼ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✻ ✺ ✺ ✽ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✵ ✸ ✸ ✸ ✷ ✷ ✶ ✶ ✵ ✴ ✸ ✴ ✳ ✳ ✲ ✲ ✱ ✱ ✰ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✺ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✹ ✹ ✹ ✹ ✹ ✹ ✹ ✹ ✹ ✹ ✹ ✸ ✹ ✸ ✸ ✸ ✸ ✸ ✸ ✸ ✽ Tableaux Rule for Transitive Roles x {∀ R.C, . . . } → ∀ + {∀ R.C, . . . } x R R { . . . } {∀ R.C, . . . } y y Where R is a transitive role (i.e., ( R I ) + = R I ) ☞ No longer naturally terminating (e.g., if C = ∃ R. ⊤ ) Reasoning with Expressive Description Logics – p. 6/27

  7. ❈ ❈ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❈ ❈ ❉ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❉ ❉ ❈ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❈ ❈ ❉ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ✾ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❉ ❉ ❈ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❊ ❋ ❋ ❋ ❊ ❊ ❊ ❊ ❊ ❊ ❉ ❊ ❊ ❊ ❊ ❊ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❉ ❈ ❈ ❋ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❃ ❆ ❆ ❆ ❅ ❅ ❄ ❄ ❃ ❂ ❆ ❂ ❁ ❁ ❀ ❀ ✿ ✿ ✾ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❈ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❇ ❇ ❇ ❇ ❇ ❇ ❇ ❇ ❇ ❇ ❇ ❆ ❇ ❆ ❆ ❆ ❆ ❆ ❆ ❆ ❋ Tableaux Rule for Transitive Roles x {∀ R.C, . . . } → ∀ + {∀ R.C, . . . } x R R { . . . } {∀ R.C, . . . } y y Where R is a transitive role (i.e., ( R I ) + = R I ) ☞ No longer naturally terminating (e.g., if C = ∃ R. ⊤ ) ☞ Need blocking • Simple blocking suffices for ALC plus transitive roles • I.e., do not expand node label if ancestor has superset label • More expressive logics (e.g., with inverse roles) need more sophisticated blocking strategies Reasoning with Expressive Description Logics – p. 6/27

  8. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role Reasoning with Expressive Description Logics – p. 7/27

  9. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } w Reasoning with Expressive Description Logics – p. 7/27

  10. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } w Reasoning with Expressive Description Logics – p. 7/27

  11. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w Reasoning with Expressive Description Logics – p. 7/27

  12. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w Reasoning with Expressive Description Logics – p. 7/27

  13. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C } x Reasoning with Expressive Description Logics – p. 7/27

  14. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C } x Reasoning with Expressive Description Logics – p. 7/27

  15. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ¬ C ⊔ ¬ D } x Reasoning with Expressive Description Logics – p. 7/27

  16. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ¬ C ⊔ ¬ D } x Reasoning with Expressive Description Logics – p. 7/27

  17. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ C } x Reasoning with Expressive Description Logics – p. 7/27

  18. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ C } clash x Reasoning with Expressive Description Logics – p. 7/27

  19. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ¬ C ⊔ ¬ D } x Reasoning with Expressive Description Logics – p. 7/27

  20. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } x Reasoning with Expressive Description Logics – p. 7/27

  21. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } x Reasoning with Expressive Description Logics – p. 7/27

  22. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C } x Reasoning with Expressive Description Logics – p. 7/27

  23. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C } x Reasoning with Expressive Description Logics – p. 7/27

  24. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x Reasoning with Expressive Description Logics – p. 7/27

  25. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x Reasoning with Expressive Description Logics – p. 7/27

  26. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x R z L ( z ) = { C } Reasoning with Expressive Description Logics – p. 7/27

  27. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x R z L ( z ) = { C } Reasoning with Expressive Description Logics – p. 7/27

  28. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x R z L ( z ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } Reasoning with Expressive Description Logics – p. 7/27

  29. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x R z L ( z ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } blocked Reasoning with Expressive Description Logics – p. 7/27

  30. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x R z L ( z ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } blocked Concept is satisfiable : T corresponds to model Reasoning with Expressive Description Logics – p. 7/27

  31. Tableaux Algorithm — Example Test satisfiability of ∃ S.C ⊓ ∀ S. ( ¬ C ⊔ ¬ D ) ⊓ ∃ R.C ⊓ ∀ R. ( ∃ R.C ) } where R is a transitive role L ( w ) = {∃ S.C, ∀ S. ( ¬ C ⊔ ¬ D ) , ∃ R.C, ∀ R. ( ∃ R.C ) } w S R L ( x ) = { C, ( ¬ C ⊔ ¬ D ) , ¬ D } y L ( y ) = { C, ∃ R.C, ∀ R. ( ∃ R.C ) } x R Concept is satisfiable : T corresponds to model Reasoning with Expressive Description Logics – p. 7/27

  32. More Advanced Techniques Reasoning with Expressive Description Logics – p. 8/27

  33. More Advanced Techniques Satisfiability w.r.t. a Terminology ☞ For each axiom C ⊑ D ∈ T , add ¬ C ⊔ D to every node label Reasoning with Expressive Description Logics – p. 8/27

  34. More Advanced Techniques Satisfiability w.r.t. a Terminology ☞ For each axiom C ⊑ D ∈ T , add ¬ C ⊔ D to every node label More expressive DLs Reasoning with Expressive Description Logics – p. 8/27

  35. More Advanced Techniques Satisfiability w.r.t. a Terminology ☞ For each axiom C ⊑ D ∈ T , add ¬ C ⊔ D to every node label More expressive DLs ☞ Basic technique can be extended to deal with • Role inclusion axioms (role hierarchy) • Number restrictions • Inverse roles • Concrete domains and datatypes • Aboxes • etc. Reasoning with Expressive Description Logics – p. 8/27

  36. More Advanced Techniques Satisfiability w.r.t. a Terminology ☞ For each axiom C ⊑ D ∈ T , add ¬ C ⊔ D to every node label More expressive DLs ☞ Basic technique can be extended to deal with • Role inclusion axioms (role hierarchy) • Number restrictions • Inverse roles • Concrete domains and datatypes • Aboxes • etc. ☞ Extend expansion rules and use more sophisticated blocking strategy Reasoning with Expressive Description Logics – p. 8/27

  37. More Advanced Techniques Satisfiability w.r.t. a Terminology ☞ For each axiom C ⊑ D ∈ T , add ¬ C ⊔ D to every node label More expressive DLs ☞ Basic technique can be extended to deal with • Role inclusion axioms (role hierarchy) • Number restrictions • Inverse roles • Concrete domains and datatypes • Aboxes • etc. ☞ Extend expansion rules and use more sophisticated blocking strategy ☞ Forest instead of Tree (for Aboxes) • Root nodes correspond to individuals in Abox Reasoning with Expressive Description Logics – p. 8/27

  38. Implementing DL Systems Reasoning with Expressive Description Logics – p. 9/27

  39. Naive Implementations Problems include: Reasoning with Expressive Description Logics – p. 10/27

  40. Naive Implementations Problems include: ☞ Space usage Reasoning with Expressive Description Logics – p. 10/27

  41. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures Reasoning with Expressive Description Logics – p. 10/27

  42. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures • Rarely a serious problem in practice Reasoning with Expressive Description Logics – p. 10/27

  43. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures • Rarely a serious problem in practice • But problems can arise with inverse roles and cyclical KBs Reasoning with Expressive Description Logics – p. 10/27

  44. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures • Rarely a serious problem in practice • But problems can arise with inverse roles and cyclical KBs ☞ Time usage Reasoning with Expressive Description Logics – p. 10/27

  45. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures • Rarely a serious problem in practice • But problems can arise with inverse roles and cyclical KBs ☞ Time usage • Search required due to non-deterministic expansion Reasoning with Expressive Description Logics – p. 10/27

  46. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures • Rarely a serious problem in practice • But problems can arise with inverse roles and cyclical KBs ☞ Time usage • Search required due to non-deterministic expansion • Serious problem in practice Reasoning with Expressive Description Logics – p. 10/27

  47. Naive Implementations Problems include: ☞ Space usage • Storage required for tableaux datastructures • Rarely a serious problem in practice • But problems can arise with inverse roles and cyclical KBs ☞ Time usage • Search required due to non-deterministic expansion • Serious problem in practice • Mitigated by: – Careful choice of algorithm – Highly optimised implementation Reasoning with Expressive Description Logics – p. 10/27

  48. Careful Choice of Algorithm Reasoning with Expressive Description Logics – p. 11/27

  49. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure Reasoning with Expressive Description Logics – p. 11/27

  50. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + Reasoning with Expressive Description Logics – p. 11/27

  51. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions Reasoning with Expressive Description Logics – p. 11/27

  52. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models Reasoning with Expressive Description Logics – p. 11/27

  53. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings Reasoning with Expressive Description Logics – p. 11/27

  54. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings • GCI axioms can be used to “encode” additional operators/axioms Reasoning with Expressive Description Logics – p. 11/27

  55. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings • GCI axioms can be used to “encode” additional operators/axioms • Powerful technique, particularly when used with FL closure Reasoning with Expressive Description Logics – p. 11/27

  56. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings • GCI axioms can be used to “encode” additional operators/axioms • Powerful technique, particularly when used with FL closure • Can encode cardinality constraints, inverse roles, range/domain, . . . Reasoning with Expressive Description Logics – p. 11/27

  57. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings • GCI axioms can be used to “encode” additional operators/axioms • Powerful technique, particularly when used with FL closure • Can encode cardinality constraints, inverse roles, range/domain, . . . – E.g., ( domain R.C ) ≡ ∃ R. ⊤ ⊑ C Reasoning with Expressive Description Logics – p. 11/27

  58. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings • GCI axioms can be used to “encode” additional operators/axioms • Powerful technique, particularly when used with FL closure • Can encode cardinality constraints, inverse roles, range/domain, . . . – E.g., ( domain R.C ) ≡ ∃ R. ⊤ ⊑ C • (FL) encodings introduce (large numbers of) axioms Reasoning with Expressive Description Logics – p. 11/27

  59. Careful Choice of Algorithm ☞ Transitive roles instead of transitive closure • Deterministic expansion of ∃ R.C , even when R ∈ R + • (Relatively) simple blocking conditions • Cycles always represent (part of) valid cyclical models ☞ Direct algorithm /implementation instead of encodings • GCI axioms can be used to “encode” additional operators/axioms • Powerful technique, particularly when used with FL closure • Can encode cardinality constraints, inverse roles, range/domain, . . . – E.g., ( domain R.C ) ≡ ∃ R. ⊤ ⊑ C • (FL) encodings introduce (large numbers of) axioms • BUT even simple domain encoding is disastrous with large numbers of roles Reasoning with Expressive Description Logics – p. 11/27

  60. Highly Optimised Implementation Reasoning with Expressive Description Logics – p. 12/27

  61. Highly Optimised Implementation ☞ Naive implementation − → effective non-termination Reasoning with Expressive Description Logics – p. 12/27

  62. Highly Optimised Implementation ☞ Naive implementation − → effective non-termination ☞ Modern systems include MANY optimisations Reasoning with Expressive Description Logics – p. 12/27

  63. Highly Optimised Implementation ☞ Naive implementation − → effective non-termination ☞ Modern systems include MANY optimisations ☞ Optimised classification (compute partial ordering) • Use enhanced traversal (exploit information from previous tests) • Use structural information to select classification order Reasoning with Expressive Description Logics – p. 12/27

  64. Highly Optimised Implementation ☞ Naive implementation − → effective non-termination ☞ Modern systems include MANY optimisations ☞ Optimised classification (compute partial ordering) • Use enhanced traversal (exploit information from previous tests) • Use structural information to select classification order ☞ Optimised subsumption testing (search for models) • Normalisation and simplification of concepts • Absorption (rewriting) of general axioms • Davis-Putnam style semantic branching search • Dependency directed backtracking • Caching of satisfiability results and (partial) models • Heuristic ordering of propositional and modal expansion • . . . Reasoning with Expressive Description Logics – p. 12/27

  65. Dependency Directed Backtracking Reasoning with Expressive Description Logics – p. 13/27

  66. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices Reasoning with Expressive Description Logics – p. 13/27

  67. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping Reasoning with Expressive Description Logics – p. 13/27

  68. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping • Tag concepts introduced at branch points (e.g., when expanding disjunctions) Reasoning with Expressive Description Logics – p. 13/27

  69. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping • Tag concepts introduced at branch points (e.g., when expanding disjunctions) • Expansion rules combine and propagate tags Reasoning with Expressive Description Logics – p. 13/27

  70. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping • Tag concepts introduced at branch points (e.g., when expanding disjunctions) • Expansion rules combine and propagate tags • On discovering a clash, identify most recently introduced concepts involved Reasoning with Expressive Description Logics – p. 13/27

  71. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping • Tag concepts introduced at branch points (e.g., when expanding disjunctions) • Expansion rules combine and propagate tags • On discovering a clash, identify most recently introduced concepts involved • Jump back to relevant branch points without exploring alternative branches Reasoning with Expressive Description Logics – p. 13/27

  72. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping • Tag concepts introduced at branch points (e.g., when expanding disjunctions) • Expansion rules combine and propagate tags • On discovering a clash, identify most recently introduced concepts involved • Jump back to relevant branch points without exploring alternative branches • Effect is to prune away part of the search space Reasoning with Expressive Description Logics – p. 13/27

  73. Dependency Directed Backtracking ☞ Allows rapid recovery from bad branching choices ☞ Most commonly used technique is backjumping • Tag concepts introduced at branch points (e.g., when expanding disjunctions) • Expansion rules combine and propagate tags • On discovering a clash, identify most recently introduced concepts involved • Jump back to relevant branch points without exploring alternative branches • Effect is to prune away part of the search space ☞ Highly effective — essential for usable system • E.g., G ALEN KB, 30s (with) − → months++ (without) Reasoning with Expressive Description Logics – p. 13/27

  74. Backjumping E.g., if {∃ R. ¬ A ⊓ ∀ R. ( A ⊓ B ) ⊓ ( C 1 ⊔ D 1 ) ⊓ . . . ⊓ ( C n ⊔ D n ) } ⊆ L ( x ) Reasoning with Expressive Description Logics – p. 14/27

  75. Backjumping E.g., if {∃ R. ¬ A ⊓ ∀ R. ( A ⊓ B ) ⊓ ( C 1 ⊔ D 1 ) ⊓ . . . ⊓ ( C n ⊔ D n ) } ⊆ L ( x ) x Reasoning with Expressive Description Logics – p. 14/27

  76. Backjumping E.g., if {∃ R. ¬ A ⊓ ∀ R. ( A ⊓ B ) ⊓ ( C 1 ⊔ D 1 ) ⊓ . . . ⊓ ( C n ⊔ D n ) } ⊆ L ( x ) x ⊔ L ( x ) ∪ { C 1 } x Reasoning with Expressive Description Logics – p. 14/27

  77. Backjumping E.g., if {∃ R. ¬ A ⊓ ∀ R. ( A ⊓ B ) ⊓ ( C 1 ⊔ D 1 ) ⊓ . . . ⊓ ( C n ⊔ D n ) } ⊆ L ( x ) x ⊔ L ( x ) ∪ { C 1 } x ⊔ L ( x ) ∪ { C n - 1 } x Reasoning with Expressive Description Logics – p. 14/27

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend