Jump to content

Semantic reasoner: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Dfoxvog (talk | contribs)
Added Cyc to list
Line 19: Line 19:
* [[BaseVISor]], a versatile [[forward chaining]] inference engine specialized to handle facts in the form of RDF triples with support for OWL 2 RL and XML Schema Datatypes ([http://vistology.com/basevisor/basevisor.html BaseVISor]).
* [[BaseVISor]], a versatile [[forward chaining]] inference engine specialized to handle facts in the form of RDF triples with support for OWL 2 RL and XML Schema Datatypes ([http://vistology.com/basevisor/basevisor.html BaseVISor]).
* [[Cwm (software)|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. ([http://www.w3.org/2000/10/swap/doc/cwm.html CWM])
* [[Cwm (software)|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. ([http://www.w3.org/2000/10/swap/doc/cwm.html CWM])
* [[Cyc]] inference engine, a forward and backward chaining inference engine with numerous specialized modules for high-order logic. ([http://research.cyc.com/] ResearchCyc) ([http://ppencyc.org/] OpenCyc)
* [[Drools]], a forward chaining inference based rules engine that uses an enhanced implementation of the [[Rete algorithm]].
* [[Drools]], a forward chaining inference based rules engine that uses an enhanced implementation of the [[Rete algorithm]].
* [[Euler (inference engine)|Euler (EYE)]], a [[Rule Interchange Format|RIF]]-compatible backward-chaining N3 reasoner enhanced with [[Euler path]] detection. ([http://eulersharp.sourceforge.net/ Euler Proof Mechanism])
* [[Euler (inference engine)|Euler (EYE)]], a [[Rule Interchange Format|RIF]]-compatible backward-chaining N3 reasoner enhanced with [[Euler path]] detection. ([http://eulersharp.sourceforge.net/ Euler Proof Mechanism])
Line 39: Line 40:
! '''BaseVISor'''
! '''BaseVISor'''
! '''Bossam'''
! '''Bossam'''
! '''Cyc'''
! '''Hoolet'''
! '''Hoolet'''
! '''Pellet'''
! '''Pellet'''
Line 54: Line 56:
| style="background: #fdd" | No
| style="background: #fdd" | No
| style="background: #ddd" | Unknown
| style="background: #ddd" | Unknown
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
Line 69: Line 72:
| style="background: #ffd" | R-entailment, OWL 2 RL
| style="background: #ffd" | R-entailment, OWL 2 RL
| style="background: #ddd" | Unknown
| style="background: #ddd" | Unknown
| style="background: #dfd" | High-order
| style="background: #ddd" | Unknown
| style="background: #ddd" | Unknown
| style="background: #ffd" | SROIQ(D)
| style="background: #ffd" | SROIQ(D)
Line 84: Line 88:
| style="background: #ffd" | Rule-based, Rete
| style="background: #ffd" | Rule-based, Rete
| style="background: #ffd" | Rule-based
| style="background: #ffd" | Rule-based
| style="background: #dfd" | First-order with high-order extensions
| style="background: #ffd" | First-order prover
| style="background: #ffd" | First-order prover
| style="background: #ffd" | Tableau
| style="background: #ffd" | Tableau
Line 99: Line 104:
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #ddd" | Unknown
| style="background: #ddd" | Unknown
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
| style="background: #dfd" | Yes
Line 112: Line 118:
|-
|-
! style="background: #ececec; text-align: left; font-family: monospace; font-weight: normal;" | DIG Support
! style="background: #ececec; text-align: left; font-family: monospace; font-weight: normal;" | DIG Support
| style="background: #fdd" | No
| style="background: #fdd" | No
| style="background: #fdd" | No
| style="background: #fdd" | No
| style="background: #fdd" | No
Line 129: Line 136:
| style="background: #dfd" | Yes (Own rule format)
| style="background: #dfd" | Yes (Own rule format)
| style="background: #dfd" | Yes (SWRL & own rule format)
| style="background: #dfd" | Yes (SWRL & own rule format)
| style="background: #dfd" | Yes (Own rule format)
| style="background: #dfd" | Yes (SWRL)
| style="background: #dfd" | Yes (SWRL)
| style="background: #dfd" | Yes (SWRL—DL Safe Rules)
| style="background: #dfd" | Yes (SWRL—DL Safe Rules)
Line 144: Line 152:
| style="background: #dfd" | 2.0
| style="background: #dfd" | 2.0
| style="background: #dfd" | 0.9b45
| style="background: #dfd" | 0.9b45
| style="background: #ddd" | Unknown
| style="background: #ddd" | Unknown
| style="background: #ddd" | Unknown
| style="background: #dfd" | 2.0.2
| style="background: #dfd" | 2.0.2
Line 157: Line 166:
|-
|-
! style="background: #ececec; text-align: left; font-family: monospace; font-weight: normal;" | Licensing
! style="background: #ececec; text-align: left; font-family: monospace; font-weight: normal;" | Licensing
| style="background: #ffd" | Free/ closed-source (academic and research use) & Non-Free / closed-source
| style="background: #ffd" | Free/ closed-source
| style="background: #ffd" | Free/ closed-source
| style="background: #ffd" | Free/ closed-source
| style="background: #ffd" | Free/ closed-source (academic and research use) & Non-Free / closed-source
| style="background: #dfd" | Free/ open-source
| style="background: #dfd" | Free/ open-source
| style="background: #dfd" | Free/ open-source & Non-Free/ closed-source
| style="background: #dfd" | Free/ open-source & Non-Free/ closed-source

Revision as of 19:05, 17 February 2012

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.

List of semantic reasoners

Existing semantic reasoners and related software:

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).
  • OntoBroker, highly scalable SemanticWeb middleware (OntoBroker).
  • 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.[1] (OWLIM)
  • RacerPro, a semantic web reasoning system and information repository (RacerPro)
  • TopSPIN, rule-based reasoner embedded in TopBraid Suite support OWL 2 RL reasoning (TopBraid).
  • SHER, a scalable Pellet-backed OWL DL reasoner (SHER).

Free software

  • BaseVISor, a versatile forward chaining 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)
  • Cyc inference engine, a forward and backward chaining inference engine with numerous specialized modules for high-order logic. ([1] ResearchCyc) ([2] OpenCyc)
  • Drools, a forward chaining inference based rules engine that uses an enhanced implementation of the Rete algorithm.
  • Euler (EYE), a RIF-compatible backward-chaining N3 reasoner enhanced with Euler path detection. (Euler Proof Mechanism)
  • FaCT, a description 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), 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, SWRL, and F-Logic 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)
  • Prova, 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 web rules and ontologies. (SweetRules)
  • TopBraid SPIN API, API for [SPIN], which is a collection of RDF vocabularies enabling the use of SPARQL to define constraints and inference rules on Semantic Web models. (SPIN API)
  • HermiT, 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 Cyc Hoolet Pellet KAON2 RacerPro Jena FaCT FaCT++ SweetRules OWLIM OntoBroker HermiT
OWL-DL Entailment No Unknown Yes 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 High-order 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 with high-order extensions 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 Yes Incomplete for OWL DL Yes Yes No Yes Yes Yes
DIG Support No 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 (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 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 Free/ closed-source Free/ closed-source (academic and research use) & Non-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

References

Template:Computable knowledge