mirror of
https://github.com/Z3Prover/z3
synced 2025-08-05 10:50:24 +00:00
z3str3: use rational in place of unsigned during model construction
This commit is contained in:
parent
127ef59ce4
commit
5e7806c4a4
3 changed files with 36 additions and 27 deletions
|
@ -543,7 +543,7 @@ protected:
|
|||
// fixed length model construction
|
||||
expr_ref_vector fixed_length_subterm_trail; // trail for subterms generated *in the subsolver*
|
||||
expr_ref_vector fixed_length_assumptions; // cache of boolean terms to assert *into the subsolver*, unsat core is a subset of these
|
||||
obj_map<expr, unsigned> fixed_length_used_len_terms; // constraints used in generating fixed length model
|
||||
obj_map<expr, rational> fixed_length_used_len_terms; // constraints used in generating fixed length model
|
||||
obj_map<expr, ptr_vector<expr> > var_to_char_subterm_map; // maps a var to a list of character terms *in the subsolver*
|
||||
obj_map<expr, ptr_vector<expr> > uninterpreted_to_char_subterm_map; // maps an "uninterpreted" string term to a list of character terms *in the subsolver*
|
||||
obj_map<expr, std::tuple<rational, expr*, expr*>> fixed_length_lesson; //keep track of information for the lesson
|
||||
|
@ -603,7 +603,7 @@ protected:
|
|||
expr* refine_dis(expr* lhs, expr* rhs);
|
||||
expr* refine_function(expr* f);
|
||||
bool flatten(expr* ex, expr_ref_vector & flat);
|
||||
unsigned get_refine_length(expr* ex, expr_ref_vector& extra_deps);
|
||||
rational get_refine_length(expr* ex, expr_ref_vector& extra_deps);
|
||||
|
||||
void instantiate_axiom_CharAt(enode * e);
|
||||
void instantiate_axiom_prefixof(enode * e);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue