[proof-new] Adding MACRO_RESOLUTION rule and updating proof checker (#5612)
authorHaniel Barbosa <hanielbbarbosa@gmail.com>
Tue, 8 Dec 2020 03:54:11 +0000 (00:54 -0300)
committerGitHub <noreply@github.com>
Tue, 8 Dec 2020 03:54:11 +0000 (21:54 -0600)
commit57241d382490eed0c480f234dc8cf1c18c1fa525
tree964f62677f0870ef327fa758622c114ad9d6a93c
parentca4f71c3c3c0da881e0bb9b93dbbb2bb3fe49c46
[proof-new] Adding MACRO_RESOLUTION rule and updating proof checker (#5612)

Previously CHAIN_RESOLUTION's definition and checker were not properly capturing its intended behavior as merely an n-ary RESOLUTION rule (i.e., no factoring nor reordering). A new rule, MACRO_RESOLUTION, now captures this behavior: it combines CHAIN_RESOLUTION, FACTORING, and REORDERING.

This commit also adds a proof checker for the new rule and updates the proof checker of CHAIN_RESOLUTION.
src/expr/proof_rule.h
src/theory/booleans/proof_checker.cpp