Update cardinality in strings to unicode standard (#4402)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Tue, 28 Apr 2020 13:07:54 +0000 (08:07 -0500)
committerGitHub <noreply@github.com>
Tue, 28 Apr 2020 13:07:54 +0000 (08:07 -0500)
commit8ea1603f55d940e56ab3cbee8177f06200228aaa
treea263e0beea29d39de303eddb94511a1387295bd2
parent30c0e8689a1e5f1ae160cde17d8124c86ead1568
Update cardinality in strings to unicode standard (#4402)

This updates the default cardinality in strings to match the Unicode standard, 196608.

This avoids a check-model failure from 25 benchmarks in SMT-LIB, which were related to a split due to insufficient constants being required during collectModelInfo.

This also makes a few places throw an AlwaysAssert(false) that otherwise would lead to incorrect models. These regardless should never throw, but it would be better to have an assertion failure.
src/theory/strings/theory_strings.cpp
src/theory/strings/theory_strings_utils.cpp
test/regress/CMakeLists.txt
test/regress/regress2/strings/cmi-split-cm-fail.smt2 [new file with mode: 0644]