Logical Aspects of Artificial Intelligence Tableaux Calculi and Complexity St´ ephane Demri demri@lsv.fr December 16th, 2019
Plan of the lecture ◮ Recapitulation of the previous lecture. ◮ Decision procedures using model-theoretical properties. ◮ Tableaux proof system for ALC . ◮ Complexity of decision problems for ALC and variants. ◮ Exercises session. 2
Recapitulation of the previous lecture 3
ALC in a nutshell C ::= ⊤ | ⊥ | A | ¬ C | C ⊓ C | C ⊔ C | ∃ r . C | ∀ r . C ◮ Interpretation I = (∆ I , · I ) . ◮ TBox T = { C ⊑ D , . . . } . ◮ ABox A = { a : C , ( b , b ′ ) : r , . . . } . ◮ Knowledge base K = ( T , A ) . (a.k.a. ontology) ◮ Decision problems include concept satisfiability, knowledge base consistency, and other problems for classification. 4
⊤ I def ∆ I = def ⊥ I = ∅ ∆ I \ C I def ( ¬ C ) I = def ( C 1 ⊔ C 2 ) I C I 1 ∪ C I = 1 def ( C 1 ⊓ C 2 ) I C I 1 ∩ C I = 1 { a ∈ ∆ I | r I ( a ) ∩ C I � = ∅} def ( ∃ r . C ) I = { a ∈ ∆ I | r I ( a ) ⊆ C I } def ( ∀ r . C ) I = 5
A few properties about ALC ◮ Concept satisfiability problem is PS PACE -complete. ◮ Knowledge base consistency problem is E XP T IME -complete. ◮ ALC has many well-known fragments and extensions, some of them to deal with ◮ inverse roles, ◮ number restrictions, ◮ properties on the role interpretations, ◮ inclusions between the composition of roles, ◮ etc.. 6
DLs and ontologies ◮ W3C’s OWL 2 is based on the queen description logic SROIQ . ◮ OWL reasoners: implement decision procedures for consistency and ontology classification. ◮ Open-source ontology editor Prot´ eg´ e. ◮ Interaction with DL reasoners (FaCT++, Pellet, Racer) via the OWL API. ◮ Show results about ontology classification. 7
Tree interpretations ◮ I is a tree interpretation for C with respect to T iff the conditions below hold: ◮ T I = (∆ I , � r r I ) is a tree, ◮ the root of T I belongs to C I , ◮ I | = T . ◮ ALC has the tree interpretation property and the finite interpretation property. ◮ Path in I : finite sequence ( a 1 , . . . , a n ) ∈ (∆ I ) + such that for all i ∈ [ 1 , n − 1 ] , we have ( a i , a i + 1 ) ∈ � r r I . ◮ a -path : path such that a 1 = a . 8
Unravelling an interpretation with a single role ◮ Unravelling of I at a ∈ ∆ I : U = (∆ U , · U ) with ◮ ∆ U is the set of a -paths in I . = { ( a 1 , . . . , a n ) ∈ ∆ U | a n ∈ A I } , ◮ For all A , A U def ◮ For all role names r , we have r U def = { (( a 1 , . . . , a n ) , ( a 1 , . . . , a n , a n + 1 )) | ( a n , a n + 1 ) ∈ r I } 0 0 1 2 01 02 011 012 021 . . 0111 0112 0121 . . . . . . . . . . . . . . . . . . . ◮ C is satisfiable with respect to a TBox T implies C has a tree interpretation with respect to T . 9
Small interpretation property 10
Subconcepts ◮ Set of subconcepts sub ( C ) and size size ( C ) : Concept C sub ( C ) size ( C ) A { A } 1 ⊤ / ⊥ {⊤} / {⊥} 1 ¬ C 1 sub ( C 1 ) ∪ {¬ C 1 } 1 + size ( C 1 ) C 1 ⊓ C 2 sub ( C 1 ) ∪ sub ( C 2 ) ∪ { C 1 ⊓ C 2 } 1 + size ( C 1 ) + size ( C 2 ) C 1 ⊔ C 2 sub ( C 1 ) ∪ sub ( C 2 ) ∪ { C 1 ⊔ C 2 } 1 + size ( C 1 ) + size ( C 2 ) ∃ r . C 1 sub ( C 1 ) ∪ {∃ r . C 1 } 1 + size ( C 1 ) ∀ r . C 1 sub ( C 1 ) ∪ {∀ r . C 1 } 1 + size ( C 1 ) � � sub ( T ) = sub ( C ) ∪ sub ( D ) sub ( A ) = sub ( C ) C ⊑ D ∈T a : C ∈A ◮ size ( T ) , size ( A ) : sum of the sizes of its elements. ◮ card ( sub ( T ) ∪ sub ( A )) ≤ size ( T ) + size ( A ) . 11
Type ◮ A set of concepts X is closed under subconcepts iff sub ( X ) = X . ◮ sub ( C ) , sub ( T ) , sub ( A ) are closed under subconcepts. ◮ X -type of a in I : def = { C ∈ X | a ∈ C I } type X ( a ) ◮ If X is finite, then card ( { type X ( a ) | a ∈ ∆ I } ) ≤ 2 card ( X ) ◮ Small interpretation property is established by showing that no need to keep too many individuals with the same X -type with X = sub ( C ) ∪ sub ( T ) ∪ sub ( A ) . 12
Filtration ◮ Set X closed under subconcepts, interpretation I . def ◮ a ≈ X b ⇔ type X ( a ) = type X ( b ) , and equivalence class [ a ] X . ◮ X -filtration J = (∆ J , · J ) : ◮ ∆ J def = { [ a ] X | a ∈ ∆ I } . = { [ a ] X | there is a ′ ∈ [ a ] X such that a ′ ∈ A I } . ◮ A J def ( A ∈ X ) = { ([ a ] X , [ b ] X ) | there is a ′ ∈ [ a ] X , b ′ ∈ [ b ] X ◮ r J def such that ( a ′ , b ′ ) ∈ r I } . ◮ card (∆ J ) ≤ 2 card ( X ) . ◮ For all C ∈ X and a ∈ ∆ I , we have a ∈ C I iff [ a ] X ∈ C J . 13
Induction step for ∃ r . C ∈ X ◮ First, suppose that a ∈ ∃ r . C I . ◮ By definition of · I , there is b such that ( a , b ) ∈ r I and b ∈ C I . ◮ By definition of J , ([ a ] X , [ b ] X ) ∈ r J . ◮ By X closed under subconcepts and (IH), [ b ] X ∈ C J . ◮ By definition of · J , [ a ] X ∈ ( ∃ r . C ) J . ◮ Suppose that [ a ] X ∈ ( ∃ r . C ) J . ◮ By definition of · J , there is [ b ] X such that ([ a ] X , [ b ] X ) ∈ r J and [ b ] X ∈ C J . ◮ By definition of r J , there is ( a ′ , b ′ ) ∈ r I such that a ′ ∈ [ a ] X and b ′ ∈ [ b ] X . ◮ By X closed under subconcepts and (IH), b ∈ C I and as b ′ ∈ [ b ] X , b ′ ∈ C I too. ◮ By definition of · I , a ′ ∈ ( ∃ r . C ) I . ◮ As a ′ ∈ [ a ] X , a ∈ ( ∃ r . C ) I . 14
Small interpretation property ◮ C , K = ( T , A ) , X closed under subconcepts with ( sub ( C ) ∪ sub ( T ) ∪ sub ( A )) ⊆ X . ◮ If C is satisfiable w.r.t. K , then there is an interpretation J = K , C J � = ∅ and card (∆ J ) ≤ 2 card ( X ) . such that J | ◮ J is an X -filtration based on some interpretation I such def that for all a : C ∈ A , we have a J = [ a I ] X . ◮ The equivalence “ a ∈ C I iff [ a ] X ∈ C J ” leads to the satisfaction of K in J . 15
Generalities about decision procedures ◮ A decision problem P is a subset of Σ ∗ . ( Σ is a finite alphabet) ◮ Alternatively, given w ∈ Σ ∗ , is w in P ? ◮ An algorithm for P is sound if whenever it answers “ w ∈ P ”, then w ∈ P . ◮ An algorithm for P is complete if whenever w ∈ P , it answers “ w ∈ P ”. ◮ An algorithm for P is terminating if it stops after finitely many steps for all w ∈ Σ ∗ . ◮ Decision procedure : sound, complete and terminating. 16
A brute force decision procedure ◮ Input: C , K = ( T , A ) . ◮ Guess an interpretation I such that card (∆ I ) ≤ 2 card ( X ) with X = sub ( C ) ∪ sub ( T ) ∪ sub ( A ) . ◮ Compute the set C I using a labelling algorithm based on the definition of · I for complex concepts. ◮ Check the satisfaction of I | = K using again a labelling algorithm. ◮ Checking C I � = ∅ and I | = K can be done in NE XP T IME . 17
A PS PACE algorithm for ALC satisfiability 18
Closure def def ◮ ∼ C = D if C = ¬ D , otherwise ∼ C = ¬ C . ◮ Closure cl ( C ) of a concept C : least set closed under subconcepts containing sub ( C ) and closed under ∼ . ◮ card ( cl ( C )) ≤ 2 × card ( sub ( C )) . ⇔ X = � def ◮ A set X is closed C ∈ X cl ( C ) . def ◮ A set Y is patently inconsistent ⇔ Y contains ⊥ , ¬⊤ , or a pair of concepts of the form either C and ¬ C or C and ∼ C . 19
Maximally consistent sets ◮ Given a closed set of concepts X , the set Y ⊆ X is def maximally consistent ⇔ ◮ Y is not patently inconsistent. ◮ For all C ∈ X , either C ∈ Y or ∼ C ∈ Y . ◮ For all ¬¬ C ∈ X , C ∈ Y iff ¬¬ C ∈ Y . ◮ For all C 1 ⊓ C 2 ∈ X , C 1 ⊓ C 2 ∈ Y iff { C 1 , C 2 } ⊆ Y . ◮ For all C 1 ⊔ C 2 ∈ X , C 1 ⊔ C 2 ∈ Y iff { C 1 , C 2 } ∩ Y � = ∅ . ◮ Consequently, for all ¬ ( C 1 ⊓ C 2 ) ∈ Y , we have ∼ C 1 ∈ Y or ∼ C 2 ∈ Y . ◮ { C | a ∈ C I , C ∈ X } is maximally consistent. 20
Extended closure ◮ ecl ( n , C ) : subconcepts occurring in ∃ / ∀ -depth at least n . ◮ The ecl ( n , C ) ’s are the least sets of concepts satisfying the conditions below: ◮ ecl ( n , C ) is closed. def ◮ ecl ( 0 , C ) = cl ( C ) . ◮ If ∃ r . D or ∀ r . D occurs in some concept of ecl ( n , C ) , then D ∈ ecl ( n + 1 , C ) . def ◮ Y ⊆ cl ( C ) is n -maximally consistent ⇔ Y is maximally consistent w.r.t. ecl ( n , C ) . ◮ ecl ( size ( C ) , C ) = ∅ . 21
Example ◮ C = ∃ r . ⊤ ⊔ ( ∀ r . ∃ s . A ) . ecl ( 0 , C ) = { C , ¬ C , ∃ r . ⊤ , ¬∃ r . ⊤ , ∀ r . ∃ s . A , ¬∀ r . ∃ s . A , ⊤ , ¬⊤ , ∃ s . A , ¬∃ s . A , A , ¬ A } ◮ ecl ( 1 , C ) = {⊤ , ¬⊤ , ∃ s . A , ¬∃ s . A , A , ¬ A } . ◮ ecl ( 2 , C ) = { A , ¬ A } . ◮ ecl ( 3 , C ) = ∅ . 22
Nondeterministic algorithm for concept satisfiability 1: procedure SAT ALC ( Y , d ) if Y is not d -maximally consistent then abort 2: end if 3: if Y contains only ∃ / ∀ -free concepts then return true 4: end if 5: for ∃ r . D ∈ Y do 6: Guess Z ⊆ ecl ( d + 1 , C ) such that D ∈ Z and 7: {∼ D ′ : ¬∃ r . D ′ ∈ Y } ∪ { D ′ : ∀ r . D ′ ∈ Y } ⊆ Z if not SAT ALC ( Z , d + 1 ) then abort 8: end if 9: end for 10: for ¬∀ r . D ∈ Y do 11: Guess Z ⊆ ecl ( d + 1 , C ) such that ∼ D ∈ Z and 12: {∼ D ′ : ¬∃ r . D ′ ∈ Y } ∪ { D ′ : ∀ r . D ′ ∈ Y } ⊆ Z if not SAT ALC ( Z , d + 1 ) then abort 13: end if 14: end for 15: 16: end procedure 23
Recommend
More recommend