[Strings] Make fact detection more robust (#7007)
authorAndres Noetzli <andres.noetzli@gmail.com>
Mon, 16 Aug 2021 13:58:43 +0000 (06:58 -0700)
committerGitHub <noreply@github.com>
Mon, 16 Aug 2021 13:58:43 +0000 (13:58 +0000)
commit0711ec521f01888b059d152d1c1f20382d5ce432
tree1e797fc9c1db49571b6c7aa676b3785d5087eb73
parentba2acc2d22b7718b102bfa7c2a699be5a4d87296
[Strings] Make fact detection more robust (#7007)

Currently, our check for whether an inference is a fact or a lemma
involves checking whether the kind of the conclusion is a conjunction or
a disjunction. However, this does not take into account inferences of
other kinds such as ites, which is a problem because they require a
decision from the SAT solver. This commit changes the condition to check
the theory of the conclusion. If the conclusion belongs to the theory of
strings, it considers it as a fact.
src/theory/strings/infer_info.cpp