summaryrefslogtreecommitdiff
path: root/src/theory/arith/nl_model.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2020-02-26 16:39:39 -0600
committerGitHub <noreply@github.com>2020-02-26 16:39:39 -0600
commit8e476f1efeb7f8b3188ea1795ccd27f98f41e4d2 (patch)
tree518e5e881b33aa2fdaa409aa03a814713a43b69b /src/theory/arith/nl_model.cpp
parent2405b98feeed522d7304207280591a71ee6c319a (diff)
Use side effect utility for non-linear lemmas (#3780)
Fixes #3647. Previously, when doing incremental linearization for transcedental functions, we would add points to the list of secant points at the time when linearization lemmas were generated. However, our strategy has been updated such that lemmas may be abandoned (say in the case that a higher priority lemma is found). Thus, our list of secant points had spurious points corresponding to lemmas that weren't sent. This led to assertion failures, and likely led to gaps in our linearization, hindering our ability to say sat/unsat. This PR introduces a "lemma side effect" class to ensure that modifications to the state of the nonlinear solver are in sync with the lemmas we send out.
Diffstat (limited to 'src/theory/arith/nl_model.cpp')
0 files changed, 0 insertions, 0 deletions
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback