3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-22 00:26:38 +00:00
Commit graph

2672 commits

Author SHA1 Message Date
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
Christoph M. Wintersteiger 78cc1e0703 Remove temporary files created during configuration tests. 2015-04-29 15:15:57 +01:00
Christoph M. Wintersteiger d1aef7facd Merge branch 'contrib' of https://github.com/wintersteiger/z3 2015-04-28 15:20:20 +01:00
Christoph M. Wintersteiger 1d49f61b9a Merge branch 'unstable' of https://github.com/Z3Prover/z3 into contrib
Conflicts:
	README
	src/api/ml/build-lib.sh
	src/api/ml/z3.ml
	src/api/ml/z3.mli
	src/api/ml/z3_stubs.c
2015-04-28 15:19:08 +01:00
Christoph M. Wintersteiger 1abeb825a3 Fixed python 3.x problems.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-04-28 14:58:58 +01:00
Nikolaj Bjorner 620c11932b type check distinct operator. fixes #62
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-27 11:10:37 -07:00
Nuno Lopes f7d9438e7b add failing test for issue #62 (mk_distinct doesnt type check)
Signed-off-by: Nuno Lopes <nlopes@MSRC-3617536.europe.corp.microsoft.com>
2015-04-27 17:44:38 +01:00
Christoph M. Wintersteiger abe73db702 FP: bugfix for get_some_value which couldn't produce rounding-mode values. 2015-04-25 15:19:48 +01:00
Christoph M. Wintersteiger 4768a360f8 FP: Fix for conversion functions from non-FP 0 to +0.0 even when the rounding mode is ToNegative. 2015-04-25 15:01:20 +01:00
Christoph M. Wintersteiger b58d3f4335 Bugfix for MPF unpacking 2015-04-25 14:26:18 +01:00
Christoph M. Wintersteiger 8c3fc574d1 comments fix 2015-04-24 15:37:45 +01:00
Ken McMillan 9bff93279f merging into unstable 2015-04-20 12:31:16 -07:00
Ken McMillan 5f37b1d32f fixed interp api bug (github issue #47) 2015-04-20 12:30:15 -07:00