Practice: Concept Hierarchies as Ordered Structures

Prediction

A hierarchy has nine concepts: Thing, Animal, Mammal, Bird, Dog, Cat, Pet, WorkingAnimal, Nothing, with extensions over twelve individuals given by Animal = {1..8}, Mammal = {1,2,3,4,5}, Bird = {6,7,8}, Dog = {1,2}, Cat = {3}, Pet = {1,2,3,6}, WorkingAnimal = {2,4,5}. Of the 36 unordered pairs of distinct concepts, how many are incomparable, neither subsuming the other?

Enter the value. It is checked against the answer and the precision this task asks for.

2 hints available, least help first.

Hint 1: Retrieval cue

C subsumes D exactly when D 's extension is contained in C 's.

Hint 2: Next step

Thing and Nothing are comparable with everything, so only the middle seven concepts can contribute incomparable pairs.

Direct application

In the worked hierarchy, Mammal has extension {1,2,3,4,5} and Pet has {1,2,3,6}. The other concepts are Thing {1..12}, Animal {1..8}, Bird {6,7,8}, Dog {1,2}, Cat {3}, WorkingAnimal {2,4,5} and Nothing (empty). Which concepts are lower bounds of Mammal and Pet, subsumed by both, and does a meet exist among them?

Error diagnosis

In the worked hierarchy, the concepts subsuming both Dog and Cat are Thing, Animal, Mammal and Pet. A tool reports that Dog and Cat have no least upper bound. An engineer concludes the ontology is malformed and proposes deleting Pet. What is the accurate diagnosis?

Prediction

An ontology asserts Dog ⊑ Animal and defines DogOwner ≡ Person ⊓ ∃ hasPet.Dog and PetOwner ≡ Person ⊓ ∃ hasPet.Animal. No subsumption between the two owner concepts is asserted. What will a classifier report?

Error diagnosis

An ontology declares that the property hasPet has domain Person, intending to prevent anything other than a person from being given a pet. An individual Acme, asserted to be a Company, has a hasPet assertion recorded by a data-import error. The reasoner does not report a violation; instead it concludes Person(Acme). What happened, and what would produce the intended behaviour?

Error diagnosis

An ontology asserts that individual 11 is a Person and records no hasPet relation for them. A team queries for all individuals known not to be pet owners, expecting 11 in the result, and gets nothing. They file a bug against the reasoner. What is the accurate diagnosis?

Construction

An ontology defines HappyPetOwner ≡ Person ⊓ ∃ hasPet.Animal ⊓ Happy, and DogOwner ≡ Person ⊓ ∃ hasPet.Dog. An author expected the classifier to derive HappyPetOwner ⊑ DogOwner and it did not. Which addition would make that subsumption follow, and why?

Construction · Prediction · Error diagnosis · Explanation

A retailer's product ontology is about to ship. It declares:

  • Laptop ⊑ Computer, Tablet ⊑ Computer, Computer ⊑ Device
  • Portable ⊑ Device, and Laptop ⊑ Portable, Tablet ⊑ Portable
  • BusinessDevice ⊑ Device, and Laptop ⊑ BusinessDevice
  • hasAccessory with domain Device
  • AccessorisedItem ≡ ∃ hasAccessory.Thing
  • PortableBundle ≡ Portable ⊓ ∃ hasAccessory.Charger, with Charger ⊑ Accessory

The team reports three problems:

  1. A merchandising tool asks for the most specific category containing both Tablet and BusinessDevice and gets nothing.
  2. The classifier places PortableBundle under AccessorisedItem, which nobody asserted, and a reviewer wants it removed.
  3. A data-quality report lists every Device with no recorded accessory as "not accessorised", but the reasoner returns no such individuals.

Work through the following.

  1. Problem 1. Determine the upper bounds of Tablet and BusinessDevice among the named concepts and say whether a join exists. Explain the result in terms of the order.
  2. Problem 2. Say whether the derived subsumption is correct, justify it from the axioms, and advise the reviewer.
  3. Problem 3. Explain why the reasoner returns nothing and what would produce the report the team wants.
  4. A risk they have not reported. Examine the hasAccessory domain declaration and say what it will do when an accessory is recorded against something that is not a Device.
  5. What you would change. Give the specific additions or corrections you would make before shipping, and say which of the three reported problems are not problems.

Write your answer, then compare it with the worked solution.

3 hints available, least help first.

Hint 1: Retrieval cue

For part 1, list every concept subsuming each of the two, then intersect the lists.

Hint 2: Concept cue

For part 2, ask what ∃ r . C ⊑ ∃ r . D requires of C and D .

Hint 3: Strategy cue

For part 4, read the domain declaration as a sentence beginning "everything with this property is..." and ask what follows for a non-device.

Compare with the worked solution

Comparing does not record a result. Judging your own written answer cannot show that you can do this without help.

1. Problem 1: the missing join. Upper bounds of Tablet and BusinessDevice are the concepts subsuming both. Tablet is subsumed by Computer, Portable and Device; BusinessDevice is subsumed by Device only. The single common upper bound is therefore Device, and since it is the only one it is trivially the least, so a join does exist here, and it is Device. The tool getting nothing is the more interesting finding, and it points at the query rather than the ontology: asking for "the most specific category containing both" presumably excluded the top-level Device as uninformative, or asked for a common subclass rather than a superclass. I would establish which before changing anything. The general point still holds and is worth recording for the team: subsumption is a partial order, Computer and Portable and BusinessDevice are pairwise incomparable, and pairs with no join do occur. Here Tablet and BusinessDevice are not such a pair. 2. Problem 2: the derived subsumption is correct. PortableBundle ≡ Portable ⊓ ∃ hasAccessory.Charger. Anything in it has a hasAccessory value, so it satisfies ∃ hasAccessory.Thing, which defines AccessorisedItem. The conjunct ∃ hasAccessory.Charger is subsumed by ∃ hasAccessory.Thing by monotonicity of the existential restriction, and adding the Portable conjunct only narrows it further. So PortableBundle ⊑ AccessorisedItem is entailed and cannot be removed without removing what entails it. I would tell the reviewer the edge is a consequence of their own definitions, not an error: a classified hierarchy routinely contains edges nobody drew, and this is the mechanism working. If they do not want it, the definitions have to change, and the change would make PortableBundle not require an accessory, which is presumably not intended. 3. Problem 3: the open-world reading. The reasoner returns nothing because the absence of a hasAccessory assertion does not entail that a device has no accessory. Under the open-world assumption the ontology entails neither AccessorisedItem(x) nor its negation for such an individual, so there are no individuals known not to be accessorised. Three ways to get the report they want: - Query for individuals not known to be accessorised, which is a question about the knowledge base rather than the world, and is answerable directly.
- Close the property for the individuals concerned, asserting for each that it has at most zero hasAccessory values, which is laborious and rarely what is wanted.
- Use a closed-world validation mechanism such as SHACL for the data-quality report and leave the reasoner to entailment. This is the right answer for a data-quality report, whose entire purpose is to find missing information. 4. The unreported risk: the domain declaration. hasAccessory with domain Device is an axiom, not a constraint. It says everything with a hasAccessory value is a Device. When an accessory is recorded against something that is not a device, a warranty, a gift card, a bundle placeholder, the reasoner will not reject it; it will infer that the thing is a Device. That inference then propagates: the misclassified individual joins every query over Device, and if it is also asserted to be something disjoint from Device, the individual becomes unsatisfiable and the whole ontology may be reported inconsistent. Either outcome is worse than a rejected import, and neither is visible until it happens. This is the most serious item in the audit and the team has not listed it. 5. What I would change. - Not a problem: the derived PortableBundle ⊑ AccessorisedItem. Leave it; explain it.
- Not an ontology problem: the missing join in problem 1. Device is the join; investigate the merchandising query.
- Not a reasoner problem: problem 3. Move the data-quality check to a closed-world validator, and rewrite the report's wording so "not accessorised" becomes "no accessory recorded", which is what the data actually supports.
- Change before shipping: decide whether the hasAccessory domain is meant as an inference or a constraint. If a constraint, remove the domain axiom and enforce it in validation. If an inference, add disjointness axioms between Device and the other top-level types so a bad import produces an inconsistency that is caught, rather than a silent misclassification.
- Add for clarity: disjointness between Computer and any sibling categories that genuinely cannot overlap. Without it the classifier cannot detect contradictory data, and most of the value of running a reasoner over a catalogue is exactly that detection.

A complete answer does each of these:

  • verifies order axioms
  • computes meet and join
  • detects missing bounds
  • predicts derived subsumption
  • diagnoses open world result
Practice data

Your practice record is stored in this browser only. Clearing it removes every answer and every scheduled review, and cannot be undone.

Results update as you type. Use the up and down arrow keys to move between results, Enter to open one, and Escape to close.

Type to search.

Settings

Appearance

Interface density

Your record

Your progress is stored in this browser and nowhere else: an identifier, the answers you have given, the mastery states and review schedule derived from them, and the lesson you last opened. Clearing it makes you a new learner on this device. It cannot be undone, and it will not affect your appearance or density settings.

Focus timer

Focus--minutes remaining

Phase

Kept in this browser only, and used to label the session in your own history.

Today

Nothing recorded yet. Finish a focus session and it will appear here.

Settings

Focus sessions between long breaks.

Sessions you are aiming for in a day.

Notifications

Your history

Sessions are stored in this browser and nowhere else. They are not evidence and never reach your mastery record.