Semantic reasoner
Encyclopedia
A semantic reasoner, reasoning engine, rules engine, or simply a reasoner, is a piece of software able to infer logical consequences from a set of asserted facts or axioms. The notion of a semantic reasoner generalizes that of an inference engine
, by providing a richer set of mechanisms to work with. The inference rules are commonly specified by means of an ontology language, and often a description language
. Many reasoners use first-order predicate logic to perform reasoning; inference
commonly proceeds by forward chaining
and backward chaining
. There are also examples of probabilistic reasoners, including Pei Wang's non-axiomatic reasoning system, Novamente's probabilistic logic network
, and Pronto - probabilistic description logic
reasoner.
Inference engine
In computer science, and specifically the branches of knowledge engineering and artificial intelligence, an inference engine is a computer program that tries to derive answers from a knowledge base. It is the "brain" that expert systems use to reason about the information in the knowledge base for...
, by providing a richer set of mechanisms to work with. The inference rules are commonly specified by means of an ontology language, and often a description language
Description language
Description language may refer to:* Interface description language aka interface definition language ** Regular Language description for XML ** Web Services Description Language ** Page description language...
. Many reasoners use first-order predicate logic to perform reasoning; inference
Inference
Inference is the act or process of deriving logical conclusions from premises known or assumed to be true. The conclusion drawn is also called an idiomatic. The laws of valid inference are studied in the field of logic.Human inference Inference is the act or process of deriving logical conclusions...
commonly proceeds by forward chaining
Forward chaining
Forward chaining is one of the two main methods of reasoning when using inference rules and can be described logically as repeated application of modus ponens. Forward chaining is a popular implementation strategy for expert systems, business and production rule systems...
and backward chaining
Backward chaining
Backward chaining is an inference method that can be described as working backward from the goal...
. There are also examples of probabilistic reasoners, including Pei Wang's non-axiomatic reasoning system, Novamente's probabilistic logic network
Probabilistic logic network
A probabilistic logic network is a novel conceptual, mathematical and computational approach to uncertain inference; inspired by logic programming, but using probabilities in place of crisp truth values, and fractional uncertainty in place of crisp known/unknown values...
, and Pronto - probabilistic description logic
Description logic
Description logic is a family of formal knowledge representation languages. It is more expressive than propositional logic but has more efficient decision problems than first-order predicate logic....
reasoner.
Non-free software
- Bossam (software), an RETE-based rule engine with native supports for reasoning over OWL ontologies, SWRL rules, and RuleML rules.
- DLog, Resolution based Description Logic ABox reasoner that translates to Prolog (DLog).
- OWLIM, a high-performance semantic repository developed in Java and available in two versions: free SwiftOWLIM and commercial BigOWLIM. Supports a subset of OWL-Lite semantics, which can be configured through rule-set definition and selection. (OWLIM)
- RacerPro, a semantic web reasoning system and information repository (RacerPro)
- SHERSherSher can have a variety of meanings:* Sher , the common word for couplet in Persian and Urdu* Sher , a form of dance in Eastern European folk music, notably Russian and Klezmer music*Sher , Ahmedabad district...
, a scalable Pellet-backed OWL DL reasoner (SHER). - OntoBroker, highly scalable SemanticWeb middleware (OntoBroker).
Free software
- BaseVISor, a versatile forward chainingForward chainingForward chaining is one of the two main methods of reasoning when using inference rules and can be described logically as repeated application of modus ponens. Forward chaining is a popular implementation strategy for expert systems, business and production rule systems...
inference engine specialized to handle facts in the form of RDF triples with support for OWL 2 RL and XML Schema Datatypes (BaseVISor). - Cwm, a forward chaining reasoner which can be used for querying, checking, transforming and filtering information. Its core language is RDF, extended to include rules, and it uses RDF/XML or N3 serializations as required. (CWM)
- DroolsDroolsDrools is a business rule management system with a forward chaining inference based rules engine, more correctly known as a production rule system, using an enhanced implementation of the Rete algorithm....
, a forward chaining inference based rules engine that uses an enhanced implementation of the Rete algorithmRete algorithmThe Rete algorithm is an efficient pattern matching algorithm for implementing production rule systems. The Rete algorithm was designed by Dr Charles L. Forgy of Carnegie Mellon University, first published in a working paper in 1974, and later elaborated in his 1979 Ph.D. thesis and a 1982 paper...
. - FaCTFactA fact is something that has really occurred or is actually the case. The usual test for a statement of fact is verifiability, that is whether it can be shown to correspond to experience. Standard reference works are often used to check facts...
, a description logicDescription logicDescription logic is a family of formal knowledge representation languages. It is more expressive than propositional logic but has more efficient decision problems than first-order predicate logic....
(DL) classifier. (FaCT) - FaCT++, the new generation of FaCT OWL-DL reasoner. (FaCT++)
- Hoolet, reasons over OWL-DL ontologies by translating them to full first-order logic and then applying a first-order theorem prover. (Hoolet)
- Jena (framework)Jena (framework)Jena is an open source Semantic Web framework for Java. It provides an API to extract data from and write to RDF graphs. The graphs are represented as an abstract "model". A model can be sourced with data from files, databases, URLs or a combination of these...
, an open source semantic web framework for Java which includes a number of different semantic reasoning modules. - KAON2 is an infrastructure for managing OWL-DL, SWRLSWRLSWRL is a proposal for a Semantic Web rules-language, combining sublanguages of the OWL Web Ontology Language with those of the Rule Markup Language ....
, and F-LogicF-logicF-logic is a knowledge representation- and ontology language. F-logic combines the advantages of conceptual modeling with object-oriented, frame-based languages and offers a declarative, compact and simple syntax, as well as the well-defined semantics of a logic-based language.Features include,...
ontologies. - Large Knowledge Collider or LarKC is a large scale distributed reasoner that focuses on performance by allowing incomplete reasoning
- Pellet, an open-source Java OWL DL reasoner. (Pellet)
- ProvaProvaProva is an open source programming language that combines Prolog with Java.- Description :Prova is a rule-based scripting system that is used for middleware. The language combines imperative and declarative programming by using a prolog syntax that allows calls to Java functions...
, an open-source Semantic Web rule engine which supports data integration via SPARQL queries and type systems (RDFS, OWL ontologies as type system). (Prova) - SweetRules, an integrated set of tools for Semantic webSemantic WebThe Semantic Web is a collaborative movement led by the World Wide Web Consortium that promotes common formats for data on the World Wide Web. By encouraging the inclusion of semantic content in web pages, the Semantic Web aims at converting the current web of unstructured documents into a "web of...
rules and ontologies. (SweetRules) - HermiTHermitA hermit is a person who lives, to some degree, in seclusion from society.In Christianity, the term was originally applied to a Christian who lives the eremitic life out of a religious conviction, namely the Desert Theology of the Old Testament .In the...
, the first publicly-available OWL reasoner based on a novel “hypertableau” calculus which provides much more efficient reasoning than any previously-known algorithm. (HermiT)
Reasoner comparison
BaseVISor | Bossam | Hoolet | Pellet | KAON2 | RacerPro | Jena | FaCT | FaCT++ | SweetRules | OWLIM | OntoBroker | HermiT | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
OWL-DL Entailment | No | Unknown | Yes | Yes | Yes | Yes | No complete reasoner included with standard distribution | Yes | Yes | No | No | Yes | Yes |
Supported expressivity for reasoning | R-entailment, OWL 2 RL | Unknown | Unknown | SROIQ(D) | SHIQ(D) | SHIQ(D-) | varies by reasoner (incomplete for nontrivial description logics) | SHIQ | SROIQ(D) | Unknown | R-entailment, OWL 2 RL | OWL: SHIQ(D) (for OntoBroker 6.1: Subset of OWL-RL); F-logic: normal logic, wellfounded semantics | SHOIQ+ |
Reasoning algorithm | Rule-based, Rete | Rule-based | First-order prover | Tableau | Resolution & Datalog | Tableau | Rule-based | Tableau | Tableau | Rule-based | Rule-based | OWL: Resolution & Datalog; F-logic: Rule-based (BottomUp, MagicSet, DynamicFiltering, QSQ) | Hypertableau |
Consistency checking | Yes | Unknown | Yes | Yes | Yes | Yes | Incomplete for OWL DL | Yes | Yes | No | Yes | Yes | Yes |
DIG Support | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No |
Rule Support | Yes (Own rule format) | Yes (SWRL & own rule format) | Yes (SWRL) | Yes (SWRL—DL Safe Rules) | Yes (SWRL—DL Safe Rules) | Yes (SWRL—not fully supported) & own rule format | Yes (Own rule format) | No | No | Yes (SWRL, RuleML, Jess) | Yes (Own format) | Yes (SWRL, RIF, F-logic, ObjectLogic) | Yes (SWRL—DL Safe Rules) |
Version | 2.0 | 0.9b45 | Unknown | 2.0.2 | 2008-06-29 | 2.0 preview | 2.5.4 | Unknown | 1.1.8 | 2.1 | 2.x/3.x | 6.1 | 1.3.4 |
Licensing | Free/ closed-source (academic and research use) & Non-Free / closed-source | Free/ closed-source | Free/ open-source | Free/ open-source & Non-Free/ closed-source | Free/ closed-source | Non-Free/ closed-source | Free/ open-source | Free/ open-source | Free/ open-source | Free/ open-source | Free/ open-source & Non-Free/ closed-source | Non-Free/ closed-source | Free/ open-source |
See also
- Business rules engineBusiness rules engineA business rules engine is a software system that executes one or more business rules in a runtime production environment. The rules might come from legal regulation , company policy , or other sources...
- Expert systems
- Doxastic logic
- Method of analytic tableauxMethod of analytic tableauxIn proof theory, the semantic tableau is a decision procedure for sentential and related logics, and a proof procedure for formulas of first-order logic. The tableau method can also determine the satisfiability of finite sets of formulas of various logics. It is the most popular proof procedure...
External links
- OWL 2 Reasoners listed on W3C OWL Working Group homepage
- SPARQL Query Language for RDF
- Introduction to Description Logics DL course by Enrico Franconi, Faculty of Computer Science, Free University of Bolzano, Italy
- Marko Luther, Thorsten Liebig, Sebastian Böhm, Olaf Noppens: Who the Heck Is the Father of Bob?. ESWC 2009: 66-80
- Jurgen Bock, Peter Haase, Qiu Ji, Raphael Volz. Benchmarking OWL Reasoners. In ARea2008 - Workshop on Advancing Reasoning on the Web: Scalability and Commonsense (June 2008)
- Tom Gardiner, Ian Horrocks, Dmitry Tsarkov. Automated Benchmarking of Description Logic Reasoners. Description Logics Workshop 2006
- OpenRuleBench Senlin Liang, Paul Fodor, Hui Wan, Michael Kifer. OpenRuleBench: An Analysis of the Performance of Rule Engines. 2009. Latest benchmarks at OpenRuleBench website.
- Pronto, a probabilistic description logicDescription logicDescription logic is a family of formal knowledge representation languages. It is more expressive than propositional logic but has more efficient decision problems than first-order predicate logic....
reasoner.