diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2020-03-10 10:56:58 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-10 08:56:58 -0700 |
commit | 54eb1c069f0a86b157945d95eb0ae0999d8470fd (patch) | |
tree | f062eb87026b52315d8b7867a5d7a503e1b05b0d /test/regress/regress1 | |
parent | f57c7cb845c7d1f8730e1b3ecfa4d1c030b980ac (diff) |
Do not set values for non-linear mult terms in collectModelInfo (#3983)
Fixes #3803.
When non-linear arithmetic determines there is a model, then it should not send model values for multiplication terms that the linear solver assigned when abstracting (non-linear) multiplication. This avoids conflicts if the non-linear solver changed a value for a variable occurring in a non-linear monomial. This avoids check-model failures.
Diffstat (limited to 'test/regress/regress1')
-rw-r--r-- | test/regress/regress1/nl/issue3803-nl-check-model.smt2 | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/regress/regress1/nl/issue3803-nl-check-model.smt2 b/test/regress/regress1/nl/issue3803-nl-check-model.smt2 new file mode 100644 index 000000000..7dfda36ea --- /dev/null +++ b/test/regress/regress1/nl/issue3803-nl-check-model.smt2 @@ -0,0 +1,12 @@ +; COMMAND-LINE: --ext-rew-prep +; EXPECT: sat +(set-logic ALL) +(set-info :status sat) +(declare-fun a () Real) +(declare-fun b () Real) +(declare-fun c () Real) +(declare-fun d () Real) +(declare-fun e () Real) +(assert (exists ((f Real)) (and (or (> (+ d (* (/ (* c e) (- (* c e) e)) f)) 0 (/ 0 a))) (> e 6)))) +(assert (distinct a (/ b e))) +(check-sat) |