Skip to content

EGraph minimization with bisimulation - #346

Closed
danieltherealyang wants to merge 22 commits into
egraphs-good:mainfrom
danieltherealyang:clean
Closed

danieltherealyang wants to merge 22 commits into
egraphs-good:mainfrom
danieltherealyang:clean

Conversation

@danieltherealyang

Copy link
Copy Markdown

Implemented bisimulation to convert egraph to dtfa, minimize the dtfa, then convert the dtfa back to egraph. There is quite a bit of overhead but the code is all self contained. If someone wants to try optimizing the minimization code they can do that too.

@oflatt

oflatt commented Jan 23, 2025

Copy link
Copy Markdown
Member

Very cool
I don't know if you've seen this repo: https://github.com/egraphs-good/egraph-serialize
It has a bunch of egraphs you could try your algorithm on, and see if you can improve the extraction results or performance

@oflatt

oflatt commented Jan 23, 2025

Copy link
Copy Markdown
Member

However, I'm guessing that we won't want to merge and maintain this algorithm in egg itself. You may have more luck adding it to the extraction gym

@mwillsey

Copy link
Copy Markdown
Member

This is very cool! But I don't currently think it should be merged. It seems all of this could be implemented outside off egg in a separate crate, which is my preference.

@mwillsey mwillsey closed this Apr 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants