3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-04 15:03:57 +00:00

add option in theory_str to assert string constant lengths more eagerly

now passes z3str/concat-025
This commit is contained in:
Murphy Berzish 2016-06-12 17:16:14 -04:00
parent fd968783a5
commit 08328c5614
2 changed files with 20 additions and 1 deletions

View file

@ -74,6 +74,15 @@ namespace smt {
*/
bool opt_AggressiveValueTesting;
/*
* Setting EagerStringConstantLengthAssertions to true allows some methods,
* in particular internalize_term(), to add
* length assertions about relevant string constants.
* Note that currently this should always be set to 'true', or else *no* length assertions
* will be made about string constants.
*/
bool opt_EagerStringConstantLengthAssertions;
bool search_started;
arith_util m_autil;
str_util m_strutil;
@ -87,6 +96,7 @@ namespace smt {
ptr_vector<enode> m_basicstr_axiom_todo;
svector<std::pair<enode*,enode*> > m_str_eq_todo;
ptr_vector<enode> m_concat_axiom_todo;
ptr_vector<enode> m_string_constant_length_todo;
int tmpStringVarCount;
int tmpXorVarCount;