Murphy Berzish
cf5eacbf33
successful run of model generation test case, after assigning all internal variables a bogus value if they are unused
2015-12-03 20:58:54 -05:00
Murphy Berzish
e010e7c0d6
add trace message to indicate which free variables are giving us trouble
...
I think I'm onto the issue though
2015-12-02 23:35:26 -05:00
Murphy Berzish
f5e94af784
check that both simplified expressions are concats in simplify_concat_equality()
...
this seems to fix all the crashes but the solver takes forever to solve a really simple instance
with easy model generation, so I think something is still wrong
probably next I will go through and change std::map to obj_map, etc.
2015-12-02 22:15:04 -05:00
Murphy Berzish
1a15b3937d
in_same_eqc() now checks to ensure both terms are internalized before doing anything else
2015-12-02 22:09:30 -05:00
Murphy Berzish
23150d3b5e
never ever ever reuse constants in mk_string(). this gets us MUCH farther
2015-12-02 22:03:12 -05:00
Murphy Berzish
953a4c5437
add temporary variables to m_trail
2015-12-02 20:48:15 -05:00
Murphy Berzish
52f0277c99
attempt to clean up out-of-scope variables more, still crashing
2015-12-01 19:19:00 -05:00
Murphy Berzish
c44d49b625
keep track of search level ourselves
2015-12-01 14:41:11 -05:00
Murphy Berzish
dd0bc13be7
attempt to track popped variables, still segfaults, WIP
2015-11-30 19:22:01 -05:00
Murphy Berzish
07626a1e03
remove expr_ref stuff, start tracking variables more closely
2015-11-28 23:56:30 -05:00
Murphy Berzish
9010a5c4cf
honest-to-goodness working model gen, i.e. it didn't crash. more testing needed
2015-11-20 16:05:43 -05:00
Murphy Berzish
24148bafa3
fixed several AST bugs; need to load charSet now
2015-11-20 15:48:06 -05:00
Murphy Berzish
bf27d41b08
use TRACE instead of STRACE...
2015-11-20 12:27:29 -05:00
Murphy Berzish
b34fc06fe9
fix all compilation errors, now to test it
2015-11-20 12:24:23 -05:00
Murphy Berzish
9beeb09acf
model gen possibly done, but I doubt it works so WIP
2015-11-15 15:18:14 -05:00
Murphy Berzish
8b538f5840
started gen_val_options() WIP
2015-11-11 15:34:11 -05:00
Murphy Berzish
3a404c248d
gen_free_var_options() WIP
2015-11-10 12:40:01 -05:00
Murphy Berzish
6374d63160
gen_len_val_options_for_free_var() WIP
2015-11-09 16:11:00 -05:00
Murphy Berzish
0178872a19
completed process_free_var(), still WIP
...
working on gen_len_val_options_for_free_var()
2015-11-09 15:33:52 -05:00
Murphy Berzish
a9b8707d48
possibly found a way to do get_parents()
2015-11-09 15:14:34 -05:00
Murphy Berzish
e9b31f2995
temporarily patched in a get_eqc_allUnroll() implementation
2015-11-06 14:13:38 -05:00
Murphy Berzish
ac8b5e6eae
free variable WIP
2015-11-06 14:10:18 -05:00
Murphy Berzish
4a8ee88461
ctx_dep_analysis() done, final_check() WIP
2015-11-06 13:43:54 -05:00
Murphy Berzish
9f01b9dc92
more progress on model gen (WIP)
2015-11-04 16:22:06 -05:00
Murphy Berzish
1f3c5cebbf
variable classification (WIP)
2015-10-26 15:43:31 -04:00
Murphy Berzish
c08f4371f4
begin model generation, wip
2015-10-21 21:32:38 -04:00
Murphy Berzish
3ee8f27588
possibly fix internalization bug mentioned in #2
...
(this leads to a not-implemented-yet in final_check_eh()
due to missing code surrounding free variable production)
2015-10-18 20:20:09 -04:00
Murphy Berzish
e521ab2c3a
fix concat_axiom loop in propagate(): compare against size()......
2015-10-18 19:40:03 -04:00
Murphy Berzish
b494804c9c
ignore tests dir
2015-10-06 19:31:26 -04:00
Murphy Berzish
6791db64c0
process_concat_eq_type6
...
that's the last one!
2015-10-03 13:34:42 -04:00
Murphy Berzish
be79723382
process_concat_eq_type5 wip
2015-10-03 12:26:30 -04:00
Murphy Berzish
f7bc785a56
process_concat_eq_type4, still WIP not tested
2015-10-03 12:19:55 -04:00
Murphy Berzish
ff4706dd40
process_concat_eq_type3
...
still wip because i'm just trying to get these all done
2015-10-03 12:07:55 -04:00
Murphy Berzish
96d99dfb38
process_concat_eq_type2 implementation, not tested WIP
2015-10-02 14:05:17 -04:00
Murphy Berzish
bdf755156c
fix model generation: don't build interpretations for Length()
2015-10-01 20:31:40 -04:00
Murphy Berzish
fb5f3cbc13
fix greater-than bug
...
now we just have to tweak model gen for internal variables
2015-09-30 11:41:55 -04:00
Murphy Berzish
f8c13792a3
mark the position of the bug I found so I can recall it later
...
in process_concat_eq_type1() line 1048
2015-09-30 09:45:00 -04:00
Murphy Berzish
5189c24d42
fix theory of arithmetic complaints about wanting to write A > B
...
"what could possibly go wrong?"
2015-09-30 05:45:16 -04:00
Murphy Berzish
ecb2116927
fix memory corruption bug caused by invalid use of delete[]
2015-09-30 05:23:22 -04:00
Murphy Berzish
e2901fff1e
fix compilation errors
2015-09-30 05:21:16 -04:00
Murphy Berzish
ed7b343822
detect and process concat eq type 1 (WIP UNTESTED)
2015-09-30 05:15:14 -04:00
Murphy Berzish
a62d15403e
start simplify_concat_eq(), WIP but some cases OK
...
also fix model generation for concats and nested concats
2015-09-29 22:31:11 -04:00
Murphy Berzish
1cdfe159b8
simplify_concat_equality() and easy cases there
...
still WIP especially wrt. model generation but what's here does work
2015-09-29 20:19:43 -04:00
Murphy Berzish
8ed86d2f19
add concatenation axiom
2015-09-29 18:02:05 -04:00
Murphy Berzish
191c50b529
fix solve_concat_eq_str() case 4: prefixStr should have been suffixStr
2015-09-29 17:52:19 -04:00
Murphy Berzish
2320b6dc48
solve_concat_eq_str() case 4: somewhat working
...
something's wrong but it may be very simple to fix
2015-09-29 17:46:51 -04:00
Murphy Berzish
f473b92d5c
solve_concat_eq_str() case 4 WIP
2015-09-28 17:41:01 -04:00
Murphy Berzish
871b08bd8c
solve_concat_eq_str() case 3
2015-09-28 14:52:43 -04:00
Murphy Berzish
876af399e3
probably fix duplication of mk_string() terms
...
also implement Case 2 of solve_concat_eq_str()
2015-09-28 14:44:25 -04:00
Murphy Berzish
9bc685b21d
solve_concat_eq_str() for concat(const,const) == const
2015-09-28 10:43:34 -04:00