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 logic 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 non-axiomatic reasoning systems, and probabilistic logic networks.
Notable semantic reasoners and related software:
Free to use (closed source)
- Cyc inference engine, a forward and backward chaining inference engine with numerous specialized modules for high-order logic.
- KAON2 is an infrastructure for managing OWL-DL, SWRL, and F-Logic ontologies.
Free software (open source)
- Cwm, a forward-chaining reasoner 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.
- Drools, a forward-chaining inference-based rules engine which uses an enhanced implementation of the Rete algorithm.
- Evrete, a forward-chaining Java rule engine that uses the Rete algorithm and is compliant with the Java Rule Engine API (JSR 94).
- D3web, a platform for knowledge-based systems (expert systems).
- Flora-2, an object-oriented, rule-based knowledge-representation and reasoning system.
- Jena, an open-source semantic-web framework for Java which includes a number of different semantic-reasoning modules.
- Prova, a semantic-web rule engine which supports data integration via SPARQL queries and type systems (RDFS, OWL ontologies as type system).
- DIP, Defeasible-Inference Platform (DIP) is an Web Ontology Language reasoner and Protégé desktop plugin for representing and reasoning with defeasible subsumption. It implements a Preferential entailment style of reasoning that reduces to "classical entailment" i.e., without the need to modify the underlying decision procedure.
Applications that contain reasoners
Semantic Reasoner for Internet of Things (open-source)
S-LOR (Sensor-based Linked Open Rules) semantic reasoner
S-LOR is under GNU GPLv3 license.
S-LOR (Sensor-based Linked Open Rules) is a rule-based reasoning engine and an approach for sharing and reusing interoperable rules to deduce meaningful knowledge from sensor measurements.