3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-05 07:23:58 +00:00

model gen possibly done, but I doubt it works so WIP

This commit is contained in:
Murphy Berzish 2015-11-15 15:18:14 -05:00
parent 8b538f5840
commit 9beeb09acf
2 changed files with 65 additions and 17 deletions

View file

@ -92,6 +92,10 @@ namespace smt {
std::map<expr*, std::map<int, std::vector<std::pair<int, expr*> > > > fvar_valueTester_map;
std::map<expr*, expr*> valueTester_fvar_map;
std::map<expr*, std::vector<int> > val_range_map;
int charSetSize = 0;
protected:
void assert_axiom(expr * e);
void assert_implication(expr * premise, expr * conclusion);
@ -174,6 +178,8 @@ namespace smt {
expr * gen_val_options(expr * freeVar, expr * len_indicator, expr * val_indicator,
std::string lenStr, int tries);
void print_value_tester_list(std::vector<std::pair<int, expr*> > & testerList);
bool get_next_val_encode(std::vector<int> & base, std::vector<int> & next);
std::string gen_val_string(int len, std::vector<int> & encoding);
expr * get_alias_index_ast(std::map<expr*, expr*> & aliasIndexMap, expr * node);
expr * getMostLeftNodeInConcat(expr * node);