summaryrefslogtreecommitdiff
path: root/src/smt
diff options
context:
space:
mode:
authorAndres Noetzli <andres.noetzli@gmail.com>2020-09-08 10:33:59 -0700
committerGitHub <noreply@github.com>2020-09-08 10:33:59 -0700
commit7b36dc4ee0f4fa5c1d73b0f648c74b9736a5f626 (patch)
treee8b7631755e92c80536e9a146bbd6c5e53a99787 /src/smt
parentbe3543ef7e01eb32aab3161fa2778953fabc988d (diff)
Make CVC/API BV div/mod semantics match SMT-LIB (#4997)
This commit changes the semantics of the CVC language and with the default semantics of the API for `BVUDIV`, `BVUREM`, `BVSDIV`, `BVSREM`, and `BVSMOD` to match the semantics of SMT-LIB >=2.6. Relatedly, the commit also adds comments to our API documentation for the different semantics enabled by the `bv-div-zero-const` option.
Diffstat (limited to 'src/smt')
-rw-r--r--src/smt/set_defaults.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/smt/set_defaults.cpp b/src/smt/set_defaults.cpp
index 236137bb2..aa0e976f2 100644
--- a/src/smt/set_defaults.cpp
+++ b/src/smt/set_defaults.cpp
@@ -89,8 +89,7 @@ void setDefaults(LogicInfo& logic, bool isInternalSubsolver)
// set this option if the input format is SMT LIB 2.6. We also set this
// option if we are sygus, since we assume SMT LIB 2.6 semantics for sygus.
options::bitvectorDivByZeroConst.set(
- language::isInputLang_smt2_6(options::inputLanguage())
- || language::isInputLangSygus(options::inputLanguage()));
+ !language::isInputLang_smt2_5(options::inputLanguage(), true));
}
bool is_sygus = language::isInputLangSygus(options::inputLanguage());
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback