Table of Contents
Realization of a reasoner that takes as input a concept (ALC), which is provided as input through a serialization of OWL/OWL2 (remember that owl-APIs take serializations and automatically create the Java data structures needed for the computation), which it returns true, if the concept is satisfiable, or false, if it is unsatisfiable.
The reasoner is PSPACE (i.e. use at least those forms of visits in depths that release memory, so that you are not in an EXPSPACE context). Algorithm used is Dependency-directed backtracking.
To verify the correctness of the algorithm, a battery of tests has been implemented consisting of a minimum of 30 concepts, the results of which will be compared to the results obtained by HermiT, a well-known reasoner whose correctness is already known.
A presentation is available (only in Italian) in which there is a detailed explanation of the algorithm, the main functions and the use of the GUI.
Download repo and execute jar file (ALC-Reasoner/out/artifacts/UrbanoReasoner_jar/) or recompile sources in IDE (i.e. Eclipse / JetBrains ecc.)
Luigi Urbano, 0xUrbz
Marco Urbano, marcourbano.me
This repository corresponds to a university project for the Semantic Web course.
The aim is to provide other students or researchers with a basis for implementing their projects.
This repository is not intended as the best solution to the problem.
Problems or reports are unlikely to be followed up by contributors.
It is hoped that anyone who wants to implement a better version of the project can fork and work on it.
Distributed under the MIT License. See LICENSE
for more information.