Consider a class expression (CE): $\text{Animal} ⊓ \text{Cat}$. To retrieve all individuals that fulllfill the class expression, a reasoner would first look at all animals then at all cats and calculate the cut. It is clear to a human reader with their background knowledge that it is sufficient to look at $\text{Cat}$ s only (because $\text{Cat}⊏\text{Animal}$ ). However, a machine can draw this conclusion only if it has information on the hierarchical relation between $\text{cat}$ and $\text{animal}$. Your task in the thesis will be to extract all necessary information and apply simplifications on class expressions for a given knowledge base.
You will work on an existing OWL knowledge base system based on Tentris that supports reasoning services like individuals retrieval by class expression. The system, tentris-cwr, supports closed world reasoning with a pre-materialized database. Materialisation is here the process of making all statements explicit, e.g. if $\text{Cat}(\text{miezi})$ also $\text{Animal}(\text{miezi})$. You will be to implement the necessary bits and pieces to optimize class expressions such that they can be evaluated faster. Your implementation should support $\mathcal{ALC\ HR}$ (see https://en.wikipedia.org/wiki/Description_logic#Naming_convention)
The bachelor thesis includes:
What you need to know:
Read up on Description Logics, RDF, OWL and Tentris: