Skip to content

Repository files navigation

Ego - EGraphs in OCaml

Ego (EGraphs OCaml) is an OCaml library that provides generic equality saturation using EGraphs.

The design of Ego loosely follows the design of Rust's egg library, providing a flexible interface to run equality saturation extended with custom user-defined analyses.

(* create an egraph *)let graph =EGraph.init ()(* add expressions *)let expr1 =EGraph.add_sexp graph [%s ((a <<1) /2)]
(* Convert to graphviz *)letg : Odot.graph =EGraph.to_dot graph

Releases

Packages

Contributors

Languages