package ego

  1. Overview
  2. Docs
Ego (EGraphs OCaml) is extensible EGraph library for OCaml

Install

Dune Dependency

Authors

Maintainers

Sources

0.0.6.tar.gz
sha256=770f617799a51e282e82e055d4a715328001e7208deaf92bc1ae5710c34dcaf3
md5=016028a0dcd7a8cef864b20879baf9dd

doc/ego/Ego/Basic/index.html

Module Ego.BasicSource

This module implements a fairly efficient "syntactic-rewrite-only" EGraph-based equality saturation engine that operates over Sexps.

The main interface to EGraph is under the module EGraph.

Note: This module is not safe for serialization as it uses Symbol.t internally to represent strings, and so will be dependent on the execution context. If you wish to persist EGraphs across executions, check out the EGraphs defined in Ego.Generic

Sourcemodule Symbol : sig ... end

Implements an efficient encoding of strings

Sourcemodule Query : sig ... end

This module encodes patterns (for both matching and transformation) over Sexprs and is part of Ego.Basic's API for expressing syntactic rewrites.

Sourcemodule Rule : sig ... end

This module encodes syntactic rewrite rules over Sexprs and is part of Ego.Basic's API for expressing syntactic rewrites.

Sourcemodule EGraph : sig ... end

This module defines the main interface to the EGraph provided by Ego.Basic.

OCaml

Innovation. Community. Security.