summaryrefslogtreecommitdiff
path: root/src/theory/uf/symmetry_breaker.h
diff options
context:
space:
mode:
authorAndres Noetzli <andres.noetzli@gmail.com>2019-04-01 14:26:23 -0700
committerGitHub <noreply@github.com>2019-04-01 14:26:23 -0700
commit41355e412a142809f63a1939a4515486ccd4c6fb (patch)
treeb8b7ee334c8cdc52c72a10356adfaf769793c539 /src/theory/uf/symmetry_breaker.h
parentae536749a2342e51c450deb62a13d5cfda965881 (diff)
Fix RewriteITEBv to ensure rewrite to fixpoint (#2878)
`TheoryBVRewriter::RewriteITEBv()` is currently always returning the status `REWRITE_DONE`. This can result in a situation where a rewritten node can be rewritten again (which breaks the contract of our rewriter). The unit test in this commit illustrates the issue. The commit fixes the issue by returning `REWRITE_AGAIN` or `REWRITE_AGAIN_FULL` if a node changed. `REWRITE_AGAIN_FULL` is needed if the resulting node may have a child that is not a subterm of the original expression.
Diffstat (limited to 'src/theory/uf/symmetry_breaker.h')
0 files changed, 0 insertions, 0 deletions
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback