Skip to content

improvement: apply tseitin transformation to CNF conversion#28

Merged
zachdaniel merged 4 commits into
mainfrom
tseitin-transformation
May 18, 2026
Merged

improvement: apply tseitin transformation to CNF conversion#28
zachdaniel merged 4 commits into
mainfrom
tseitin-transformation

Conversation

@zachdaniel
Copy link
Copy Markdown
Contributor

https://en.wikipedia.org/wiki/Tseytin_transformation

Applying DeMorgan's law leads to exponential blowup in certan patterns of boolean expressions. Tseitin transformation introduces new variables that map to more complex statements such that the expression grows linearly instead of exponentially.

fixes #23

https://en.wikipedia.org/wiki/Tseytin_transformation

Applying DeMorgan's law leads to exponential blowup in certan
patterns of boolean expressions. Tseitin transformation introduces
new variables that map to more complex statements such that the
expression grows linearly instead of exponentially.

fixes #23
@zachdaniel
Copy link
Copy Markdown
Contributor Author

@maennchen I know you're a busy guy, but would you have a chance to look this over?

Comment thread mix.exs Outdated
Comment thread lib/crux/formula.ex Outdated
Comment thread lib/crux/formula.ex
@zachdaniel zachdaniel requested a review from maennchen May 18, 2026 18:40
@zachdaniel zachdaniel merged commit 562ee15 into main May 18, 2026
25 checks passed
@maennchen maennchen deleted the tseitin-transformation branch May 18, 2026 19:52
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.

Expression rewrite engine spins indefinitely on nested exists() policy filters

2 participants