-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pyex: optimizations #104
Pyex: optimizations #104
Conversation
Results on all benchmarks (current version is below in the plot). Several notes:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a way too large a PR with way too many random heuristics for me to review consistently.
There are multiple smaller and larger heuristics. It may be hard to see the impact of each single heuristic alone, however. According to the results, they seem to work together well enough.
From what I have seen, the PR seems OK. I have not noticed any obvious issues with the PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I only skimmed the new preprocessing functions, otherwise looks good.
We should probably check some formulae from |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The PR looks good to me.
When the remaining unresolved discussions are resolved, I am OK with merging the PR.
I have checked some instances. It seems that it is caused by (i) a soundness fix of some optimisation, and/or (ii) by a different order of preprocessing rules (we might get slightly different automata and equations than those in |
This PR introduces several heuristics and optimisations:
not(contains)
fragment by checking syntactic subsumption over string termsmk_literal
contains
,not(prefix)
,not(suffix)
,replace
)seq.unit
during solving