Fix for issue 1247 (#1257)
authorClark Barrett <barrett@cs.stanford.edu>
Tue, 17 Oct 2017 04:26:30 +0000 (21:26 -0700)
committerGitHub <noreply@github.com>
Tue, 17 Oct 2017 04:26:30 +0000 (21:26 -0700)
commit0958ceced1107fe4be1c9f585bf5fad8fa73a7a7
tree3c5b003dcf3eafadbadf8f81e3b66ab814d1a2b0
parentcec475c392e7082406629a51d0da5aea7a6da151
Fix for issue 1247 (#1257)

* Fix for bug 1247: in incremental mode, there was a corner case where
a skolem variable introduced during ITE removal became a solved-for
variable (part of the substitution map).  But then if the same skolem
was introduced again as part of a subsequent ITE removal pass, the
substitution was not properly applied and an incorrect result was obtained.
The handling of substitutions in incremental mode is quite kludgey - I
opened an issue to revisit this.

* fixing regression
src/smt/smt_engine.cpp
test/regress/regress0/Makefile.am
test/regress/regress0/bug1247.smt2 [new file with mode: 0644]