CAPI: Connection-minimal Abduction using Prime Implicates
CAPI is a tool to perform abduction for EL TBoxes. Specifically, it computes, given a TBox and a subsumption relation that does not follow from the TBox, a set of axioms that could be added to the TBox to produce the entailment. From all the possibilities of achieving this, CAPI computes those solutions that are "connection-minimal".
Since 2022-12-13, version 0.2 is available, which comes with additional post-processing options.
More information and technical details of the underlying methods can be found in the following publications:
F. Haifani, P. Koopmann, and S. Tourret: Connection Minimal Abduction in EL via Translation in FOL (Extended Abstract). Description Logics Worksop (DL-2022). Best student paper. CEUR-WS.org, 2022. Link
F. Haifani, P. Koopmann, and S. Tourret: Introducing Connection Minimal Abduction for Ontologies. Informal Proceedings of the 2nd Workshop on Explainable Logic-Based Knowledge Representation (XLoKR-2021), 2021. Link
F. Haifani, P. Koopmann, and S. Tourret: Abduction in via Translation to FOL. In Proceedings of the Second Workshop on Second-Order Quantifier Elimination and Related Topics (SOQE 2021), volume 3009 of CEUR Workshop Proceedings, pages 46–58. CEUR-WS.org, 2021. Link
If you have any queries, suggestions or noticed any problems or bugs, please send me a message: email@example.com
To compile, CAPI requires Maven (available from https://maven.apache.org), Java version >=9, and a recent C compiler.
Compile the Java component:
cd java_component mvn package cp target/capi-java-component-0.2-SNAPSHOT-jar-with-dependencies.jar .. cd ..
Compile the SPASS component:
cd spass make clean make cp SPASS .. cd ..
CAPI is used as follows from the command line to generate hypotheses for a missing entailed concept inclusion:
./generate-hypotheses.sh OWL-FILE SUBCLASS_IRI SUPER_CLASS_IRI [TIME_LIMIT=10]
where OWL-FILE points to an ontology to be used as background knowledge and SUBCLASS_IRI and SUPERCLASS_IRI determine the observation (the missing entailment to be fixed or explained), and the optional argument TIME_LIMIT sets the time limit to the prime implicate generation (default is 10 seconds). Since version 0.2, additional options are provided to post-process the hypotheses, e.g. by simplifying conjunctions or removing redundant axioms. See README.md for details.
The list of hypotheses is then printed to the standard output.
The following will compute axioms to be added to the pizza ontology to make Margherita a subclass of MeatyPizza:
./generate-hypotheses.sh pizza.owl http://www.co-ode.org/ontologies/pizza/pizza.owl#Margherita \ http://www.co-ode.org/ontologies/pizza/pizza.owl#MeatyPizza \ 2 simplify-conjunctions remove-redundant-axioms semantically-ordered