Logical Aspects of Artificial Intelligence Introduction to - - PowerPoint PPT Presentation
Logical Aspects of Artificial Intelligence Introduction to - - PowerPoint PPT Presentation
Logical Aspects of Artificial Intelligence Introduction to Description Logics St ephane Demri demri@lsv.fr December 9th, 2019 What is in this part of the course? Introduction to Description Logics and Temporal Logics for Multi-Agent
What is in this part of the course?
Introduction to Description Logics and Temporal Logics for Multi-Agent Aystems
◮ Today: Introduction to description logics. ◮ 16/12/2019: Tableaux calculi and complexity. ◮ 06/01/2020: Introduction to temporal logics for multi-agent
systems.
◮ 13/01/2020: 14h00–16h00 Exam on this part of the course
(slides allowed). but also first-order logic, modal logics, knowledge representation, etc... 2
What can you expect to learn?
◮ Basics of description logic including ALC as well as ATL
and variants.
◮ Tableaux for ALC, model-checking techniques for ATL-like
logics.
◮ Complexity, decidability, expressive power results for logics
dedicated to knowledge representation. 3
Background
- 1. Necessary background
◮ Basics of first-order logic. ◮ Basics of complexity theory.
- 2. Optional background
◮ Basics of modal logics, temporal logics ◮ Sequent-style proof systems. ◮ Basics of model-checking.
4
Course material
◮ Slides and exercises available on
https://wikimpri.dptinfo.ens-cachan.fr/doku. php?id=cours:c-1-39 http://www.lsv.fr/˜demri/notes-de-cours.html
◮ Slides available after each lecture. ◮ Do not hesitate to contact me (demri@lsv.fr).
5
Material mainly based on the following documents
◮ F
. Baader, I. Horrocks, C. Lutz and U. Sattler. An introduction to Description Logic. Cambridge University Press, 2017.
◮ Ivan Varzinczak’s slides (ESSLLI’18) ◮ Ulrike Sattler & Thomas Schneider’s slides (ESSLLI’15). ◮ S. Demri, V. Goranko, M. Lange.
Temporal Logics in Computer Science. Cambridge University Press, 2016. 6
Other (online) ressources
◮ Description Logic Complexity Navigator by Evgeny Zolin.
http://www.cs.man.ac.uk/˜ezolin/dl/
◮ Proceedings of the Description Logic Workshops
http://dl.kr.org/workshops/
◮ See also the proceedings of the international conferences:
◮ Int. Joint Conference on Artificial Intelligence.
(IJCAI)
◮ European Conference on Artificial Intelligence.
(ECAI)
◮ Int. Conference on Principles of Knowledge Representation
and Reasoning. (KR)
7
Plan of the lecture
◮ Knowledge representation. ◮ Basic description logic ALC. ◮ Several extensions of ALC. ◮ Relationships with first-order logic and modal logics. ◮ Exercises session.
8
Knowledge representation
9
DLs: where they come from
◮ First-order logic is not always the most natural language.
∀x ∃ y ∀z ((P(x, y) ∧ Q(y, z) ⇒ (¬Q(a, y) ∨ P(x, z))))
∀ x (Teacher(x) ⇔ Person(x)∧∃ y (Teaches(x, y)∧Course(y)))
◮ How to design user-friendly languages for knowledge
representation ?
◮ Concept definition from Description Logics.
Teacher ≡ Person ⊓ ∃Teaches.Course 10
Reasoning about . . .
◮ Knowledge
Epistemic Logics
◮ Rules and obligations
Deontic Logics
◮ Programs
Hoare Logics
◮ Time
Temporal Logics but also many-valued logics, non-monotonic logics, team logics, separation logics, etc. 11
Ontologies
◮ Formal specification of some domain with concepts,
- bjects, relationships between concepts, objects, etc.
◮ Backbone of ontologies includes:
◮ taxonomy (classification of objects), ◮ axioms (to constrain the models of the defined terms).
◮ Classification of medical terms: diseases, body parts,
drugs, etc.
◮ Well-known ontologies:
◮ Medical ontology SNOMED-CT formalised with description
logic EL + +.
◮ NCI Thesaurus (National Cancer Institute, USA). ◮ Gene ontology (world largest source of information on the
functions of genes).
◮ Free ontology editor Prot´
eg´ e http://protege.stanford.edu/ 12
The classical student ontology
◮ Natural language specification:
◮ Employed students are students and employees. ◮ Students are not taxpayers. ◮ Employed students are taxpayers. ◮ Employed students who are parents are not taxpayers. ◮ To work for is to be employed by. ◮ John is an employed student, John works for IBM.
◮ Classes/relations/individuals.
13
Main ingredients in formal ontologies
◮ Model of the world with classes within a domain,
relationships between classes and instantiations of classes.
◮ Formal: abstract model of some domain with
(mathematical) semantics and reasoning tasks.
◮ Classes or concepts: classes of objects with the domain of
- interest. (Employed student, Parent, Course)
◮ Relations or roles: relationships between concepts.
(being employed by, sibling-of)
◮ Instances of classes and relations.
◮ John is an employed student. ◮ Mary works for IBM.
14
Early KR formalisms
◮ Graphical formalisms easier to grasp and supposedly close
to how knowledge is represented by human beings.
◮ Large variety of semantical networks. ◮ Often, lack of formal semantics (see tentatives with the
knowledge representation system KL-ONE). 15
Why Description Logics?
◮ Formal languages for concepts, relations and instances. ◮ DLs have all one needs to formalise ontologies. ◮ Computational properties.
◮ Acceptable trade-off between expressivity and complexity. ◮ Decidability and often tractability. ◮ Implementation in tools of the main reasoning tasks.
◮ A remarkable suite of languages and tools. See e.g.
◮ OWL: Web Ontology Language. ◮ Prot´
eg´ e: ontology editor.
◮ FaCT++: DL reasoner supporting OWL DL.
16
Description Logics and Knowledge representation
◮ Description is a subfield of Knowledge Representation,
itself a subfield of Artificial Intelligence.
◮ Description Logic(s):
◮ a research field, ◮ a family of knowledge representation languages, ◮ a member of the family.
◮ Well-defined syntax with formal semantics, decision
problems, algorithms, etc. 17
Basic description logic ALC
18
DLs: the core
◮ Concept language.
Person ⊓ ∃Teaches.Course
◮ Syntactic ingredients of the concept language:
◮ Concept names for sets of elements, e.g. Person. ◮ Role names interpreted by binary relations between
- bjects, e.g. EmployedBy.
◮ Concept constructors to build complex concepts, e.g. ¬,
⊓, ⊔, ∃.
◮ Basic terminology stored in a TBox. ◮ Facts about individuals stored in an ABox.
19
Basic elements of the language
◮ Concept names.
NC
def
= {A1, A2, . . .} Examples: Parent, Sister, Student
◮ Role names.
NR
def
= {r1, r2, . . .} Examples: EmployedBy, MotherOf
◮ Individual names.
NI
def
= {a1, a2, . . .} Examples: Mary, Alice, John 20
Boolean constructors & role restrictions
◮ Boolean constructors.
◮ Concept negation ¬
(class complement)
◮ Concept conjunction ⊓
(class intersection)
◮ Concept disjunction ⊔
(class union)
◮ Role restrictions.
◮ Existential restriction ∃
(at least one related individual)
◮ Value restriction ∀
(all related individuals)
◮ Many more constructors exist, see forthcoming ALC
extensions.
◮ For modal logicians,
¬, ⊓, ⊔, ∃, ∀ ∼ ¬, ∧, ∨, ✸, ✷ 21
Complex concepts in ALC
◮ ALC: Attributive Concept Language with Complements. ◮ Complex concepts.
C ::= ⊤ | ⊥ | A | ¬C | C ⊓ C | C ⊔ C | ∃r.C | ∀r.C, where A ∈ NC and r ∈ NR.
◮ Examples of complex concepts:
◮ Student ⊓ ¬∃Pays.Tax ◮ ∃MotherOf.(∃MotherOf.A)
◮ Syntax errors in
Student ⊔ ∀¬Tax ∀∃MotherOf.Mary
◮ C ⇒ D
def
= ¬C ⊔ D. 22
Interpretation
◮ Concept/role/individual ∼ unary predicate/binary
predicate/constant.
◮ Interpretation I
def
= (∆I, ·I)
◮ ∆I: non-empty set (the domain). ◮ ·I: interpretation function such that
AI ⊆ ∆I r I ⊆ ∆I × ∆I aI ∈ ∆I
◮ A priori, ∆I is arbitrary and I can be viewed as a
first-order model for unary and binary predicate symbols and constants. 23
Semantics for complex concepts
⊤I
def
= ∆I ⊥I
def
= ∅ (¬C)I
def
= ∆I \ CI (C1 ⊔ C2)I
def
= CI
1 ∪ CI 2
(C1 ⊓ C2)I
def
= CI
1 ∩ CI 2
(∃r.C)I
def
= {a ∈ ∆I | r I(a) ∩ CI = ∅} (∀r.C)I
def
= {a ∈ ∆I | r I(a) ⊆ CI} (R(a)
def
= {b | (a, b) ∈ R})
◮ In modal logic lingua, a ∈ CI corresponds to I, a |
= C. 24
Graphical representation
a Person Teacher C1 Course C2 Course b Course Person Teaches Teaches Teaches
◮ ∆I = {a, b, C1, C2}. ◮ TeachesI = {(a, C1), (a, C2), (b, b)}. ◮ PersonI = {a, b}, CourseI = {C1, C2, b}. ◮ a ∈ (∀Teaches.Course)I.
25
Concept satisfiability problem
◮ Concept satisfiability problem:
Input: A (complex) concept C in ALC. Question: Is there an interpretation I = (∆I, ·I) such that CI = ∅?
◮ This corresponds to the standard formulation for the
satisfiability problem (in modal logics, temporal logics, etc.).
◮ The concept satisfiability problem for ALC is
PSPACE-complete.
◮ ALC has the finite interpretation property: every satisfiable
concept has an interpretation with a finite domain. 26
Statements
◮ Concept inclusion.
Teachers are persons. Employed students are employees.
◮ Concept and role membership.
Mary is a student. Alice is a teacher. Laura teaches the course “Automata Theory”.
◮ Statements are not concepts and express properties of
concepts, roles and individuals. 27
General concept inclusion (GCI)
◮ Expressions of the form
C ⊑ D
are called general concept inclusion.
◮ Intuitive meaning:
◮ D subsumes C. ◮ C is more specific than D.
◮ Example: Employee ⊑ ∃WorksFor.⊤. ◮ Satisfaction relation: I |
= C ⊑ D
def
⇔ CI ⊆ DI.
◮ C ⊑ D understood as a global statement about I.
28
Concept equivalence
◮ C ⊑ D and D ⊑ C abbreviated by
C ≡ D
called concept equivalence.
◮ Satisfaction relation: I |
= C ≡ D
def
⇔ CI = DI.
◮ Concept definition (A ∈ NC is a concept name)
A ≡ C
◮ ⊤ ≡ (¬Student ⊔ Student).
29
Subsumption problem
◮ Subsumption problem:
Input: A GCI C ⊑ D with C, D ∈ ALC. Question: Is it the case that for all interpretations I, we have I | = C ⊑ D?
◮ C ⊑ D is “not valid” iff C ⊓ ¬D is satisfiable. ◮ As coPSPACE =PSPACE, the subsumption problem for
ALC is PSPACE-complete too. 30
Assertions
◮ Concept assertion: stating that an individual is an
instance of a concept.
a : C
◮ Satisfaction relation: I |
= a : C
def
⇔ aI ∈ CI.
◮ Role assertion: stating that two individuals are in a
relation.
(a, b) : r
◮ Satisfaction relation: I |
= (a, b) : r
def
⇔ (aI, bI) ∈ r I.
◮ Examples:
◮ Alice : Student ⊓ ¬∃Pays.Tax. ◮ (Laura, CNRS) : WorksFor.
31
The validity problem
◮ Validity problem:
Input: A statement α in ALC. Question: Is the case that for all interpretations I, we have I | = α?
◮ Validity of α is written |
= α.
◮ Validity of ⊤ ⊑ C corresponds to the usual notion of validity
for C, i.e. for all interpretations I = (∆I, ·I), we have CI = ∆I.
◮ Examples of valid statements:
◮ |
= ∀r.C ⊓ D ⊑ ∀r.C.
◮ |
= a : C ⊔ ¬C.
◮ |
= ⊤ ⊑ (¬(C ⊓ D) ⊔ (C ⊔ D)).
◮ The validity problem for ALC is PSPACE-complete.
32
What is a knowledge base (a.k.a. ontology) ?
◮ Terminological Box (TBox) T : finite collection of GCIs.
◮ I.e., a finite set of subsumption statements. ◮ This provides definitions of concepts (a terminology).
◮ Assertional Box (ABox) A: finite collection of assertions.
◮ I.e., a finite set of concept and role assertions. ◮ This provides a partial view on the interpretations and can
be understood as a finite database.
◮ Knowledge base K is a pair (T , A). ◮ Knowledge bases are also called ontologies.
33
A knowledge base K⋆
◮ TBox T :
Course ⊑ ¬Person Teacher ⊑ Person ⊓ ∃Teaches.Course ∃Teaches.⊤ ⊑ Person Student ⊑ Person ⊓ ∃Attends.Course ∃Attends.⊤ ⊑ Person
◮ ABox A:
Mary : Person CS600 : Course Alice : Person ⊓ Teacher (Alice, CS600) : Teaches (Mary, CS600) : Attends 34
Consequences from knowledge bases
◮ Interpretation I = (∆I, ·I), knowledge base K = (T , A).
◮ I |
= A
def
⇔ for all α ∈ A, we have I | = α.
◮ I |
= T
def
⇔ for all α ∈ T , we have I | = α.
◮ I |
= K
def
⇔ I | = A and I | = T .
◮ K |
= α
def
⇔ for all interpretations I such that I | = K, we have I | = α.
◮ K⋆ |
= CS600 : ¬Person and K⋆ | = Alice : Teacher. 35
Decision problems relatively to a knowlegde base
◮ K is consistent
def
⇔ there is some I such that I | = K.
◮ C is satisfiable with respect to K
def
⇔ there is I such that I | = K and CI = ∅.
◮ C is subsumed by D with respect to K
def
⇔ K | = C ⊑ D.
◮ C and D are equivalent with respect to K
def
⇔ T | = C ≡ D.
◮ a is an instance of C with respect to K
def
⇔ K | = a : C.
◮ K |
= C ⊑ D also written C ⊑K D. K | = C ≡ D also written C ≡K D. 36
Relationships between reasoning problems
◮ C and D are equivalent w.r.t. K iff C is subsumed by D
w.r.t. K and D is subsumed by C w.r.t. K.
◮ C ⊑K D iff C ⊓ ¬D is not satisfiable w.r.t. K. ◮ C is satisfiable w.r.t. K iff C ⊑K⊥. ◮ C is satisfiable w.r.t. K iff (T , A ∪ {b : C}) is consistent.
(b is fresh)
◮ K |
= a : C iff (T , A ∪ {a : ¬C}) is not consistent. 37
C is satisfiable w.r.t. K iff (T , A ∪ {b : C}) is consistent
◮ Suppose that C is satisfiable w.r.t. K.
◮ There is I such that I |
= K and CI = ∅, say a ∈ CI.
◮ Let I′ be the variant of I such that bI′ def
= a.
◮ As b does not appear in K and C, we have I′ |
= K.
◮ Furthermore, I′ |
= b : C as CI = CI′.
◮ Consequently, I′ |
= (T , A ∪ {b : C}).
◮ Now, suppose that (T , A ∪ {b : C}) is consistent.
◮ There is I such that I |
= T , I | = A and I | = b : C.
◮ Consequently, bI ∈ CI. ◮ So, there is some I such that I |
= K and CI is non-empty.
38
Classification
◮ Deduce implicit knowledge from the explicitly represented
knowledge.
◮ For all A, B in K, check whether A ⊑K B. ◮ For all A in K, check whether A is satisfiable w.r.t. K.
If not for some B, a modelling error is probable.
◮ For all a and C in K, check whether K |
= a : C.
◮ Classifying a knowledge base K.
- 1. Check whether K is consistent, if yes, go 2.
- 2. For each pair A, B of concept names (plus ⊤, ⊥), check
whether K | = A ⊑ B.
- 3. For individual name a and concept C in K, check whether
K | = a : C.
leading to K’s inferred class hierarchy. 39
Complexity results for ALC
◮ Concept satisfiability and subsumption problems are
PSPACE-complete. (no knowledge base involved)
◮ Knowlegde base consistency problem is
EXPTIME-complete. NP ⊆ PSPACE ⊆ EXPTIME ⊂ 2EXPTIME ⊂ N2EXPTIME
◮ Recall that C ⊑K D iff (T , A ∪ {b : C ⊓ ¬D}) is not
consistent. 40
Several extensions of ALC
41
Extensions: a feature of DLs
◮ Concepts/assertions in ALC have a limited expressive
power.
◮ How to express simple arithmetical constraints such as
“Alice teaches at least three courses”?
◮ How to enforce constraints between roles?
For instance, r I = (sI)−1 or r I ⊆ sI.
◮ The expressive power of ALC concepts can be
characterised precisely, thanks to the notion of bisimulation (not presented today).
Trade-off between the expressive power and the
computational properties of the extensions.
◮ In the other direction: study of ALC fragments to reduce
the complexity while preserving the expression of interesting properties, see e.g. EL or FL0. 42
Inverse roles
Course ⊑ ¬Person Teacher ⊑ Person ⊓ ∃Teaches.Course ∃Teaches.⊤ ⊑ Person Student ⊑ Person ⊓ ∃Attends.Course ∃Attends.⊤ ⊑ Person Professor ⊑ Teacher Course ⊑ ∀TaughtBy.¬Professor
◮ Extending NR with inverse roles:
NR ∪ {r − | r ∈ NR}
◮ Given I
def
= (∆I, ·I), (r −)I def = (r I)−1 where R−1 def = {(b, a) | (a, b) ∈ R} 43
Elimination of the role name TaughtBy
◮ Back to the previous example.
Professor ⊑ Teacher Course ⊑ ∀Teaches−.¬Professor
◮ Given a logic L, LI is defined as L except that inverse
roles are added.
◮ Concept satisfiability for ALCI remains PSPACE-complete
and knowledge consistency remains EXPTIME-complete. 44
Number restrictions
◮ How to express in ALC that a student attends to at least
three courses? Student ⊑ ∃Attends.Course ⊓ A ∃Attends.Course ⊓ ¬A ⊓ B ∃Attends.Course ⊓ ¬A ⊓ ¬B
◮ Why isn’t it satisfactory ? ◮ How to express in ALC that a student attends to at most
10 courses?
◮ There is no concept C in ALC such that for all
interpretations I, for all a ∈ ∆I, a ∈ CI iff card({b | (a, b) ∈ AttendsI}) ≥ 3 45
(Unqualified) number restriction
◮ Extending the concepts with number restrictions (≤ n r)
and (≥ m r).
◮ Given I
def
= (∆I, ·I), (≤ n r)I def = {a ∈ ∆I | card({b | (a, b) ∈ r I}) ≤ n} (≥ m r)I def = {a ∈ ∆I | card({b | (a, b) ∈ r I}) ≥ m}
◮ Given a logic L, LN is defined as L except that
(unqualified) number restrictions are added.
◮ In ALCN, (≥ 3 Attends) ⊓ (≤ 10 Attends) does the job.
46
Qualified number restriction
◮ Generalising the number restrictions. ◮ Qualified number restrictions: (≤ n r · C), (≥ m r · C). ◮ Given I
def
= (∆I, ·I), (≤ n r·C)I def = {a ∈ ∆I | card({b | (a, b) ∈ r I and b ∈ CI}) ≤ n} (≥ m r·C)I def = {a ∈ ∆I | card({b | (a, b) ∈ r I and b ∈ CI}) ≥ m}
◮ (∼ n r) = (∼ n r · ⊤). ◮ Given a logic L, LQ is defined as L except that qualified
number restrictions are added.
◮ Concept satisfiability for ALCIQ is PSPACE-complete and
knowledge base consistency is EXPTIME-complete. 47
Naming individuals in complex concepts
◮ Concepts in ALC
C ::= ⊤ | ⊥ | A | ¬C | C ⊓ C | C ⊔ C | ∃r.C | ∀r.C
◮ . . . but individual names a (as in the concept assertion
a : C) are not concepts in ALC.
◮ How to express the concept “the courses taught by Alice” ?
Course ⊓ ∃Teaches−.Mary
◮ Nominals in hybrid (modal) logics: propositional variables
true in only one world of the domain.
◮ Nominals in DLs: individual names inside concept
descriptions, written {a}, where a ∈ NI with {a}I def = {aI}.
Syntactic trick {·}: Course ⊓ ∃Teaches−.{Mary}.
48
Nominals in DLs
◮ Given a logic L, LO is defined as L except that nominals
are added.
◮ Concept satisfiability for ALCOQ is PSPACE-complete and
knowledge base consistency is EXPTIME-complete.
◮ . . . but concept satisfiability for ALCOI is
EXPTIME-complete. 49
Role hierarchies
◮ ALC is not able to express complex role constraints such
that a relation is included in another relation.
◮ Typically, the interpretation of Attends should include the
interpretation of AttendsActively.
◮ Role inclusion axiom (RIA) of the form r ⊑ s with
I | = r ⊑ s
def
⇔ r I ⊆ sI
◮ Given a logic L, LH is defined as L except that role
inclusion axioms are added (in the TBox).
◮ Concept satisfiability for ALCH is PSPACE-complete and
knowledge base consistency is EXPTIME-complete. 50
Role value maps are concepts!
◮ A role value map is an atomic concept of the form r ⊑ s:
(r ⊑ s)I def = {a ∈ ∆I | r I(a) ⊆ sI(a)}
Role value maps are local variants of role inclusion axioms
(RIAs).
◮ The RIA r ⊑ s can be encoded by the GCI ⊤ ⊑ (r ⊑ s).
51
Transitive roles
◮ Many natural relations are transitive (AncestorOf,
HasPart, etc.) but this cannot be expressed in ALCH.
◮ Transitivity axioms are of the form Trans(r):
I | = Trans(r)
def
⇔ r I ◦ r I ⊆ r I
◮ Given L, its extension with transitivity axioms in TBoxes is
- btained by replacing ALC by S (new naming rule).
◮ Concept satisfiability for S is PSPACE-complete and
EXPTIME-complete for knowledge base consistency.
◮ Other properties are included in knowledge bases such as
reflexivity, irreflexivity, symmetry, functionality, . . . 52
A selection of complexity results
53
A queen logic SROIQ
◮ SROIQ agrees with the ontology language OWL 2 DL. ◮ SROIQ contains more than one might think from its
name.
◮ Its knowledge bases contain a role box (RBox) to specify
constraints about the interpretation of the role expressions.
◮ The set of roles R is made of role names r, its converses
r − and the universal role U with UI def = ∆I × ∆I.
◮ New atomic concept ∃R.Self with
(∃R.Self)I def = {a | (a, a) ∈ RI}
◮ Role assertions (a, b) : ¬R are allowed in the ABox. ◮ + ingredients the name (nominals, qualified number
restrictions, inverse). 54
Role axioms in the RBox
◮ Complex role inclusion axioms (CRIA) R1 ◦· · ·◦Rn ⊑ R.
A regularity constraint is required on the set of CRIAs
(unspecified here).
◮ Role axioms specifying disjointness, transitivity, reflexivity,
irreflexivity, symmetry, asymmetry.
◮ The knowledge base consistency problem for SROIQ is
N2EXPTIME-complete. 55
Semantic Web
◮ Semantic web:
◮ A vision of a computer-understandable Web. ◮ Distributed knowledge and data in reusable form. ◮ XML, RDF and OWL are part of the story.
◮ Principles towards a semantic Web of data
◮ Give a name to everything. ◮ Relationships form a graph between the entities. ◮ The names are addresses on the Web. ◮ Provide a formal semantics so that knowledge is encoded
in a machine interpretable way.
56
OWL based on description logics
◮ OWL: Web Ontology Language. ◮ Motivated by semantic web activities: add meaning to web
content by annotating it with terms defined in ontologies.
◮ It is a World Wide Web (W3C) standard. ◮ OWL has an explicit formal semantics. ◮ Supported by tools and infrastructures such as
development environments, reasoners and information systems.
◮ Based on description logics such as SROIQ.
57
DLs and ontology languages
◮ W3C’s OWL 2 is based on SROIQ. ◮ OWL 2 EL based on EL and OWL 2 QL based on DL-Lite. ◮ OWL was based on SHOIN. ◮ An OWL ontology is a mixed set containing TBox axioms
and ABox assertions.
◮ More on complexity/scalability:
◮ OWL (SHOIN) is NEXPTIME-complete. ◮ OWL 2 EL is PTIME-complete.
58
OWL RDF/XML exchange syntax
Person ⊓ ∀Teaches.Course 59
OWL reasoners and Prot´ eg´ e
◮ 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. ◮ Helpful to work with toy ontologies.
60
Relationships with other logics
61
Foreign language for modal/classical logicians
◮ Description logics can be understood as fragments of
first-order logics.
◮ Similarly, reasoning tasks for description logics can be
understood as decision problems for modal logics.
◮ This can be made precise and sometimes results for
modal/first-oder logics can be used.
◮ Specificity of DLs: many fragments, many extensions and
numerous original reasoning tasks (non-exhaustive presentation in this course). 62
Description logics and its shared history
◮ Late 80s: description logics developped as logical
formalisms for semantics networks.
◮ In the 1990s: relationships with first-order logic, modal
logics, PDL-like logics, etc. (PDL = Propositional Dynamic Logic)
◮ Logical basis for the Web Ontology Language OWL. ◮ Analogies between ontologies and databases lead also to
relationships with query answering languages. 63
From concepts to first-order formulae
◮ Interpretations I = (∆I, ·I) understood as first-order
models.
◮ Translation of non-logical symbols.
Description logics First-order logic individual name a ∈ NI ≈ constant a concept name A ∈ NC ≈ unary predicate A role name r ∈ NR ≈ binary predicate r
◮ Translation of concepts, assertions and GCIs by
internalising the DL semantics. 64
Example of translation
◮ A small TBox and its small ABox:
∃Attends.⊤ ⊑ Person Teacher ≡ Person ⊓ ∃Teaches.Course Alice : Teacher
◮ Its translation in FOL:
∀ x (∃ y Attends(x, y) ⇒ Person(x)) ∧ ∀ x (Teacher(x) ⇔ (Person(x)∧∃ y(Teaches(x, y)∧Course(y)))) ∧ Teacher(Alice)
◮ Concepts can be understood as first-order formulae with
- ne free variable.
65
Internalisation of ALC semantics
t(A, x)
def
= A(x) t(⊤, x) / t(⊥, x)
def
= ⊤ / ⊥ t(¬C, x)
def
= ¬t(C, x) t(C1 ⊓ C2, x)
def
= t(C1, x) ∧ t(C2, x) t(C1 ⊔ C2, x)
def
= t(C1, x) ∨ t(C2, x) t(∃r.C, x)
def
= ∃ y r(x, y) ∧ t(C, y) t(∀r.C, x)
def
= ∀ y r(x, y) ⇒ t(C, y) where y is a fresh variable.
◮ Given I = (∆I, ·I), a ∈ CI iff I, ρ[x ← a] |
= t(C, x).
◮ Many-one reduction from ALC satisfiability problem to FOL
satisfiability. 66
Translating KBs
t(C ⊑ D)
def
= ∀ x t(C, x) ⇒ t(D, x) t(C ≡ D)
def
= ∀ x t(C, x) ⇔ t(D, x) t(a : C)
def
= t(C, x)[a/x] t((a, b) : r)
def
= r(a, b) where ϕ[a/x] (also written ϕ(a)) is the formula obtained from ϕ
- btained by replacing the free occurrences of x by a.
◮ t(K) is defined as the conjunction below:
- α∈T
t(α) ∧
- α∈A
t(α)
◮ Given I = (∆I, ·I), I |
= K iff I | = t(K). 67
Locating DLs within first-order logic fragments
◮ The definition of t(C, x) can be optimised to recycle
variables and to use only two variables x0 and x1. t(∃r.C, xi)
def
= ∃ x1−i r(xi, x1−i) ∧ t(C, x1−i) t(∀r.C, xi)
def
= ∀ x1−i r(xi, x1−i) ⇒ t(C, x1−i)
◮ FO2 (FOL restricted to two individual variables)
satisfiability is NEXPTIME-complete.
◮ Actually, recycling of variables leads to the guarded
fragment restricted to two variables GF2, whose satisfiability is EXPTIME-complete.
◮ Which additional DL features can be translated into FOL?
into a decidable fragment of FOL? 68
More translations into FOL
t(∃r −.C, x)
def
= ∃ y r(y, x) ∧ t(C, y) t({a}, x)
def
= a = x t((≥ n r · C), x)
def
= ∃≥n y r(x, y) ∧ t(C, y) t(∃r.Self, x)
def
= r(x, x) t(r ⊑ s)
def
= ∀ x, y r(x, y) ⇒ s(x, y) t(Trans(r))
def
= ∀x1, x2, x3 r(x1, x2) ∧ r(x2, x3) ⇒ r(x1, x3) t(r1 ◦ · · · ◦ rn ⊑ r)
def
= ∀x1, · · · , xn+1 r1(x1, x2) ∧ · · · ∧ rn(xn, xn+1) ⇒ r(x1, xn+1) ∃≥k x ϕ(x)
def
= ∃ x1, . . . , xk (
- i=j
xi = xj) ∧
- i
ϕ(xi) 69
Modal logics in a nutshell
◮ Formulae: ϕ ::= p | ¬ϕ | ϕ ∧ ϕ | ✸ϕ | ✷ϕ. ◮ Kripke-style structures M = (W, R, V):
◮ W: non-empty set of worlds. ◮ R ⊆ W × W: accessibility relation. ◮ V : PROP → P(W): valuation.
w q p, q p q | = ✸✸p ∧ ✸✸¬p ∧ ✷¬p
◮ Satisfaction relation:
◮ M, w |
= p
def
⇔ w ∈ V(p).
◮ M, w |
= ✸ϕ
def
⇔ there is w′ s.t. (w, w′) ∈ R and M, w′ | = ϕ.
◮ M, w |
= ✷ϕ
def
⇔ for all w′ s.t. (w, w′) ∈ R, M, w′ | = ϕ.
70
Ubiquity of modal logics
◮ Satisfiability problem: given a formula ϕ, are there M, w
such that M, w | = ϕ?
◮ Plethora of modal logics depending on the frame
conditions:
◮ Modal logic S5: R is an equivalence relation (or
R = W × W).
◮ Modal logic K: R is arbitrary (or (W, R) is a finite tree). ◮ Modal logic S4: R is reflexive and transitive.
◮ Epistemic/temporal logics can be viewed as modal logics
with
◮ specific frame conditions (e.g., (W, R) is a tree), ◮ multiple modalities (e.g., [r] for r ∈ NR), ◮ modalities of arity > 1 (e.g., the until operator U).
ϕUψ, ϕ ϕ ϕ ψ . . .
71
Adding the universality modality and nominals
ϕ ::= A | a | ¬ϕ | ϕ ∧ ϕ | rϕ | [r]ϕ | [U]ϕ | Uϕ
◮ Models of the form M = (W, (Rr)r∈NR, V) with associated
modalities r and [r].
◮ University modality [U] such that M, w |
= [U]ϕ
def
⇔ for all w′, we have M, w′ | = ϕ.
◮ Propositional variables are now denoted by A, B to prepare
the encoding.
◮ Nominals in hybrid modal logics are propositional variables
holding for a unique world, here represented by a, b.
◮ Satisfiability problem for this logic is EXPTIME-complete.
72
Internalisation of the semantics
t(A)
def
= A t(⊤) / t(⊥)
def
= ⊤ / ⊥ t(¬C)
def
= ¬t(C) t(C1 ⊓ C2)
def
= t(C1) ∧ t(C2) t(C1 ⊔ C2)
def
= t(C1) ∨ t(C2) t(∃r.C)
def
= rt(C) t(∀r.C)
def
= [r]t(C)
◮ I = (∆I, ·I) → MI = (W, (Rr)r∈NR, V)
◮ W def
= ∆I and Rr = r I for all r.
◮ V(A) def
= AI for all A and V(a)
def
= {aI} for all a.
◮ Given I = (∆I, ·I), a ∈ CI iff MI, a |
= t(C).
◮ Many-one reduction from ALC satisfiability problem to
modal satisfiability. 73
Translating KBs
t(C ⊑ D)
def
= [U](t(C) ⇒ t(D)) t(C ≡ D)
def
= [U](t(C) ⇔ t(D)) t(a : C)
def
= U(a ∧ t(C)) t((a, b) : r)
def
= U(a ∧ rb)
◮ t(K) is defined as the conjunction below:
- α∈T
t(α) ∧
- α∈A
t(α)
◮ Given I = (∆I, ·I), I |
= K iff MI, a | = t(K) for all a ∈ ∆I. 74
Low hanging fruits
◮ Let ML (resp. ML+) be the multimodal logic into which ALC
concepts (resp. knowledge bases) are translated.
◮ ML satisfiability problem is PSPACE-complete, it has the
finite model property and the tree model property.
◮ ML+ satisfiability problem is EXPTIME-complete, it has the
finite model property and the tree model property.
◮ ALC satisfiability problem is PSPACE-complete and it has
the finite interpretation property.
◮ ALC knowledge base consistency problem is
EXPTIME-complete and it has the finite tree-shaped interpretation property. 75
Recapitulation
76
Recapitulation: concept and role constructors
Name Syntax Semantics Top ⊤ ∆I Bottom ⊥ ∅ Conjunction C ⊓ D CI ∩ DI Disjunction C ⊔ D CI ∪ DI Negation ¬C ∆I \ CI Existential restr. ∃r.C {a ∈ ∆I | r I(a) ∩ CI = ∅} Value restr. ∀r.C {a ∈ ∆I | r I(a) ⊆ CI}
- Unqual. nb. restr.
(≤ n r) {a ∈ ∆I | card({b | (a, b) ∈ r I} ≤ n)}
- Qual. nb. restr.
(≤ n r · C) {a ∈ ∆I | card({b ∈ CI | (a, b) ∈ r I} ≤ n)} Nominal {a} {aI} Role value map r ⊑ s {a ∈ ∆I | r I(a) ⊆ sI(a)} Inverse role r − {(b, a) | (a, b) ∈ r I} Role composition r ◦ s {(a, b) | ∃ a′ (a, a′) ∈ r I and (a′, b) ∈ sI}
77
Recapitulation: Terminological and assertional axioms
Name Syntax Semantics General inclusion axiom C ⊑ D CI ⊆ DI Concept definition A ≡ C AI = CI Role inclusion r ⊑ s r I ⊆ sI Role transitivity Trans(r) r I is transitive Concept assertion a : C aI ∈ CI Role assertion (a, b) : r (aI, bI) ∈ r I 78
Conclusion
◮ Lecture 1 (today): Introduction to description logics
◮ Getting familiar with DL terminology. ◮ Playing with formulae and decision problems.
◮ Lecture 2: Tableaux proof systems and complexity .
◮ Complete calculi for ALC and variants. ◮ Complexity results. ◮ Undecidability.