SlideShare une entreprise Scribd logo
1  sur  45
Jarrar © 2013 1
Dr. Mustafa Jarrar
Sina Institute, University of Birzeit
mjarrar@birzeit.edu
www.jarrar.info
Mustafa Jarrar: Lecture Notes on Description Logic,
Birzeit University, Palestine
Spring Semester, 2012
Artificial Intelligence
Description Logic
(and business rules)
Jarrar © 2013 2
Watch this lecture and download the slides from
http://jarrar-courses.blogspot.com/2011/11/artificial-intelligence-fall-2011.html
Jarrar © 2013 3
This lecture
• What and Why Description Logic
• ALC Description Logic
• Reasoning services in Description Logic
Lecture Keywords:
‫الوصفي‬ ‫المنطق‬ ،‫المنطق‬،‫قواعد‬ ،‫االستنتاج‬ ‫مهام‬ ،‫المنطقي‬ ‫االستنتاج‬ ،‫االستنباط‬
‫ا‬ ‫،صحة‬ ‫االستنتاج‬ ‫طرق‬ ،‫المفاهيمية‬ ‫النمذجة‬ ،‫العمل‬ ‫قواعد‬ ،‫االستنتاج‬‫ل‬‫جمل‬
،‫المنطقية‬‫التناقض‬ ،‫الحدود‬
Logic, Description Logic, DL, ALC Description Logic, SHOIN, AL, DLR, Tbox, Abox, Reasoning, Reasoning
services, Reasoners, Racer, HermiT, Business Rules, Conceptual Modeling, satisfiability, Unsatisfiability,
Jarrar © 2013 4
Reading Material
1. All slides + everything I say
2. Prof. Enrico Franconi: Lecture notes on Description Logic
http://www.inf.unibz.it/~franconi/dl/course/
3. D. Nardi, R. J. Brachman. An Introduction to Description Logics. In
the Description Logic Handbook, edited by F. Baader, D. Calvanese,
D.L. McGuinness, D. Nardi, P.F. Patel-Schneider, Cambridge University
Press, 2002, pages 5-44.
http://www.inf.unibz.it/~franconi/dl/course/dlhb/dlhb-01.pdf
4. Sean Bechhofer, “The DIG Description Logic Interface: DIG/1.1 ”
http://racer-systems.com/dl.php?file=NativeLibraries%252FDIGinterface11.pdf&typ=file&name=DIGinterface11.pdf
Only Sections 2.1 and 2.2 are required (= the first 32 pages)
* The slides in this lecture are based on and modify material largely from [2]
Jarrar © 2013 5
Why Description Logics?
If FOL is directly used without some kind of restriction, then
• The structure of the knowledge/information is lost (no
variables, concepts as classes, and roles as properties),
• The expressive power of FOL is too high for having good
(computational properties and efficient procedures).
Based on [2]
Jarrar © 2013 6
Description Logics
Description logics are a family of logics concerned with knowledge
representation.
A description logic is a decidable fragment of first-order logic, associated
with a set of automatic reasoning procedures.
The basic constructs for a description logic are the notion of a concept
and the notion of a relationship.
Complex concept and relationship expressions can be constructed from
atomic concepts and relationships with suitable constructs between
them.
Example:
HumanMother ⊑ Female ⊓ HasChild.Person
Jarrar © 2013 7
Axioms, Disjunctions and Negations
x. Teaching-Assistant(x)   Undergrad(x)  Professor(x)
Teaching-Assistant ⊑ Undergrad ⊔ Professor
A necessary condition in order to be a teaching assistant is to be either
not undergraduated or a professor. Clearly, a graduated student being a
teaching assistant is not necessarily a professor; moreover, it may be
the case that some professor is not graduated.
x. Teaching-Assistant(x) ↔  Undergrad(x)  Professor(x)
Teaching-Assistant ≐ Undergrad ⊔ Professor
When the left-hand side is an atomic concept, the ⊑ symbol introduces
a primitive definition (giving only necessary conditions) while the ≐
symbol introduces a real definition, with necessary and sufficient
conditions.
In general, it is possible to have complex concept expressions at the left-
hand side as well.
Based on [2]
Jarrar © 2013 8
Description Logics
Most known description logics are :
A more practical and expressive description logic.
C, D  A | ⊤ | ⊥|¬A | C ⊓ D | R.C | R.⊤
ALC
Very expressive description logic,
Capable of representing most database constructs.DLRidf
Very popular description logic.
The logic underlying OWL.
SHOIN
The simplest and less expressive description logic.
C, D  A | C ⊓ D | R.C | R
FL¯
Jarrar © 2013 9
ALC Description logic (Syntax and Semantic)
Constructor Syntax Semantics
Primitive concept A AI  I
Primitive role R RI  I  I
Top ⊤ I
Bottom ⊥ 
Complement C I  CI
Conjunction C ⊓ D CI  DI
Disjunction C ⊔ D CI  DI
Universal quantifier R.C {x | y. RI (x,y)  CI(y)}
Extensional quantifier R.C {x | y. RI (x,y)  CI(y)}
Woman ⊑ Person ⊓ Female
Parent ⊑ Person ⊓ hasChild.⊤
Man ⊑ Person ⊓ Female
NotParent ⊑ Person ⊓ hasChild.⊥
Examples:
Jarrar © 2013 10
Closed Propositional Language
Conjunction ( ⊓ ) is interpreted as intersection of sets of individuals.
Disjunction ( ⊔ ) is interpreted as union of sets of individuals.
Negation ( ) is interpreted as complement of sets of individuals.
R.⊤  R.
(C ⊓ D)  C ⊔ D
(C ⊔ D)  C ⊓ D
(R.C)  R.C
(R.C)  R.C
Based on [2]
Jarrar © 2013 11
Formal Semantics
An interpretation I = (I , .I) consists of:
a nonempty set I (the domain)
a function .I (the interpretation function)
that maps
– every individual to an element of I
– every concept to a subset of I
– every role to a subset of I  I
An interpretation function .I is an extension function if and
only if it satisfies the semantic definitions of the
language.
Based on [2]
Jarrar © 2013 12
DL Knowledge Base
DL Knowledge Base () normally separated into two parts:
 = Tbox, Abox
– TBox (Terminological Box) is a set of axioms in the form of
(C ⊑ D , C ≐ D ) describing structure of domain (i.e., schema),
Example:
HappyFather ≐ Man ⊓ hasChild.Female
Elephant ⊑ Animal ⊓ Large ⊓ Grey
– ABox (Assertion Box) is a set of axioms in the form of
(C(a), R(a, b)) describing a concrete situation (data),
Example:
HappyFather (John)
hasChild(John,Mary)
Jarrar © 2013 13
Knowledge Bases (Example)
Tbox:
Student ≐ Person ⊓ NAME.String ⊓
ADDRESS.String ⊓
ENROLLED.Course
TEACHES.Course ⊑ Undergrad ⊓ Professor
Abox:
Student(Ali)
ENROLLED(Ali; Comp338)
(Student ⊔ Professor)(Dima)
Based on [2]
Jarrar © 2013 14
TBox: Descriptive Semantics
An interpretation I satisfies the statement C ⊑ D if CI  DI.
An interpretation I satisfies the statement C ≐ D if CI = DI.
An interpretation I is a model for a TBox T if I satisfies all
statements in T .
Based on [2]
Jarrar © 2013 15
Abox Interpretation
If I = (I, .I) is an interpretation,
C(a) is satisfied by I if aI  CI.
R(a, b) is satisfied by I if (aI, bI)  RI.
A set A of assertions is called an ABox.
An interpretation I is said to be a model of the ABox A if every
assertion of A is satisfied by I. The ABox A is said to be satisfiable
if it admits a model.
An interpretation I = (I, .I) is said to be a model of a knowledge base
 if every axiom of  is satisfied by I.
A knowledge base  is said to be satisfiable if it admits a model.
Based on [2]
Jarrar © 2013 16
Logical Implication
 ╞  if every model of  is a model of 
Example:
TBox:
TEACHES.Course ⊑ Undergrad ⊔ Professor
ABox:
TEACHES(Rami,Comp338), Course(comp388),
Undergrad(Rami)
╞ Professor(Rami) ?
Based on [2]
Jarrar © 2013 17
Logical Implication
What if:
TBox:
TEACHES.Course ⊑ Undergrad ⊔ Professor
ABox:
TEACHES(Rami,Comp388), Course(Comp388),
Undergrad(Rami)
 ╞ Professor(Rami) ?
 ╞ Professor(Rami) ?
Based on [2]
Jarrar © 2013 18
Reasoning Services
 Remember that a DL is typically associated with reasoning procedures.
 There are several primitive/common reasoning services that most DL
reasoners support:
Concept Satisfiability
 | C  ⊥ Student ⊓ Person
the problem of checking whether C is satisfiable w.r.t. , i.e. whether there exists a
model I of  such that CI  
Subsumption
 |= C ⊑ D Student ⊑ Person
the problem of checking whether C is subsumed by D w.r.t. , i.e. whether CI  DI in
every model I of 
Satisfiability
 |= Student ≐ Person
the problem of checking whether  is satisfiable, i.e. whether it has a model.
Based on [2]
Jarrar © 2013 19
Reasoning Services (cont.)
Instance Checking
 |= C(a) Professor(john)
the problem of checking whether the assertion C(a) is satisfied in every model of 
Retrieval
{a |  |= C(a) } Professor  Dima
Realization
{C |  |= C(a) } Dima  Professor
Based on [2]
Jarrar © 2013 20
Reduction to Satisfiability
Concept Satisfiability
 |= C  ⊥ ↔ exists x s.t.   {C(x)} has a model.
Subsumption
 |= C ⊑ D ↔   {C ⊓ D(x)} has no models.
Instance Checking
 |= C(a) ↔   {C(x)} has no models.
D
D
C
Based on [2]
Jarrar © 2013 21
Some extensions of ALC
Constructor Syntax Semantics
Primitive concept A AI  I
Primitive role R RI  I  I
Top ⊤ I
Bottom ⊥ 
Complement C I  CI
Conjunction C⊓D CI  DI
Disjunction C⊔D CI  DI
Universal quantifier R.C {x | y.RI (x,y)  CI(y)}
Extensional quantifier R.C {x | y.RI (x,y)  CI(y)}
Jarrar © 2013 22
Some extensions of ALC
Constructor Syntax Semantics
Primitive concept A AI  I
Primitive role R RI  I  I
Top ⊤ I
Bottom ⊥ 
Complement C I  CI
Conjunction C⊓D CI  DI
Disjunction C⊔D CI  DI
Universal quantifier R.C {x | y.RI (x,y)  CI(y)}
Extensional quantifier R.C {x | y.RI (x,y)  CI(y)}
Cardinality (N)
≥n R {x | #{y | RI(x,y)} ≥ n}
≤n R {x | #{y | RI(x,y)} ≥ n}
Qual. cardinality (Q)
≥n R.C {x | #{y | RI(x,y)  CI(y)} ≥ n}
≤n R.C {x | #{y | RI(x,y)  CI(y)} ≥ n}
Enumeration (O) {a1 … an} {aI
1 … aI
n}
Selection (F) f : C {x  Dom(fI) | CI(fI(x))}
Jarrar © 2013 23
Cardinality Restriction
Role quantification cannot express that a woman has at least 3 (or at
most 5) children.
Cardinality restrictions can express conditions on the number of fillers:
BusyWoman ≐ Woman ⊓ (≥ 3 CHILD)
ConsciousWoman ≐ Woman ⊓ (≤ 5 CHILD)
Notice:
(≥1 R)  (R.)
Based on [2]
Jarrar © 2013 24
Cardinality Restriction
BusyWoman ≐ Woman ⊓ (≥ 3 CHILD)
ConsciousWoman ≐ Woman ⊓ (≤ 5 CHILD)
Mary: Woman,
CHILD:John,
CHILD:Sui,
CHILD:Karl
|= ConsciousWoman(Mary) ?
Based on [2]
Jarrar © 2013 25
Roles as Functions
A role is functional, is the filler functionally depends on the
individual, i.e., the role can be considered as a function:
R(x, y)  f(x) = y.
For example, the roles CHILD and PARENT are not
functional, while the roles MOTHER and AGE are
functional.
If a role is functional, we write:
 f.C  f.c (selection operator)
Based on [2]
Jarrar © 2013 26
Individuals
In every interpretation different individuals are assumed to
denote different elements, i.e. for every pair of individuals
a, b, and for every interpretation I, if a  b then aI  bI.
This is called the Unique Name Assumption and is usually
assumed in database applications.
Example: How many children does this family have?
Family(f), Father(f,john), Mother(f,sue),
Son(f,paul), Son(f,george), Son(f,alex)
|= (≥ 3 Son)(f)
Based on [2]
Jarrar © 2013 27
Enumeration Type (one-of)
Weekday ≐ {mon, tue, wed, thu, fri, sat, sun}
WeekdayI ≐ {monI, tueI, wedI, thuI, friI, satI, sunI}
Citizen ≐ (Person ⊓ LIVES.Country)
Palestinian ≐ (Citizen ⊓ LIVES.{Palestine})
Jarrar © 2013 28
Racer (http://www.racer-systems.com/products/racerpro/index.phtm )
Jarrar © 2013 29
• They offer reasoning services for multiple TBoxes and ABoxes.
• They run as background reasoning engines.
• They understand DIG, which is a simple protocol (based on HTTP)
along with an XML Schema.
Description Logic Reasoners
<impliesc>
<catom name=“Student"/>
<catom name=“Person"/>
</impliesc>
Student ⊑ Person• Example:
• For example:
HermiT
Jarrar © 2013 30
DIG Interface (http://dig.sourceforge.net/ )
Jarrar © 2013 31
DIG Protocol
DIG is only an XML schema for a description logic along with ask/tell
functionality
You write a new Knowledge base (using the DIG XML syntax), and send
it to Racer using the TELL functionality.
You can then write you Query/Question (using the DIG, XML syntax),
and send it to Racer using the ASK functionality.
You may communicate with the Racer through HTTP or SOAP.
Jarrar © 2013 32
Create e a new Knowledge Base
<?xml version="1.0" encoding="UTF-8"?>
<newKB
xmlns="http://dl.kr.org/dig/2003/02/lang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"/>
<?xml version="1.0" encoding="UTF-8"?>
<response
xmlns="http://dl.kr.org/dig/2003/02/lang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd">
<kb uri="urn:uuid:abcdefgh-1234-1234-12345689ab"/>
The Response Message
The newKB Message
This URI should then be used during TELL and
ASK requests made against the knowledge base
Jarrar © 2013 33
Tell Syntax
<?xml version="1.0" encoding="ISO-8859-1"?>
<tells
xmlns="http://dl.kr.org/dig/2003/02/lang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"
uri="urn:uuid:abcdefgh-1234-1234-12345689ab">
<defconcept name="driver"/>
<equalc>
<catom name="driver"/>
<and>
<catom name="person"/>
<some>
<ratom name="drives"/>
<catom name="vehicle"/>
</some>
</and>
</equalc>
<defconcept name="person"/>
<defconcept name="vehicle"/>
<defrole name="drives"/>
</tells>
A TELL request must contain in its body a tells element, which itself
consists of a number of tell statements.
Example: Driver ⊑ Person ⊓ Drives.Vehicle
Based on [4]
Jarrar © 2013 34
Tell Syntax
Tell Language
Primitive
Concept
Introduction
<defconcept name="CN"/>
<defrole name="CN"/>
<deffeature name="CN"/>
<defattribute name="CN"/>
<defindividual name="CN"/>
Concept
Axioms
<impliesc>C1 C2</impliesc>
<equalc>C1 C2</equalc>
<disjoint>C1... Cn</disjoint>
Role
Axioms
<impliesr>R1 R2</impliesc>
<equalr>R1 R2</equalr>
<domain>R E</domain>
<range>R E</range>
<rangeint>R</rangeint>
<rangestring>R</rangestring>
<transitive>R</transitive>
<functional>R</functional>
Individual
Axioms
<instanceof>I C</instanceof>
<related>I1 R I2</related>
<value>I A V</value>
Concept Language
Primitive
Concepts
<top/>
<bottom/>
<catom name="CN"/>
Boolean
Operators
<and>E1... En</and>
<or>E1... En</or>
<not>E</not>
Property
Restrictions
<some>R E</some>
<all>R E</all>
<atmost num="n">R E</atmost>
<atleast num="n">R E</atleast>
<iset>I1... In</iset>
Concrete
Domain
Expressions
<defined>A</defined>
<stringmin val="s">A</stringmin>
<stringmax val="s">A</stringmax>
<stringequals val="s">A</stringequals>
<stringrange min="s"
max="t">A</stringrange>
<intmin val="i">A</intmin>
<intmax val="i">A</intmax>
<intequals val="i">A</intequals>
<intrange min="i" max="j">A</intrange>
Role
Expressions
<ratom name="CN"/>
<feature name="CN"/>
<inverse>R</inverse>
<attribute name="CN"/>
<chain>F1... FN A</chain>
Individuals <individual name="CN"/>
Jarrar © 2013 35
Ask Syntax
An ASK request must contain in its body an asks element.
Multiple queries in one request is possible.
<?xml version="1.0"?>
<asks
xmlns="http://dl.kr.org/dig/2003/02/lang">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang"
http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"
uri="urn:uuid:abcdefgh-1234-1234-12345689ab">
<satisfiable id="q1">
<catom name="Vehicle"/>
</satisfiable>
<descendants id="q2">
<and>
<catom name="person"/>
<some>
<ratom name="drives"/>
<catom name="vehicle"/>
</some>
</and>
</descendants>
<types id="q3">
<individual name="JohnSmith"></individual>
</types>
</asks>
KB |= Vehicle
asks about satisfiability of
the Vehicle concept
asks for all those concepts subsumed by
the description given, i.e. all the drivers
a |  |= Peron(a) ⊓Drives.Vehicle
asks for the known types of the
given individual
C |  |= C(JohnSmith)
Jarrar © 2013 36
Ask Syntax
Ask Language
Primitive Concept
Retrieval
<allConceptNames/>
<allRoleNames/>
<allIndividuals/>
Satisfiability
<satisfiable>C</satisfiable>
<subsumes>C1 C2</subsumes>
<disjoint>C1 C2</disjoint>
Concept Hierarchy
<parents>C</parents>
<children>C</children>
<ancestors>C</ancestors>
<descendants>C<descendants/>
<equivalents>C</equivalents>
Role Hierarchy
<rparents>R</rparents>
<rchildren>R</rchildren>
<rancestors>R</rancestors>
<rdescendants>R<rdescendants/>
Individual Queries
<instances>C</instances>
<types>I</types>
<instance>I C</instance>
<roleFillers>I R</roleFillers>
<relatedIndividuals>R</relatedIndividuals>
Jarrar © 2013 37
ْExamples of Using Description Logic in
Conceptual Modeling and Business rules
Jarrar © 2013 38
UML Class diagram
(with a contradiction and an implication)
Person
Student Employee
PhD Student
Student ⊑ Person
PhDStudent ⊑ Person
Employee ⊑ Person
PhD Student ⊑ Student ⊓ Employee
Student ⊓ Employee ≐ ⊥
{disjoint}
Jarrar © 2013 39
Infinite Domain: the democratic company
Supervisor
Employee
Supervisor ⊑ =2 Supervises.Employee
Employee ⊑ Supervisor
Supervises
2..2
0..1
implies
“the classes Employee and Supervisor necessarily contain an infinite
number of instances”.
Since legal world descriptions are finite possible worlds satisfying the
constraints imposed by the conceptual schema, the schema is inconsistent.
Based on [3]
Jarrar © 2013 40
Example (in UML, EER and ORM)
Employee
Project
WorksFor
TopManager
Manages
Employee Project
WorksFor
Manages1..1
1..1
TopManger WorksFor
Manages
Project
TopManger
Employee
1..1
1..1
Jarrar © 2013 41
Example (in UML, EER and ORM)
Employee ⊑ =1 WorksFor.Project
TopManager ⊑ Employee ⊓ =1Manages.Project
Employee Project
WorksFor
Manages1..1
1..1
TopManger
WorksFor.Project ⊑ Manages.Project
⊨
?
Jarrar © 2013 42
Another Example
Person
Course
Taught By
Study
1..3
1..1
StudentProfessor
{complete,disjoint}
Jarrar © 2013 43
Another Example
Person Car
Person ⊑ =1 Owns.Car ⊓ =1 Drives.Car
Drive ≐ Owns
Owns
• The first 1..1 cardinality constraint means that every person must owns one car.
• The second1..1 cardinality constraint means that every person must drives one car.
• The equal constraint means that every person who owns a car is allowed to only
drive that car, and vice versa.
 The equal constraint is implied by both cardinality constraints.
Drives
equal
1..1
1..1
Jarrar © 2013 44
Homework (Reason about UML/EER Diagrams)
1- Create a UML/EER diagram that contains some contradictions and
implications.
2- Formulate this diagram in description logic,
3- Write at least 5 questions (reasoning services) to know whether the
schema/concept/rule is satisfiable, and 3 questions whether
something in the schema is implied?
Hint: contradictionsimplication can be achieved throw the wrong use of
disjointness and cardinality constraints (see examples in the next slide).
Please remark that this project is not only to help you practice Description Logics, but
also: 1) build correct UML/EER models and find problems automatically, 2) Reason
about rules and business rules, and 3) you think of another usage (open your mind)!
Each student should deliver one pdf file, contains: 1) the diagram 2) its
formalization in DL, 3) the reasoning questions.
Jarrar © 2013 45
Ontology
Recall that a TBox can be used to specify the meaning of a terminology.
That is, specify meaning in logic.
Recall that a TBox can be depicted in EER/UML
You may build your TBox in OWL (the Ontology Web Language), and
share it on the web, so that that others can use it a reference to
meaning of a terminology (ontology).
This will be the topic of the coming lectures.

Contenu connexe

Tendances

Supervised vs Unsupervised vs Reinforcement Learning | Edureka
Supervised vs Unsupervised vs Reinforcement Learning | EdurekaSupervised vs Unsupervised vs Reinforcement Learning | Edureka
Supervised vs Unsupervised vs Reinforcement Learning | EdurekaEdureka!
 
Semantic nets in artificial intelligence
Semantic nets in artificial intelligenceSemantic nets in artificial intelligence
Semantic nets in artificial intelligenceharshita virwani
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representationAmit Rathi
 
Knowledge representation in AI
Knowledge representation in AIKnowledge representation in AI
Knowledge representation in AIVishal Singh
 
Uncertain Knowledge and Reasoning in Artificial Intelligence
Uncertain Knowledge and Reasoning in Artificial IntelligenceUncertain Knowledge and Reasoning in Artificial Intelligence
Uncertain Knowledge and Reasoning in Artificial IntelligenceExperfy
 
Artificial intelligence and first order logic
Artificial intelligence and first order logicArtificial intelligence and first order logic
Artificial intelligence and first order logicparsa rafiq
 
Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence Yasir Khan
 
Knowledge representation In Artificial Intelligence
Knowledge representation In Artificial IntelligenceKnowledge representation In Artificial Intelligence
Knowledge representation In Artificial IntelligenceRamla Sheikh
 
Explainable AI
Explainable AIExplainable AI
Explainable AIDinesh V
 
Unit4: Knowledge Representation
Unit4: Knowledge RepresentationUnit4: Knowledge Representation
Unit4: Knowledge RepresentationTekendra Nath Yogi
 
Propositional logic
Propositional logicPropositional logic
Propositional logicRushdi Shams
 
Artificial intelligence agents and environment
Artificial intelligence agents and environmentArtificial intelligence agents and environment
Artificial intelligence agents and environmentMinakshi Atre
 
I. AO* SEARCH ALGORITHM
I. AO* SEARCH ALGORITHMI. AO* SEARCH ALGORITHM
I. AO* SEARCH ALGORITHMvikas dhakane
 

Tendances (20)

Supervised vs Unsupervised vs Reinforcement Learning | Edureka
Supervised vs Unsupervised vs Reinforcement Learning | EdurekaSupervised vs Unsupervised vs Reinforcement Learning | Edureka
Supervised vs Unsupervised vs Reinforcement Learning | Edureka
 
First order logic
First order logicFirst order logic
First order logic
 
Semantic nets in artificial intelligence
Semantic nets in artificial intelligenceSemantic nets in artificial intelligence
Semantic nets in artificial intelligence
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representation
 
Knowledge representation in AI
Knowledge representation in AIKnowledge representation in AI
Knowledge representation in AI
 
Uncertain Knowledge and Reasoning in Artificial Intelligence
Uncertain Knowledge and Reasoning in Artificial IntelligenceUncertain Knowledge and Reasoning in Artificial Intelligence
Uncertain Knowledge and Reasoning in Artificial Intelligence
 
Artificial intelligence and first order logic
Artificial intelligence and first order logicArtificial intelligence and first order logic
Artificial intelligence and first order logic
 
Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence Knowledge Representation in Artificial intelligence
Knowledge Representation in Artificial intelligence
 
Knowledge representation In Artificial Intelligence
Knowledge representation In Artificial IntelligenceKnowledge representation In Artificial Intelligence
Knowledge representation In Artificial Intelligence
 
Bayes Belief Networks
Bayes Belief NetworksBayes Belief Networks
Bayes Belief Networks
 
Explainable AI
Explainable AIExplainable AI
Explainable AI
 
Unit4: Knowledge Representation
Unit4: Knowledge RepresentationUnit4: Knowledge Representation
Unit4: Knowledge Representation
 
Propositional logic
Propositional logicPropositional logic
Propositional logic
 
Knowledge representation
Knowledge representationKnowledge representation
Knowledge representation
 
Crisp set
Crisp setCrisp set
Crisp set
 
Ontology engineering
Ontology engineering Ontology engineering
Ontology engineering
 
Artificial intelligence agents and environment
Artificial intelligence agents and environmentArtificial intelligence agents and environment
Artificial intelligence agents and environment
 
NAMED ENTITY RECOGNITION
NAMED ENTITY RECOGNITIONNAMED ENTITY RECOGNITION
NAMED ENTITY RECOGNITION
 
I. AO* SEARCH ALGORITHM
I. AO* SEARCH ALGORITHMI. AO* SEARCH ALGORITHM
I. AO* SEARCH ALGORITHM
 
Type Checking(Compiler Design) #ShareThisIfYouLike
Type Checking(Compiler Design) #ShareThisIfYouLikeType Checking(Compiler Design) #ShareThisIfYouLike
Type Checking(Compiler Design) #ShareThisIfYouLike
 

En vedette

Jarrar: Introduction to logic and Logic Agents
Jarrar: Introduction to logic and Logic Agents Jarrar: Introduction to logic and Logic Agents
Jarrar: Introduction to logic and Logic Agents Mustafa Jarrar
 
Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Mustafa Jarrar
 
Jarrar: Introduction to Information Retrieval
Jarrar: Introduction to Information RetrievalJarrar: Introduction to Information Retrieval
Jarrar: Introduction to Information RetrievalMustafa Jarrar
 
Jarrar: First Order Logic- Inference Methods
Jarrar: First Order Logic- Inference MethodsJarrar: First Order Logic- Inference Methods
Jarrar: First Order Logic- Inference MethodsMustafa Jarrar
 
Jarrar: Introduction to Natural Language Processing
Jarrar: Introduction to Natural Language ProcessingJarrar: Introduction to Natural Language Processing
Jarrar: Introduction to Natural Language ProcessingMustafa Jarrar
 
Jarrar: First Order Logic
Jarrar: First Order LogicJarrar: First Order Logic
Jarrar: First Order LogicMustafa Jarrar
 
Habash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingHabash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingMustafa Jarrar
 
Dependency Parsing
Dependency ParsingDependency Parsing
Dependency ParsingJinho Choi
 
Business Process Implementation
Business Process ImplementationBusiness Process Implementation
Business Process ImplementationMustafa Jarrar
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language ProcessingYasir Khan
 
Natural language processing with python and amharic syntax parse tree by dani...
Natural language processing with python and amharic syntax parse tree by dani...Natural language processing with python and amharic syntax parse tree by dani...
Natural language processing with python and amharic syntax parse tree by dani...Daniel Adenew
 
Introduction to Ontology Concepts and Terminology
Introduction to Ontology Concepts and TerminologyIntroduction to Ontology Concepts and Terminology
Introduction to Ontology Concepts and TerminologySteven Miller
 
Ontologies in computer science and on the web
Ontologies in computer science and on the webOntologies in computer science and on the web
Ontologies in computer science and on the webFabien Gandon
 
Natural Language Processing: Parsing
Natural Language Processing: ParsingNatural Language Processing: Parsing
Natural Language Processing: ParsingRushdi Shams
 
Introduction to Artificial Intelligence
Introduction to Artificial Intelligence Introduction to Artificial Intelligence
Introduction to Artificial Intelligence Mustafa Jarrar
 
Ontology Powerpoint
Ontology PowerpointOntology Powerpoint
Ontology PowerpointARH_Miller
 
Jarrar: Propositional Logic Inference Methods
Jarrar: Propositional Logic Inference MethodsJarrar: Propositional Logic Inference Methods
Jarrar: Propositional Logic Inference MethodsMustafa Jarrar
 
Jarrar: Un-informed Search
Jarrar: Un-informed SearchJarrar: Un-informed Search
Jarrar: Un-informed SearchMustafa Jarrar
 
Parsing Natural Scenes and Natural Language with Recursive Neural Networks
Parsing Natural Scenes and Natural Language with Recursive Neural NetworksParsing Natural Scenes and Natural Language with Recursive Neural Networks
Parsing Natural Scenes and Natural Language with Recursive Neural Networksjie cao
 

En vedette (20)

Jarrar: Introduction to logic and Logic Agents
Jarrar: Introduction to logic and Logic Agents Jarrar: Introduction to logic and Logic Agents
Jarrar: Introduction to logic and Logic Agents
 
Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing Adnan: Introduction to Natural Language Processing
Adnan: Introduction to Natural Language Processing
 
Jarrar: Introduction to Information Retrieval
Jarrar: Introduction to Information RetrievalJarrar: Introduction to Information Retrieval
Jarrar: Introduction to Information Retrieval
 
Jarrar: First Order Logic- Inference Methods
Jarrar: First Order Logic- Inference MethodsJarrar: First Order Logic- Inference Methods
Jarrar: First Order Logic- Inference Methods
 
Jarrar: Introduction to Natural Language Processing
Jarrar: Introduction to Natural Language ProcessingJarrar: Introduction to Natural Language Processing
Jarrar: Introduction to Natural Language Processing
 
Jarrar: First Order Logic
Jarrar: First Order LogicJarrar: First Order Logic
Jarrar: First Order Logic
 
Habash: Arabic Natural Language Processing
Habash: Arabic Natural Language ProcessingHabash: Arabic Natural Language Processing
Habash: Arabic Natural Language Processing
 
Dependency Parsing
Dependency ParsingDependency Parsing
Dependency Parsing
 
Business Process Implementation
Business Process ImplementationBusiness Process Implementation
Business Process Implementation
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Jarrar: Games
Jarrar: GamesJarrar: Games
Jarrar: Games
 
Natural language processing with python and amharic syntax parse tree by dani...
Natural language processing with python and amharic syntax parse tree by dani...Natural language processing with python and amharic syntax parse tree by dani...
Natural language processing with python and amharic syntax parse tree by dani...
 
Introduction to Ontology Concepts and Terminology
Introduction to Ontology Concepts and TerminologyIntroduction to Ontology Concepts and Terminology
Introduction to Ontology Concepts and Terminology
 
Ontologies in computer science and on the web
Ontologies in computer science and on the webOntologies in computer science and on the web
Ontologies in computer science and on the web
 
Natural Language Processing: Parsing
Natural Language Processing: ParsingNatural Language Processing: Parsing
Natural Language Processing: Parsing
 
Introduction to Artificial Intelligence
Introduction to Artificial Intelligence Introduction to Artificial Intelligence
Introduction to Artificial Intelligence
 
Ontology Powerpoint
Ontology PowerpointOntology Powerpoint
Ontology Powerpoint
 
Jarrar: Propositional Logic Inference Methods
Jarrar: Propositional Logic Inference MethodsJarrar: Propositional Logic Inference Methods
Jarrar: Propositional Logic Inference Methods
 
Jarrar: Un-informed Search
Jarrar: Un-informed SearchJarrar: Un-informed Search
Jarrar: Un-informed Search
 
Parsing Natural Scenes and Natural Language with Recursive Neural Networks
Parsing Natural Scenes and Natural Language with Recursive Neural NetworksParsing Natural Scenes and Natural Language with Recursive Neural Networks
Parsing Natural Scenes and Natural Language with Recursive Neural Networks
 

Similaire à Jarrar: Description Logic

Jarrar.lecture notes.aai.2011s.descriptionlogic
Jarrar.lecture notes.aai.2011s.descriptionlogicJarrar.lecture notes.aai.2011s.descriptionlogic
Jarrar.lecture notes.aai.2011s.descriptionlogicPalGov
 
Jarrar.lecture notes.aai.2012s.descriptionlogic
Jarrar.lecture notes.aai.2012s.descriptionlogicJarrar.lecture notes.aai.2012s.descriptionlogic
Jarrar.lecture notes.aai.2012s.descriptionlogicSinaInstitute
 
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08Praveen Kumar
 
Dsm as theory building
Dsm as theory buildingDsm as theory building
Dsm as theory buildingClarkTony
 
A Fuzzy Programming Technique For Solving Multi-Objective Structural Problem
A Fuzzy Programming Technique For Solving Multi-Objective Structural ProblemA Fuzzy Programming Technique For Solving Multi-Objective Structural Problem
A Fuzzy Programming Technique For Solving Multi-Objective Structural ProblemAnita Miller
 
leanCoR: lean Connection-based DL Reasoner
leanCoR: lean Connection-based DL ReasonerleanCoR: lean Connection-based DL Reasoner
leanCoR: lean Connection-based DL ReasonerAdriano Melo
 
GDSC SSN - solution Challenge : Fundamentals of Decision Making
GDSC SSN - solution Challenge : Fundamentals of Decision MakingGDSC SSN - solution Challenge : Fundamentals of Decision Making
GDSC SSN - solution Challenge : Fundamentals of Decision MakingGDSCSSN
 
Gradient-based optimization for Deep Learning: a short introduction
Gradient-based optimization for Deep Learning: a short introductionGradient-based optimization for Deep Learning: a short introduction
Gradient-based optimization for Deep Learning: a short introductionChristian Perone
 
Jarrar.lecture notes.aai.2011s.ch8.fol.introduction
Jarrar.lecture notes.aai.2011s.ch8.fol.introductionJarrar.lecture notes.aai.2011s.ch8.fol.introduction
Jarrar.lecture notes.aai.2011s.ch8.fol.introductionPalGov
 
Query Translation for Data Sources with Heterogeneous Content Semantics
Query Translation for Data Sources with Heterogeneous Content Semantics Query Translation for Data Sources with Heterogeneous Content Semantics
Query Translation for Data Sources with Heterogeneous Content Semantics Jie Bao
 
Emerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptxEmerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptxPoonamKumarSharma
 

Similaire à Jarrar: Description Logic (20)

Jarrar.lecture notes.aai.2011s.descriptionlogic
Jarrar.lecture notes.aai.2011s.descriptionlogicJarrar.lecture notes.aai.2011s.descriptionlogic
Jarrar.lecture notes.aai.2011s.descriptionlogic
 
Jarrar.lecture notes.aai.2012s.descriptionlogic
Jarrar.lecture notes.aai.2012s.descriptionlogicJarrar.lecture notes.aai.2012s.descriptionlogic
Jarrar.lecture notes.aai.2012s.descriptionlogic
 
Pl vol1
Pl vol1Pl vol1
Pl vol1
 
Pl vol1
Pl vol1Pl vol1
Pl vol1
 
pres_coconat
pres_coconatpres_coconat
pres_coconat
 
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
 
Dsm as theory building
Dsm as theory buildingDsm as theory building
Dsm as theory building
 
A Fuzzy Programming Technique For Solving Multi-Objective Structural Problem
A Fuzzy Programming Technique For Solving Multi-Objective Structural ProblemA Fuzzy Programming Technique For Solving Multi-Objective Structural Problem
A Fuzzy Programming Technique For Solving Multi-Objective Structural Problem
 
leanCoR: lean Connection-based DL Reasoner
leanCoR: lean Connection-based DL ReasonerleanCoR: lean Connection-based DL Reasoner
leanCoR: lean Connection-based DL Reasoner
 
Chapter1p2.pptx
Chapter1p2.pptxChapter1p2.pptx
Chapter1p2.pptx
 
Chapter1p2.pptx
Chapter1p2.pptxChapter1p2.pptx
Chapter1p2.pptx
 
Zhou ciclops floc06
Zhou ciclops floc06Zhou ciclops floc06
Zhou ciclops floc06
 
GDSC SSN - solution Challenge : Fundamentals of Decision Making
GDSC SSN - solution Challenge : Fundamentals of Decision MakingGDSC SSN - solution Challenge : Fundamentals of Decision Making
GDSC SSN - solution Challenge : Fundamentals of Decision Making
 
Gradient-based optimization for Deep Learning: a short introduction
Gradient-based optimization for Deep Learning: a short introductionGradient-based optimization for Deep Learning: a short introduction
Gradient-based optimization for Deep Learning: a short introduction
 
Jarrar.lecture notes.aai.2011s.ch8.fol.introduction
Jarrar.lecture notes.aai.2011s.ch8.fol.introductionJarrar.lecture notes.aai.2011s.ch8.fol.introduction
Jarrar.lecture notes.aai.2011s.ch8.fol.introduction
 
Query Translation for Data Sources with Heterogeneous Content Semantics
Query Translation for Data Sources with Heterogeneous Content Semantics Query Translation for Data Sources with Heterogeneous Content Semantics
Query Translation for Data Sources with Heterogeneous Content Semantics
 
PROLOG: Introduction To Prolog
PROLOG: Introduction To PrologPROLOG: Introduction To Prolog
PROLOG: Introduction To Prolog
 
DBMS CS3
DBMS CS3DBMS CS3
DBMS CS3
 
Emerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptxEmerging Approach to Computing Techniques.pptx
Emerging Approach to Computing Techniques.pptx
 
DBMS ppt (1).pptx
DBMS ppt (1).pptxDBMS ppt (1).pptx
DBMS ppt (1).pptx
 

Plus de Mustafa Jarrar

Clustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisClustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisMustafa Jarrar
 
Classifying Processes and Basic Formal Ontology
Classifying Processes  and Basic Formal OntologyClassifying Processes  and Basic Formal Ontology
Classifying Processes and Basic Formal OntologyMustafa Jarrar
 
Discrete Mathematics Course Outline
Discrete Mathematics Course OutlineDiscrete Mathematics Course Outline
Discrete Mathematics Course OutlineMustafa Jarrar
 
Business Process Design and Re-engineering
Business Process Design and Re-engineeringBusiness Process Design and Re-engineering
Business Process Design and Re-engineeringMustafa Jarrar
 
BPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsBPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsMustafa Jarrar
 
BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs  BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs Mustafa Jarrar
 
Introduction to Business Process Management
Introduction to Business Process ManagementIntroduction to Business Process Management
Introduction to Business Process ManagementMustafa Jarrar
 
Customer Complaint Ontology
Customer Complaint Ontology Customer Complaint Ontology
Customer Complaint Ontology Mustafa Jarrar
 
Subset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesSubset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesMustafa Jarrar
 
Schema Modularization in ORM
Schema Modularization in ORMSchema Modularization in ORM
Schema Modularization in ORMMustafa Jarrar
 
On Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineOn Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineMustafa Jarrar
 
Lessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesLessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesMustafa Jarrar
 
Presentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalPresentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalMustafa Jarrar
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsMustafa Jarrar
 
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsRiestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsMustafa Jarrar
 
Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Mustafa Jarrar
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql ProjectMustafa Jarrar
 
Jarrar: Logical Foundation of Ontology Engineering
Jarrar: Logical Foundation of Ontology EngineeringJarrar: Logical Foundation of Ontology Engineering
Jarrar: Logical Foundation of Ontology EngineeringMustafa Jarrar
 
Jarrar: Stepwise Methodologies for Developing Ontologies
Jarrar: Stepwise Methodologies for Developing OntologiesJarrar: Stepwise Methodologies for Developing Ontologies
Jarrar: Stepwise Methodologies for Developing OntologiesMustafa Jarrar
 
Jarrar: Ontology Modeling using OntoClean Methodology
Jarrar: Ontology Modeling using OntoClean MethodologyJarrar: Ontology Modeling using OntoClean Methodology
Jarrar: Ontology Modeling using OntoClean MethodologyMustafa Jarrar
 

Plus de Mustafa Jarrar (20)

Clustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment AnalysisClustering Arabic Tweets for Sentiment Analysis
Clustering Arabic Tweets for Sentiment Analysis
 
Classifying Processes and Basic Formal Ontology
Classifying Processes  and Basic Formal OntologyClassifying Processes  and Basic Formal Ontology
Classifying Processes and Basic Formal Ontology
 
Discrete Mathematics Course Outline
Discrete Mathematics Course OutlineDiscrete Mathematics Course Outline
Discrete Mathematics Course Outline
 
Business Process Design and Re-engineering
Business Process Design and Re-engineeringBusiness Process Design and Re-engineering
Business Process Design and Re-engineering
 
BPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical ConstructsBPMN 2.0 Analytical Constructs
BPMN 2.0 Analytical Constructs
 
BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs  BPMN 2.0 Descriptive Constructs
BPMN 2.0 Descriptive Constructs
 
Introduction to Business Process Management
Introduction to Business Process ManagementIntroduction to Business Process Management
Introduction to Business Process Management
 
Customer Complaint Ontology
Customer Complaint Ontology Customer Complaint Ontology
Customer Complaint Ontology
 
Subset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion RulesSubset, Equality, and Exclusion Rules
Subset, Equality, and Exclusion Rules
 
Schema Modularization in ORM
Schema Modularization in ORMSchema Modularization in ORM
Schema Modularization in ORM
 
On Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in PalestineOn Computer Science Trends and Priorities in Palestine
On Computer Science Trends and Priorities in Palestine
 
Lessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online CoursesLessons from Class Recording & Publishing of Eight Online Courses
Lessons from Class Recording & Publishing of Eight Online Courses
 
Presentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-finalPresentation curras paper-emnlp2014-final
Presentation curras paper-emnlp2014-final
 
Jarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 CallsJarrar: Future Internet in Horizon 2020 Calls
Jarrar: Future Internet in Horizon 2020 Calls
 
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 ProposalsRiestra: How to Design and engineer Competitive Horizon 2020 Proposals
Riestra: How to Design and engineer Competitive Horizon 2020 Proposals
 
Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020Bouquet: SIERA Workshop on The Pillars of Horizon2020
Bouquet: SIERA Workshop on The Pillars of Horizon2020
 
Jarrar: Sparql Project
Jarrar: Sparql ProjectJarrar: Sparql Project
Jarrar: Sparql Project
 
Jarrar: Logical Foundation of Ontology Engineering
Jarrar: Logical Foundation of Ontology EngineeringJarrar: Logical Foundation of Ontology Engineering
Jarrar: Logical Foundation of Ontology Engineering
 
Jarrar: Stepwise Methodologies for Developing Ontologies
Jarrar: Stepwise Methodologies for Developing OntologiesJarrar: Stepwise Methodologies for Developing Ontologies
Jarrar: Stepwise Methodologies for Developing Ontologies
 
Jarrar: Ontology Modeling using OntoClean Methodology
Jarrar: Ontology Modeling using OntoClean MethodologyJarrar: Ontology Modeling using OntoClean Methodology
Jarrar: Ontology Modeling using OntoClean Methodology
 

Dernier

UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 

Dernier (20)

UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 

Jarrar: Description Logic

  • 1. Jarrar © 2013 1 Dr. Mustafa Jarrar Sina Institute, University of Birzeit mjarrar@birzeit.edu www.jarrar.info Mustafa Jarrar: Lecture Notes on Description Logic, Birzeit University, Palestine Spring Semester, 2012 Artificial Intelligence Description Logic (and business rules)
  • 2. Jarrar © 2013 2 Watch this lecture and download the slides from http://jarrar-courses.blogspot.com/2011/11/artificial-intelligence-fall-2011.html
  • 3. Jarrar © 2013 3 This lecture • What and Why Description Logic • ALC Description Logic • Reasoning services in Description Logic Lecture Keywords: ‫الوصفي‬ ‫المنطق‬ ،‫المنطق‬،‫قواعد‬ ،‫االستنتاج‬ ‫مهام‬ ،‫المنطقي‬ ‫االستنتاج‬ ،‫االستنباط‬ ‫ا‬ ‫،صحة‬ ‫االستنتاج‬ ‫طرق‬ ،‫المفاهيمية‬ ‫النمذجة‬ ،‫العمل‬ ‫قواعد‬ ،‫االستنتاج‬‫ل‬‫جمل‬ ،‫المنطقية‬‫التناقض‬ ،‫الحدود‬ Logic, Description Logic, DL, ALC Description Logic, SHOIN, AL, DLR, Tbox, Abox, Reasoning, Reasoning services, Reasoners, Racer, HermiT, Business Rules, Conceptual Modeling, satisfiability, Unsatisfiability,
  • 4. Jarrar © 2013 4 Reading Material 1. All slides + everything I say 2. Prof. Enrico Franconi: Lecture notes on Description Logic http://www.inf.unibz.it/~franconi/dl/course/ 3. D. Nardi, R. J. Brachman. An Introduction to Description Logics. In the Description Logic Handbook, edited by F. Baader, D. Calvanese, D.L. McGuinness, D. Nardi, P.F. Patel-Schneider, Cambridge University Press, 2002, pages 5-44. http://www.inf.unibz.it/~franconi/dl/course/dlhb/dlhb-01.pdf 4. Sean Bechhofer, “The DIG Description Logic Interface: DIG/1.1 ” http://racer-systems.com/dl.php?file=NativeLibraries%252FDIGinterface11.pdf&typ=file&name=DIGinterface11.pdf Only Sections 2.1 and 2.2 are required (= the first 32 pages) * The slides in this lecture are based on and modify material largely from [2]
  • 5. Jarrar © 2013 5 Why Description Logics? If FOL is directly used without some kind of restriction, then • The structure of the knowledge/information is lost (no variables, concepts as classes, and roles as properties), • The expressive power of FOL is too high for having good (computational properties and efficient procedures). Based on [2]
  • 6. Jarrar © 2013 6 Description Logics Description logics are a family of logics concerned with knowledge representation. A description logic is a decidable fragment of first-order logic, associated with a set of automatic reasoning procedures. The basic constructs for a description logic are the notion of a concept and the notion of a relationship. Complex concept and relationship expressions can be constructed from atomic concepts and relationships with suitable constructs between them. Example: HumanMother ⊑ Female ⊓ HasChild.Person
  • 7. Jarrar © 2013 7 Axioms, Disjunctions and Negations x. Teaching-Assistant(x)   Undergrad(x)  Professor(x) Teaching-Assistant ⊑ Undergrad ⊔ Professor A necessary condition in order to be a teaching assistant is to be either not undergraduated or a professor. Clearly, a graduated student being a teaching assistant is not necessarily a professor; moreover, it may be the case that some professor is not graduated. x. Teaching-Assistant(x) ↔  Undergrad(x)  Professor(x) Teaching-Assistant ≐ Undergrad ⊔ Professor When the left-hand side is an atomic concept, the ⊑ symbol introduces a primitive definition (giving only necessary conditions) while the ≐ symbol introduces a real definition, with necessary and sufficient conditions. In general, it is possible to have complex concept expressions at the left- hand side as well. Based on [2]
  • 8. Jarrar © 2013 8 Description Logics Most known description logics are : A more practical and expressive description logic. C, D  A | ⊤ | ⊥|¬A | C ⊓ D | R.C | R.⊤ ALC Very expressive description logic, Capable of representing most database constructs.DLRidf Very popular description logic. The logic underlying OWL. SHOIN The simplest and less expressive description logic. C, D  A | C ⊓ D | R.C | R FL¯
  • 9. Jarrar © 2013 9 ALC Description logic (Syntax and Semantic) Constructor Syntax Semantics Primitive concept A AI  I Primitive role R RI  I  I Top ⊤ I Bottom ⊥  Complement C I CI Conjunction C ⊓ D CI  DI Disjunction C ⊔ D CI  DI Universal quantifier R.C {x | y. RI (x,y)  CI(y)} Extensional quantifier R.C {x | y. RI (x,y)  CI(y)} Woman ⊑ Person ⊓ Female Parent ⊑ Person ⊓ hasChild.⊤ Man ⊑ Person ⊓ Female NotParent ⊑ Person ⊓ hasChild.⊥ Examples:
  • 10. Jarrar © 2013 10 Closed Propositional Language Conjunction ( ⊓ ) is interpreted as intersection of sets of individuals. Disjunction ( ⊔ ) is interpreted as union of sets of individuals. Negation ( ) is interpreted as complement of sets of individuals. R.⊤  R. (C ⊓ D)  C ⊔ D (C ⊔ D)  C ⊓ D (R.C)  R.C (R.C)  R.C Based on [2]
  • 11. Jarrar © 2013 11 Formal Semantics An interpretation I = (I , .I) consists of: a nonempty set I (the domain) a function .I (the interpretation function) that maps – every individual to an element of I – every concept to a subset of I – every role to a subset of I  I An interpretation function .I is an extension function if and only if it satisfies the semantic definitions of the language. Based on [2]
  • 12. Jarrar © 2013 12 DL Knowledge Base DL Knowledge Base () normally separated into two parts:  = Tbox, Abox – TBox (Terminological Box) is a set of axioms in the form of (C ⊑ D , C ≐ D ) describing structure of domain (i.e., schema), Example: HappyFather ≐ Man ⊓ hasChild.Female Elephant ⊑ Animal ⊓ Large ⊓ Grey – ABox (Assertion Box) is a set of axioms in the form of (C(a), R(a, b)) describing a concrete situation (data), Example: HappyFather (John) hasChild(John,Mary)
  • 13. Jarrar © 2013 13 Knowledge Bases (Example) Tbox: Student ≐ Person ⊓ NAME.String ⊓ ADDRESS.String ⊓ ENROLLED.Course TEACHES.Course ⊑ Undergrad ⊓ Professor Abox: Student(Ali) ENROLLED(Ali; Comp338) (Student ⊔ Professor)(Dima) Based on [2]
  • 14. Jarrar © 2013 14 TBox: Descriptive Semantics An interpretation I satisfies the statement C ⊑ D if CI  DI. An interpretation I satisfies the statement C ≐ D if CI = DI. An interpretation I is a model for a TBox T if I satisfies all statements in T . Based on [2]
  • 15. Jarrar © 2013 15 Abox Interpretation If I = (I, .I) is an interpretation, C(a) is satisfied by I if aI  CI. R(a, b) is satisfied by I if (aI, bI)  RI. A set A of assertions is called an ABox. An interpretation I is said to be a model of the ABox A if every assertion of A is satisfied by I. The ABox A is said to be satisfiable if it admits a model. An interpretation I = (I, .I) is said to be a model of a knowledge base  if every axiom of  is satisfied by I. A knowledge base  is said to be satisfiable if it admits a model. Based on [2]
  • 16. Jarrar © 2013 16 Logical Implication  ╞  if every model of  is a model of  Example: TBox: TEACHES.Course ⊑ Undergrad ⊔ Professor ABox: TEACHES(Rami,Comp338), Course(comp388), Undergrad(Rami) ╞ Professor(Rami) ? Based on [2]
  • 17. Jarrar © 2013 17 Logical Implication What if: TBox: TEACHES.Course ⊑ Undergrad ⊔ Professor ABox: TEACHES(Rami,Comp388), Course(Comp388), Undergrad(Rami)  ╞ Professor(Rami) ?  ╞ Professor(Rami) ? Based on [2]
  • 18. Jarrar © 2013 18 Reasoning Services  Remember that a DL is typically associated with reasoning procedures.  There are several primitive/common reasoning services that most DL reasoners support: Concept Satisfiability  | C  ⊥ Student ⊓ Person the problem of checking whether C is satisfiable w.r.t. , i.e. whether there exists a model I of  such that CI   Subsumption  |= C ⊑ D Student ⊑ Person the problem of checking whether C is subsumed by D w.r.t. , i.e. whether CI  DI in every model I of  Satisfiability  |= Student ≐ Person the problem of checking whether  is satisfiable, i.e. whether it has a model. Based on [2]
  • 19. Jarrar © 2013 19 Reasoning Services (cont.) Instance Checking  |= C(a) Professor(john) the problem of checking whether the assertion C(a) is satisfied in every model of  Retrieval {a |  |= C(a) } Professor  Dima Realization {C |  |= C(a) } Dima  Professor Based on [2]
  • 20. Jarrar © 2013 20 Reduction to Satisfiability Concept Satisfiability  |= C  ⊥ ↔ exists x s.t.   {C(x)} has a model. Subsumption  |= C ⊑ D ↔   {C ⊓ D(x)} has no models. Instance Checking  |= C(a) ↔   {C(x)} has no models. D D C Based on [2]
  • 21. Jarrar © 2013 21 Some extensions of ALC Constructor Syntax Semantics Primitive concept A AI  I Primitive role R RI  I  I Top ⊤ I Bottom ⊥  Complement C I CI Conjunction C⊓D CI  DI Disjunction C⊔D CI  DI Universal quantifier R.C {x | y.RI (x,y)  CI(y)} Extensional quantifier R.C {x | y.RI (x,y)  CI(y)}
  • 22. Jarrar © 2013 22 Some extensions of ALC Constructor Syntax Semantics Primitive concept A AI  I Primitive role R RI  I  I Top ⊤ I Bottom ⊥  Complement C I CI Conjunction C⊓D CI  DI Disjunction C⊔D CI  DI Universal quantifier R.C {x | y.RI (x,y)  CI(y)} Extensional quantifier R.C {x | y.RI (x,y)  CI(y)} Cardinality (N) ≥n R {x | #{y | RI(x,y)} ≥ n} ≤n R {x | #{y | RI(x,y)} ≥ n} Qual. cardinality (Q) ≥n R.C {x | #{y | RI(x,y)  CI(y)} ≥ n} ≤n R.C {x | #{y | RI(x,y)  CI(y)} ≥ n} Enumeration (O) {a1 … an} {aI 1 … aI n} Selection (F) f : C {x  Dom(fI) | CI(fI(x))}
  • 23. Jarrar © 2013 23 Cardinality Restriction Role quantification cannot express that a woman has at least 3 (or at most 5) children. Cardinality restrictions can express conditions on the number of fillers: BusyWoman ≐ Woman ⊓ (≥ 3 CHILD) ConsciousWoman ≐ Woman ⊓ (≤ 5 CHILD) Notice: (≥1 R)  (R.) Based on [2]
  • 24. Jarrar © 2013 24 Cardinality Restriction BusyWoman ≐ Woman ⊓ (≥ 3 CHILD) ConsciousWoman ≐ Woman ⊓ (≤ 5 CHILD) Mary: Woman, CHILD:John, CHILD:Sui, CHILD:Karl |= ConsciousWoman(Mary) ? Based on [2]
  • 25. Jarrar © 2013 25 Roles as Functions A role is functional, is the filler functionally depends on the individual, i.e., the role can be considered as a function: R(x, y)  f(x) = y. For example, the roles CHILD and PARENT are not functional, while the roles MOTHER and AGE are functional. If a role is functional, we write:  f.C  f.c (selection operator) Based on [2]
  • 26. Jarrar © 2013 26 Individuals In every interpretation different individuals are assumed to denote different elements, i.e. for every pair of individuals a, b, and for every interpretation I, if a  b then aI  bI. This is called the Unique Name Assumption and is usually assumed in database applications. Example: How many children does this family have? Family(f), Father(f,john), Mother(f,sue), Son(f,paul), Son(f,george), Son(f,alex) |= (≥ 3 Son)(f) Based on [2]
  • 27. Jarrar © 2013 27 Enumeration Type (one-of) Weekday ≐ {mon, tue, wed, thu, fri, sat, sun} WeekdayI ≐ {monI, tueI, wedI, thuI, friI, satI, sunI} Citizen ≐ (Person ⊓ LIVES.Country) Palestinian ≐ (Citizen ⊓ LIVES.{Palestine})
  • 28. Jarrar © 2013 28 Racer (http://www.racer-systems.com/products/racerpro/index.phtm )
  • 29. Jarrar © 2013 29 • They offer reasoning services for multiple TBoxes and ABoxes. • They run as background reasoning engines. • They understand DIG, which is a simple protocol (based on HTTP) along with an XML Schema. Description Logic Reasoners <impliesc> <catom name=“Student"/> <catom name=“Person"/> </impliesc> Student ⊑ Person• Example: • For example: HermiT
  • 30. Jarrar © 2013 30 DIG Interface (http://dig.sourceforge.net/ )
  • 31. Jarrar © 2013 31 DIG Protocol DIG is only an XML schema for a description logic along with ask/tell functionality You write a new Knowledge base (using the DIG XML syntax), and send it to Racer using the TELL functionality. You can then write you Query/Question (using the DIG, XML syntax), and send it to Racer using the ASK functionality. You may communicate with the Racer through HTTP or SOAP.
  • 32. Jarrar © 2013 32 Create e a new Knowledge Base <?xml version="1.0" encoding="UTF-8"?> <newKB xmlns="http://dl.kr.org/dig/2003/02/lang" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"/> <?xml version="1.0" encoding="UTF-8"?> <response xmlns="http://dl.kr.org/dig/2003/02/lang" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang http://dl-web.man.ac.uk/dig/2003/02/dig.xsd"> <kb uri="urn:uuid:abcdefgh-1234-1234-12345689ab"/> The Response Message The newKB Message This URI should then be used during TELL and ASK requests made against the knowledge base
  • 33. Jarrar © 2013 33 Tell Syntax <?xml version="1.0" encoding="ISO-8859-1"?> <tells xmlns="http://dl.kr.org/dig/2003/02/lang" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang http://dl-web.man.ac.uk/dig/2003/02/dig.xsd" uri="urn:uuid:abcdefgh-1234-1234-12345689ab"> <defconcept name="driver"/> <equalc> <catom name="driver"/> <and> <catom name="person"/> <some> <ratom name="drives"/> <catom name="vehicle"/> </some> </and> </equalc> <defconcept name="person"/> <defconcept name="vehicle"/> <defrole name="drives"/> </tells> A TELL request must contain in its body a tells element, which itself consists of a number of tell statements. Example: Driver ⊑ Person ⊓ Drives.Vehicle Based on [4]
  • 34. Jarrar © 2013 34 Tell Syntax Tell Language Primitive Concept Introduction <defconcept name="CN"/> <defrole name="CN"/> <deffeature name="CN"/> <defattribute name="CN"/> <defindividual name="CN"/> Concept Axioms <impliesc>C1 C2</impliesc> <equalc>C1 C2</equalc> <disjoint>C1... Cn</disjoint> Role Axioms <impliesr>R1 R2</impliesc> <equalr>R1 R2</equalr> <domain>R E</domain> <range>R E</range> <rangeint>R</rangeint> <rangestring>R</rangestring> <transitive>R</transitive> <functional>R</functional> Individual Axioms <instanceof>I C</instanceof> <related>I1 R I2</related> <value>I A V</value> Concept Language Primitive Concepts <top/> <bottom/> <catom name="CN"/> Boolean Operators <and>E1... En</and> <or>E1... En</or> <not>E</not> Property Restrictions <some>R E</some> <all>R E</all> <atmost num="n">R E</atmost> <atleast num="n">R E</atleast> <iset>I1... In</iset> Concrete Domain Expressions <defined>A</defined> <stringmin val="s">A</stringmin> <stringmax val="s">A</stringmax> <stringequals val="s">A</stringequals> <stringrange min="s" max="t">A</stringrange> <intmin val="i">A</intmin> <intmax val="i">A</intmax> <intequals val="i">A</intequals> <intrange min="i" max="j">A</intrange> Role Expressions <ratom name="CN"/> <feature name="CN"/> <inverse>R</inverse> <attribute name="CN"/> <chain>F1... FN A</chain> Individuals <individual name="CN"/>
  • 35. Jarrar © 2013 35 Ask Syntax An ASK request must contain in its body an asks element. Multiple queries in one request is possible. <?xml version="1.0"?> <asks xmlns="http://dl.kr.org/dig/2003/02/lang"> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://dl.kr.org/dig/2003/02/lang" http://dl-web.man.ac.uk/dig/2003/02/dig.xsd" uri="urn:uuid:abcdefgh-1234-1234-12345689ab"> <satisfiable id="q1"> <catom name="Vehicle"/> </satisfiable> <descendants id="q2"> <and> <catom name="person"/> <some> <ratom name="drives"/> <catom name="vehicle"/> </some> </and> </descendants> <types id="q3"> <individual name="JohnSmith"></individual> </types> </asks> KB |= Vehicle asks about satisfiability of the Vehicle concept asks for all those concepts subsumed by the description given, i.e. all the drivers a |  |= Peron(a) ⊓Drives.Vehicle asks for the known types of the given individual C |  |= C(JohnSmith)
  • 36. Jarrar © 2013 36 Ask Syntax Ask Language Primitive Concept Retrieval <allConceptNames/> <allRoleNames/> <allIndividuals/> Satisfiability <satisfiable>C</satisfiable> <subsumes>C1 C2</subsumes> <disjoint>C1 C2</disjoint> Concept Hierarchy <parents>C</parents> <children>C</children> <ancestors>C</ancestors> <descendants>C<descendants/> <equivalents>C</equivalents> Role Hierarchy <rparents>R</rparents> <rchildren>R</rchildren> <rancestors>R</rancestors> <rdescendants>R<rdescendants/> Individual Queries <instances>C</instances> <types>I</types> <instance>I C</instance> <roleFillers>I R</roleFillers> <relatedIndividuals>R</relatedIndividuals>
  • 37. Jarrar © 2013 37 ْExamples of Using Description Logic in Conceptual Modeling and Business rules
  • 38. Jarrar © 2013 38 UML Class diagram (with a contradiction and an implication) Person Student Employee PhD Student Student ⊑ Person PhDStudent ⊑ Person Employee ⊑ Person PhD Student ⊑ Student ⊓ Employee Student ⊓ Employee ≐ ⊥ {disjoint}
  • 39. Jarrar © 2013 39 Infinite Domain: the democratic company Supervisor Employee Supervisor ⊑ =2 Supervises.Employee Employee ⊑ Supervisor Supervises 2..2 0..1 implies “the classes Employee and Supervisor necessarily contain an infinite number of instances”. Since legal world descriptions are finite possible worlds satisfying the constraints imposed by the conceptual schema, the schema is inconsistent. Based on [3]
  • 40. Jarrar © 2013 40 Example (in UML, EER and ORM) Employee Project WorksFor TopManager Manages Employee Project WorksFor Manages1..1 1..1 TopManger WorksFor Manages Project TopManger Employee 1..1 1..1
  • 41. Jarrar © 2013 41 Example (in UML, EER and ORM) Employee ⊑ =1 WorksFor.Project TopManager ⊑ Employee ⊓ =1Manages.Project Employee Project WorksFor Manages1..1 1..1 TopManger WorksFor.Project ⊑ Manages.Project ⊨ ?
  • 42. Jarrar © 2013 42 Another Example Person Course Taught By Study 1..3 1..1 StudentProfessor {complete,disjoint}
  • 43. Jarrar © 2013 43 Another Example Person Car Person ⊑ =1 Owns.Car ⊓ =1 Drives.Car Drive ≐ Owns Owns • The first 1..1 cardinality constraint means that every person must owns one car. • The second1..1 cardinality constraint means that every person must drives one car. • The equal constraint means that every person who owns a car is allowed to only drive that car, and vice versa.  The equal constraint is implied by both cardinality constraints. Drives equal 1..1 1..1
  • 44. Jarrar © 2013 44 Homework (Reason about UML/EER Diagrams) 1- Create a UML/EER diagram that contains some contradictions and implications. 2- Formulate this diagram in description logic, 3- Write at least 5 questions (reasoning services) to know whether the schema/concept/rule is satisfiable, and 3 questions whether something in the schema is implied? Hint: contradictionsimplication can be achieved throw the wrong use of disjointness and cardinality constraints (see examples in the next slide). Please remark that this project is not only to help you practice Description Logics, but also: 1) build correct UML/EER models and find problems automatically, 2) Reason about rules and business rules, and 3) you think of another usage (open your mind)! Each student should deliver one pdf file, contains: 1) the diagram 2) its formalization in DL, 3) the reasoning questions.
  • 45. Jarrar © 2013 45 Ontology Recall that a TBox can be used to specify the meaning of a terminology. That is, specify meaning in logic. Recall that a TBox can be depicted in EER/UML You may build your TBox in OWL (the Ontology Web Language), and share it on the web, so that that others can use it a reference to meaning of a terminology (ontology). This will be the topic of the coming lectures.