zelph: an open-source semantic network reasoning engine

zelph is an open-source semantic network reasoning engine that performs bottom-up forward chaining over a unified graph. Its key characteristic is radical homoiconicity: rules, predicates, numbers, and facts are all nodes in the same subject–predicate–object graph. Computation emerges from rule-driven inference over this topology.

Features:

  • Bottom-up forward chaining to a least fixed point (Datalog-style)
  • Predicates as first-class graph nodes, enabling meta-rules (e.g., a single generic rule for transitivity or symmetry)
  • Negation as failure (stratified NAF semantics)
  • Inequality constraints (!=) as guard filters on variable bindings
  • Deep unification over arbitrarily nested graph structures
  • Fresh variables for constructive existential quantification
  • Rule-based arbitrary-precision arithmetic using cons-list digit representations
  • Embedded Janet (Lisp dialect) scripting layer for programmatic fact/ rule generation
  • Wikidata import and large-scale ontology consistency checking

A detailed introduction from a logic programming perspective, including a video walkthrough with live demonstrations and comparisons to Prolog, Datalog, Lean, and Lisp, is available at: <https://acrion.github.io/zelph/logic/>

zelph is written in C++, runs on Linux, macOS, and Windows, and is licensed under AGPL v3.

GitHub: https://github.com/acrion/zelph<https://github.com/acrion/zelph>
Project site: https://zelph.org<https://zelph.org>
Documentation: https://acrion.github.io/zelph/

Communicated by Stefan Zipproth, independent software developer, Switzerland.