TRILL framework is composed of three systems able to answer queries to Description Logics knowledge bases using a tableau algorithm. They return the probability of the query, which represents the degree of belief of its truth.
Prolog non-determinism is used for easily handling non-deterministic expansion rules that produce more than one tableau.
All the systems are able to handle probabilistic ontologies following the DISPONTE semantics, applying the distribution semantics to Description Logics.
TRILL framework contains:
TRILL (Tableau Reasoner for descrIption Logics in Prolog) that implements the tableau algorithm for SHOIQ description logics, it returns the set of explanations for a query or its probability;
TRILLP (Tableau Reasoner for descrIption Logics in Prolog powered by Pinpointing formula) that implements the tableau algorithm for SHI description logics, it returns a pinpointing formula using the techniques proposed by Baader and Penaloza [Baader and Penaloza, 2010] representing the set of explanations for a query or its probability;
TORNADO (Trill powered by pinpOinting foRmulas and biNAry DecisiOn diagrams) that implements the tableau algorithm for SHI description logics and returns a binary decision diagram modeling the pinpointing formula or the corresponding probability.
The entire framework is available for SWI-Prolog. For TRILL and TRILLP, there is also Yap Prolog version, which is no longer maintained. The Yap and SWI versions differ in the features offered.
You can try online the three systems at TRILLonSWISH, where the SWI-Prolog version is used.
You can also try TRILL by using BUNDLE, on your machine by configuring JPL, or online here.
If you are interested in the Yap version, the code is available here. In the folder reachable following teh link there are several files: trill.pl is the version that does not compute the probability of the query, it returns only the set of explanations. trillProb.pl is the probabilistic version, it returns also the probability of queries. At the link above TRILLP is also available in its Yap version in the archive TRILLP.zip.
[Baader and Penaloza, 2010] Franz Baader and Rafael Penaloza. “Axiom Pinpointing in General Tableaux”. Journal of Logic and Computation, 20(1):5–34, 2010.
Riccardo Zese and Giuseppe Cota. Optimizing a tableau reasoner and its implementation in prolog. Journal of Web Semantics, 71(100677):1–22, 2021. [ bib | DOI | http ]
Riccardo Zese, Elena Bellodi, Giuseppe Cota, Fabrizio Riguzzi, and Evelina Lamma. Probabilistic DL reasoning with pinpointing formulas: A Prolog-based approach. Theory and Practice of Logic Programming, 19(3):449–476, 2019. [ bib | DOI | .pdf ]
Riccardo Zese. Probabilistic Semantic Web, volume 28 of Studies on the Semantic Web. IOS Press, 2017. [ bib | DOI | http ]