egg: egraphs good
Check out the web demo for some quick egraph action.
egg to your
Cargo.toml like this:
[dependencies] egg = "0.6.0"
cargo doc --open to build and open the documentation in a browser.
Before committing/pushing, make sure to run
make, which runs all the tests and lints that CI will.
You will need
graphviz to run the tests.
cargo test will run the tests.
Some tests may time out; try
cargo test --release if that happens.
There are a couple interesting tests in the
prop.rsimplements propositional logic and proves some simple theorems.
math.rsimplements real arithmetic, with a little bit of symbolic differentiation.
lambda.rsimplements a small lambda calculus, using
eggas a partial evaluator.