klinovp / pronto

Probabilistic reasoner for OWL ontologies

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pronto: a probabilistic OWL reasoner

=============

Pronto is a probabilistic reasoner built on top of Pellet [1] that enables probabilistic knowledge representation and reasoning in OWL ontologies. Pronto is shipped as a Java library equipped with a command line tool for demonstrating its capabilities. The main features are:

* Adding probabilistic statements to an ontology.
* Inferring new probabilistic statements from a probabilistic 
  ontology
* Explaining results of probabilistic reasoning

You can find more information about Pronto in doc/basic.pdf. There is a complete example of Pronto usage with a probabilistic ontology in examples/brc directory.

Installation

Unzip the pronto distribution file into a directory of your choice.

TODO explain how to install GLPK

You can run Pronto command-line program using the script pronto.bat on Windows systems or pronto.sh on Unix systems. The command-line program expects the following arguments:

pronto.bat (or: .sh, if you are on a Mac/Unix)

mode can be 's' (probabilistic part in a separate file) or 'e' (embedded into classical part)

query file format: *

supported queries:

  • entail
  • entail
  • psat - decides probabilistic satisfiability
  • consistency - decides probabilistic consistency
  • improbable - determines improbable classes (if any)

Types of queries correspond to the following features:

* Entailing of a generic (TBox) conditional constraint - 
  expression of the form (C|D)[l,u] where C and D are DL classes
* Entailing of a concrete (ABox) conditional constraint - 
  expression of the form (C|Thing)[l,u] for some individual (where 
  C is a class)
* Checking that probabilistic ontology is satisfiable (e.g. has 
  probabilistic model)
* Checking the probabilistic ontology is consistent (e.g. all 
  conflicts between probabilistic axioms can be resolved during 
  reasoning). See details on "lexicographic entailment" in the 
  original papers by T. Lukasiewicz [2]
* Retrieving all classes that cannot consistently have probability 
  greater than zero. In other words, any constraint of the form 
  (C|Thing)[x,1] where x > 0 would make the ontology inconsistent

Compiling

If you would like to rebuild Pronto from source files Pronto comes with an Ant [3] build file. Packaging can easily be done by running the command "ant dist" from Pronto's root directory. The resulting jar file is named "pronto.jar" and put under dist/lib directory. The main class in the jar file is uk.ac.manchester.cs.pronto.Pronto.

[1] https://github.com/complexible/pellet [2] Thomas Lukasiewicz, "Probabilistic Description Logics for the Semantic Web," available at: http://www.kr.tuwien.ac.at/research/reports/rr0605.pdf [3] http://ant.apache.org/

About

Probabilistic reasoner for OWL ontologies

License:Apache License 2.0


Languages

Language:Java 99.4%Language:Web Ontology Language 0.5%Language:Batchfile 0.1%Language:Shell 0.0%