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 |
|
Murphy Berzish
|
62cd633b63
|
create helper function theory_str::assert_implication()
|
2015-09-28 03:26:46 -04:00 |
|
Murphy Berzish
|
bccadedfee
|
instead of building axiom (=> x y), build (or (not x) y)
this may be a bug in Z3 as it suggests that implications are ignored
e.g. I can assert the axiom (=> true false) and Z3 is okay with this
|
2015-09-28 03:20:13 -04:00 |
|
Murphy Berzish
|
5fe129b571
|
use mk_ismt2_pp() instead of mk_bounded_pp()
|
2015-09-28 02:09:35 -04:00 |
|
Murphy Berzish
|
87b5765e3d
|
clean up traces and make them much easier to read
|
2015-09-28 02:04:35 -04:00 |
|
Murphy Berzish
|
7da3854a8b
|
really lousy model-building, WIP
|
2015-09-28 01:56:13 -04:00 |
|
Murphy Berzish
|
0d54e4e4ae
|
implement str_decl_plugin::is_value() and ::is_unique_value()
we can now prove that (= "abc" "def") is unsatisfiable
|
2015-09-27 23:57:41 -04:00 |
|
Murphy Berzish
|
02cb329ca5
|
defer equalities uncovered during init_search
|
2015-09-27 23:24:41 -04:00 |
|
Murphy Berzish
|
86e6087718
|
starting solve_concat_eq_str(); currently there is an unsoundness bug
|
2015-09-27 21:30:45 -04:00 |
|
Murphy Berzish
|
6481fe941a
|
instantiate string-eq length-eq axiom
|
2015-09-27 17:48:53 -04:00 |
|
Murphy Berzish
|
114b51dec8
|
only handle equalities in assignments during init_search_eh
|
2015-09-27 17:26:52 -04:00 |
|
Murphy Berzish
|
91e9cf272a
|
assert string axiom 2
|
2015-09-27 00:12:04 -04:00 |
|
Murphy Berzish
|
4085db9990
|
recursive descent through all assertions to discover all String terms
set up axioms on these terms to be asserted during propagation
|
2015-09-26 23:35:23 -04:00 |
|
Murphy Berzish
|
f6affe64d0
|
deferred addition of basic string axioms
no longer crashes the solver and got our first correct UNSAT!
|
2015-09-26 21:02:56 -04:00 |
|
Murphy Berzish
|
4d5a0ea53f
|
WIP add axioms
|
2015-09-26 18:51:02 -04:00 |
|
Murphy Berzish
|
992fff8ba8
|
set up theory of arithmetic correctly
closes #1
|
2015-09-10 18:43:14 -04:00 |
|
Murphy Berzish
|
799fd07c85
|
optimization: return integer consts for strlen() over constant strings
|
2015-09-07 19:51:52 -04:00 |
|
Murphy Berzish
|
9b04f1570f
|
instantiate length axiom for concatenation
|
2015-09-07 19:40:25 -04:00 |
|
Murphy Berzish
|
dc86385e7f
|
add Length function to theory of strings
|
2015-09-07 16:13:48 -04:00 |
|
Murphy Berzish
|
7f0d9157ac
|
at least for now, Concat is no longer associative
this means that we'll always have (Concat a b)
instead of variadic forms
|
2015-09-06 21:47:57 -04:00 |
|
Murphy Berzish
|
f0c301e920
|
register Concat function
now reaches str_decl_plugin::mk_func_decl()
|
2015-09-06 21:05:32 -04:00 |
|
Murphy Berzish
|
8137e022e3
|
load str decl plugin; recognize String sorted constants
|
2015-09-06 20:53:08 -04:00 |
|
Murphy Berzish
|
744d2e3c9c
|
pretty-printing of string constants in AST
spec2 looks good now
|
2015-09-03 01:12:08 -04:00 |
|
Murphy Berzish
|
02345ee5f1
|
fix string constant representation in parser
spec1 loopback OK
|
2015-09-03 00:17:05 -04:00 |
|
Murphy Berzish
|
e48ac4a97a
|
create and register string theory plugin
the parser gets a little bit further now!
rejects input with "unexpected character"
|
2015-09-02 21:12:03 -04:00 |
|
Murphy Berzish
|
1f96e19211
|
failing test case: SMT2 parse string constants
|
2015-09-02 18:55:45 -04:00 |
|
Murphy Berzish
|
b30d4f757d
|
ignore Z3-str source
|
2015-09-02 18:08:58 -04:00 |
|
Murphy Berzish
|
f39773f15b
|
update readme
|
2015-08-30 15:23:31 -04:00 |
|
Nikolaj Bjorner
|
a7a0deed3f
|
Merge pull request #164 from mlr-msft/master
clarified README with information provided in issue #163.
|
2015-07-16 10:40:52 -07:00 |
|
Michael Lowell Roberts
|
e5b702b3f1
|
clarified README with information provided in issue #163.
|
2015-07-16 10:38:17 -07:00 |
|
Christoph M. Wintersteiger
|
7f6ef0b6c0
|
Merge branch 'unstable' of https://github.com/wintersteiger/z3 into contrib
|
2015-04-29 15:40:46 +01:00 |
|
Christoph M. Wintersteiger
|
4e082eae6e
|
Version number adjustment.
|
2015-04-29 15:16:25 +01:00 |
|