justinlubin / cobbler

Refactor programs to use library functions!
5 stars 0 forks source link

Add e-graph unification #20

Closed jeremyferguson closed 1 year ago

jeremyferguson commented 1 year ago

This PR primarily adds in the capability to do e-graph unification. The code for e-graphs can be found in egraph.ml, and the e-graph type is used in unification.ml in the unify_egraph function. This PR includes tests for this new feature. An additional small change is the addition of infrastructure for checking test coverage, including a new command, make coverage, that will generate a test coverage report.