A forward chaining based reasoner.
A forward chaining implementation of the RDFS entailment regime.
Creates a new RDD by performing bulk iterations using the given step function.
A forward chaining based reasoner.
This rule-based forward chaining reasoner implementation is based on the paper
This rule-based forward chaining reasoner implementation is based on the paper
'Pushing the EL envelope' by Baader, Brandt, Lutz. IJCAI. Vol. 5. 2005.
The paper does not cover the whole OWL 2 EL profile and makes some assumptions w.r.t. the allowed axioms. Given the set BC that contains
- owl:Thing - all concept names - all nominals { a } (with just one individual!) - concrete domain descriptions p(f1, ..., fk) (not used here)
The allowed general concept inclusions are the following (with C1, C2 \in BC, D \in BC \cup { owl:Nothin }):
- C1 \sqsubseteq D - C1 \sqcap C2 \sqsubseteq D - C1 \sqsubseteq \exists r.C2 - \exists r.C1 \sqsubseteq D
Role inclusions may be of the form
- r \sqsubseteq s , or - r1 o r2 \sqsubseteq s
We implemented the completion rules that were feasible in our setting.
Naming conventions: - C, C1, C2 --> class names, or nominals (with just one individual), or owl:Thing - D, D1, D2 --> class names, or nominals (with just one individual), owl:Thing, or owl:Nothing
A naive implementation of the forward chaining based reasoner that does fix-point iteration, i.e.
A naive implementation of the forward chaining based reasoner that does fix-point iteration, i.e. it applies all rules in each iteration until no new data has been generated. .
A forward chaining implementation of the OWL Horst entailment regime.
An optimized implementation of the forward chaining based reasoner.
An optimized implementation of the forward chaining based reasoner using Spark data structures and operations.
A forward chaining implementation of the RDFS entailment regime.
A forward chaining implementation of the RDFS entailment regime.
An engine to compute the transitive closure (TC) for a set of triples given in several datastructures.
Creates a new RDD by performing bulk iterations using the given step function. The first RDD the step function returns is the input for the next iteration, the second RDD is the termination criterion. The iterations terminate when either the termination criterion RDD contains no elements or when
maxIterations
iterations have been performed.