Attachments include information that complements slide content. The following uses playful “lorem ipsum” style text to illustrate presentation of additional information.
In the context of knowledge sharing, I use the term ontology to mean a specification of a conceptualization. That is, an ontology is a description (like a formal specification of a program) of the concepts and relationships that can exist for an agent or a community of agents.
Reasoners are computer programs that can infer logical consequences from a set of facts (axioms), which are usually the data stored in an ontology.
For example, the following fact: “a Student is a Person”, can be expressed in an ontology. The fact: “Bob is a Student”, can be stored in a database. A reasoner is able to infer the following implicit fact: “Bob is a Person”.
But before discussing reasoning, we need to introduce two concepts:
CWA is the assumption that what is not known to be true must be false. This is applied when a system has complete information, such as airline reservation systems.
OWA is the opposite. OWA is the assumption that what is not known to be true is simply unknown. It applies when a system has incomplete information. For example, if a patient’s clinical history does not include a particular allergy, it would be incorrect to state that the patient does not suffer from that allergy.
Unlike an ontology, reasoning rules operate under CWA.
This means that whatever is not derivable from a set of reasoning rules is considered false, but may be subject to change if further knowledge is gained.
In other words, like a database, a reasoner will only infer new information from existing information that has been recorded.
A reasoner does not predict what might happen in the future.
A reasoner connects the dots as they exist today.
For Description Logics we begin by defining Concepts. In our example, Concepts are people.
In this case our Concepts are Person, Woman, Father, and Mother. We express relationships among each Person with symbols:
At this point we also need to introduce:
so that we can relate Children to Parent when we want to talk about our children.
The next step is to define the Roles performed by each Person.
The new terms and symbols are:
Now we'll introduce a more complex Person and their Role.
One way to define a Concept is to state “what it is” (as we did above). Another way is to state “what it is not” (known as negation).
The new symbols are:
Now let's ask a Person to express emotion.
The new symbol is:
Ancestry is a problem where reasoning works well. If we define a grandmother, her children and children’s children, we then can infer which people are uncles, aunts, cousins, and nephews.
Similarly we can figure out all of the people who work for subsidiaries of a given parent without that fact being explicitly documented.
Here is a problem we can solve: