3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-16 05:48:44 +00:00
Commit graph

5993 commits

Author SHA1 Message Date
Nuno Lopes 197aefd111 fix crash introduced in my previous commit 2017-08-14 22:22:48 +01:00
Nikolaj Bjorner dc4dbdf51e Merge branch 'master' of https://github.com/z3prover/z3 2017-08-14 12:52:41 -07:00
Nikolaj Bjorner 086ea7867e another stab at #989
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-14 12:52:25 -07:00
Nuno Lopes 000796c25c micro-optimization in tactics' cleanup(): avoid dealloc+alloc traffic 2017-08-14 20:12:00 +01:00
Nuno Lopes 632c2d8ebf use static_assert in COMPILE_TIME_ASSERT 2017-08-14 20:10:17 +01:00
Nuno Lopes 2473c69679 Drop no-strict-aliasing and fix 2 places where it was violated 2017-08-14 20:09:49 +01:00
Nikolaj Bjorner 07bc19b489 add documentation to string rewriting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-14 07:19:04 -07:00
Nikolaj Bjorner a39b0b201a another fix to str.to.int/int.to.str semantics
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 17:27:34 -07:00
Nikolaj Bjorner fb17362dff fix string rewriting according to definition. Relates to examples in #1202
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 17:21:38 -07:00
Nikolaj Bjorner ead704f52f handle undefined constant cases for int.to.str
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 17:13:10 -07:00
Nikolaj Bjorner 893bcbb585 revert unsound change in integer extraction from expressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 14:39:37 -07:00
Nikolaj Bjorner b6cc24faf3 deal with absence of integer congruence root by querying arithmetic theory directly, #1202
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 14:24:56 -07:00
Nikolaj Bjorner 00742566fb address inconsistent states encountered when cancelling, #1197
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 13:40:30 -07:00
Nikolaj Bjorner 19bb55e396 recognize theory_i_arith to fix #1200
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 10:22:36 -07:00
Nikolaj Bjorner 347ea50b93 fix for #1202
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-13 09:25:46 -07:00
Nikolaj Bjorner c4083c367a update handling of contains constraints taking string literals into account
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-12 19:14:55 -07:00
Nikolaj Bjorner 50e9b371d9 inc version
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-12 17:52:58 -07:00
Nikolaj Bjorner 85cdfd885f address bug reported in #1196 and include additional ad-hoc rewrites to handle some string cases
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-12 17:41:18 -07:00
Nikolaj Bjorner f99048f3e7 rewrite to address some cases like #1203, updates to division handling in NRA
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-12 13:24:54 -07:00
Nikolaj Bjorner 7b47b0380e update Ackerman reduction for division to make Andre and Nathan happy
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-10 23:43:21 +02:00
Murphy Berzish b2388464e4 add re.all to theory_str 2017-08-09 22:03:26 -04:00
Murphy Berzish 84abdae5f7 fix indentation 2017-08-09 15:38:56 -04:00
Murphy Berzish fce35fdb61 Revert "fix indentation and add support for re.allchar"
This reverts commit cadde94017.
2017-08-09 15:37:52 -04:00
Nikolaj Bjorner 082936bca6 enable overloading resolution on define-fun declarations, fix #1199
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-08 09:21:06 +02:00
Murphy Berzish cadde94017 fix indentation and add support for re.allchar 2017-08-07 23:02:55 -04:00
Murphy Berzish f4c0e0b28d fix regex bug in theory_str for empty string match. need to fix indents 2017-08-06 17:17:04 -04:00
Nikolaj Bjorner 05c4ea82ce Merge pull request #1146 from levnach/dev
fix get_model in lar_solver
2017-08-03 14:01:29 -07:00
Nikolaj Bjorner 2f466b6585 Merge branch 'master' of https://github.com/z3prover/z3 2017-08-03 13:56:04 -07:00
Nikolaj Bjorner 91ee52e549 fix #1195
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-03 13:53:38 -07:00
Lev Nachmanson 95f86ae2c0 more efficient lar_solver::get_model
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-08-03 11:03:52 -07:00
Lev Nachmanson 712619a9cf fix a but in adjusting term indices for implied_bounds 2017-08-03 10:09:00 -07:00
Nikolaj Bjorner ffaaa1ff34 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-08-03 08:50:17 -07:00
Nikolaj Bjorner 8844112418 update header include generation to use relative paths #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-03 08:50:04 -07:00
Nikolaj Bjorner 4b3251dec1 update API functions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-02 16:56:43 -07:00
Nikolaj Bjorner ce3fd22f3b use common idioms for factor-equivalence code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 21:07:20 -07:00
Arie Gurfinkel 88a35119b9 moved obj_equiv_class to ast 2017-08-01 19:24:50 -04:00
Nikolaj Bjorner 4d07fa5db3 use ifdef instead of if for _TRACE
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 12:46:38 -07:00
Nikolaj Bjorner be8add44e9 instrument unit test to use reproducible random number generator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 12:42:08 -07:00
Nikolaj Bjorner 22a2aae486 trying to fix build break on use of iterator
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 11:47:55 -07:00
Nikolaj Bjorner 3214644e0d Merge branch 'master' of https://github.com/Z3Prover/z3 2017-08-01 10:51:52 -07:00
Nikolaj Bjorner 2b82fd5d0c updated include directives
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Christoph M. Wintersteiger 49d5131f83 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-08-01 18:33:59 +01:00
Christoph M. Wintersteiger 81a7f37acc Fixed LP tests 2017-08-01 18:33:47 +01:00
Christoph M. Wintersteiger 13c9a6faf7 Merge pull request #1185 from agurfinkel/spacer-nlg-fix
Spacer nlg fix
2017-08-01 17:23:23 +01:00
Christoph M. Wintersteiger aefed78f1a Fixed ML API build again 2017-08-01 17:02:04 +01:00
Christoph M. Wintersteiger ce01895ab3 Fixed ML API build. 2017-08-01 16:54:27 +01:00
Christoph M. Wintersteiger 4ff938f2c1 Fixed MPF fp.rem(0,0,0). Relates to #872. 2017-08-01 16:46:10 +01:00
Bernhard Gleiss 4559092a0c refactored variable names and added comments to min_cut-related methods for unsat-core-computation 2017-08-01 11:17:06 -04:00
Bernhard Gleiss bc3d8580c9 fixed typo in optimized unsat core plugin code 2017-08-01 11:17:06 -04:00
Christoph M. Wintersteiger 79ab8a5a5a Fixed cmake build 2017-08-01 16:16:17 +01:00
Christoph M. Wintersteiger e315d063c5 renamed LP bound propagator to avoid linker name clashes 2017-08-01 16:07:51 +01:00
Christoph M. Wintersteiger 6bc5209e26 Fixed build problems with .vcxproj 2017-08-01 15:53:55 +01:00
Nikolaj Bjorner 72c478078e adding cdecl directive to Z3_qe_lite to address build failure for Java bindings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 23:14:53 -07:00
Nikolaj Bjorner 1820ccd491 z3-qe-lite?
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 22:15:57 -07:00
Nikolaj Bjorner b12882d94a a few more spacer related warning messages
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 21:56:13 -07:00
Arie Gurfinkel 25c6480e6e updated include directives 2017-07-31 23:16:42 -04:00
Arie Gurfinkel ecd85b314c more includes 2017-07-31 22:51:28 -04:00
Arie Gurfinkel 66108085fa removing pragmas to make travis happy 2017-07-31 22:51:28 -04:00
Nikolaj Bjorner c506f3ddc9 fix build errors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 18:39:35 -07:00
Nikolaj Bjorner 0eb2915e83 Merge pull request #1182 from agurfinkel/spacer-z3
Spacer
2017-07-31 17:10:09 -07:00
Nikolaj Bjorner 49cf899207 remove local change
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 16:33:48 -07:00
Nikolaj Bjorner 5cda9504f1 remove relative include from API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 16:32:26 -07:00
Christoph M. Wintersteiger e8cdc34219 Debug fix in fpa2bv converter. Relates to #872. 2017-07-31 22:34:58 +01:00
Arie Gurfinkel ffff16632d updating includes 2017-07-31 17:30:11 -04:00
Arie Gurfinkel f465a2225a fixing include paths 2017-07-31 17:14:43 -04:00
Christoph M. Wintersteiger 6a2fa91818 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-31 22:12:37 +01:00
Christoph M. Wintersteiger 9601761a6f Added missing float conversion in fpa2bv converter. Relates to #1178. 2017-07-31 22:12:15 +01:00
Arie Gurfinkel 97c5ab30d5 small improvements to bmc engine
courtesy of Marc Brockschmidt
2017-07-31 17:04:36 -04:00
Arie Gurfinkel 7168451201 eager quantifier instantiation for quantified array properties 2017-07-31 17:04:16 -04:00
Arie Gurfinkel 2c7a39d580 Optionally blast arrays
This changes the default behavior of always blasting arrays.
The old behavior can be restored using

   fixedpoint.xform.array_blast=true
2017-07-31 17:03:18 -04:00
Arie Gurfinkel f5fa6b0bcb optionally disable subsumption checker 2017-07-31 17:03:18 -04:00
Arie Gurfinkel 33c81524d2 optionally disable propagate variable equivalences in interp_tail_simplifier 2017-07-31 17:03:18 -04:00
Arie Gurfinkel 86db446afa python spacer-specific API 2017-07-31 17:03:18 -04:00
Arie Gurfinkel d080c146a2 public API for spacer 2017-07-31 17:03:18 -04:00
Arie Gurfinkel c3d433ede0 implemented spacer-specic muz API 2017-07-31 17:03:18 -04:00
Arie Gurfinkel 1530a39a96 stubs for spacer-specific API 2017-07-31 17:03:18 -04:00
Arie Gurfinkel ffa4957362 do not use array_der when simplifying rules 2017-07-31 17:02:29 -04:00
Arie Gurfinkel a73023da97 preserve rule names when changing rules 2017-07-31 17:02:29 -04:00
Arie Gurfinkel 5b9bf74787 Spacer engine for HORN logic
The algorithms implemented in the engine are described in the following papers

Anvesh Komuravelli, Nikolaj Bjørner, Arie Gurfinkel, Kenneth L. McMillan:
Compositional Verification of Procedural Programs using Horn Clauses over Integers and Arrays. FMCAD 2015: 89-96

Nikolaj Bjørner, Arie Gurfinkel:
Property Directed Polyhedral Abstraction. VMCAI 2015: 263-281

Anvesh Komuravelli, Arie Gurfinkel, Sagar Chaki:
SMT-Based Model Checking for Recursive Programs. CAV 2014: 17-34
2017-07-31 17:02:29 -04:00
Arie Gurfinkel 9f9dc5e19f increased verbosity level of smt_context 2017-07-31 17:01:47 -04:00
Arie Gurfinkel ba6594b241 extra smt params used by spacer 2017-07-31 17:01:47 -04:00
Arie Gurfinkel b269e6b35b comments on proof_utils 2017-07-31 17:01:47 -04:00
Nikolaj Bjorner 013127e947 fix build break based on ambiguous path resolution
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 14:01:39 -07:00
Nikolaj Bjorner 063b6e9ea5 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-31 13:24:57 -07:00
Nikolaj Bjorner b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Christoph M. Wintersteiger bbf0ebcb74 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-31 20:18:53 +01:00
Christoph M. Wintersteiger 507356c7bf Fixed bug in fpa2bv converter. Fixes #1178. 2017-07-31 20:18:39 +01:00
Nikolaj Bjorner d130ae2e4f Merge pull request #1181 from agurfinkel/tweaks
Tweaks
2017-07-31 11:55:52 -07:00
Nikolaj Bjorner 71d80ab47f fix build break based on new assertion in smt-eq-justification
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 11:54:11 -07:00
Christoph M. Wintersteiger 52cf80d637 Simplified bit-vector bounds in fp.rem. Relates to #872. 2017-07-31 19:53:55 +01:00
Christoph M. Wintersteiger ecfd241e19 Injected 3 missing bits of precision into fp.rem. Relates to #872. 2017-07-31 19:53:44 +01:00
Arie Gurfinkel 1d5713c376 move semantics for ref 2017-07-31 14:21:30 -04:00
Arie Gurfinkel 331eec8a05 option to control array_der in qe_lite 2017-07-31 14:19:16 -04:00
Arie Gurfinkel 7670b49ada mark mk_true() and mk_false() const 2017-07-31 14:14:35 -04:00
Arie Gurfinkel 15451ae858 extra flags to control quant_hoist 2017-07-31 14:13:45 -04:00
Arie Gurfinkel be1df279ec make proof_checker less verbose 2017-07-31 14:11:07 -04:00
Nikolaj Bjorner 2ec9944edd Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-31 10:51:37 -07:00
Christoph M. Wintersteiger a59907170d Fixed renormalization in fp.mul. Relates to #872. 2017-07-31 18:34:46 +01:00
Nikolaj Bjorner 3e8ce53d87 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-31 09:53:16 -07:00
Nikolaj Bjorner 62b8394bdd fixes #1179
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 09:52:45 -07:00
Nikolaj Bjorner 74890ca1c8 fixes #1180
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 09:37:25 -07:00
Nikolaj Bjorner ceca9fbef0 fixes #1176
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 09:23:55 -07:00
Nikolaj Bjorner 8bd0407adf fix #1177
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 09:13:50 -07:00
Christoph M. Wintersteiger 175f042db8 Fixed renormalization in fp.fma. Relates to #872. 2017-07-28 23:01:01 +01:00
Christoph M. Wintersteiger e677030b74 Fixed sign bug in mpf fp.fma. Relates to #872. 2017-07-28 21:39:44 +01:00
Christoph M. Wintersteiger a30c343d7a Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-28 20:24:35 +01:00
Christoph M. Wintersteiger 0610392a05 Bugfix for fp.fma. Fixes #872. 2017-07-28 20:16:13 +01:00
Arie Gurfinkel 78467077f6 fixing a build error 2017-07-28 12:18:12 -04:00
Nikolaj Bjorner 31d6abcfe8 remove arity check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-28 08:55:41 -07:00
Nikolaj Bjorner e9b9a29339 revert first fix for #1173, replace by handling single arity chainables
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-28 08:44:19 -07:00
Nikolaj Bjorner 64233034cc fix #1173
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-28 08:26:52 -07:00
Christoph M. Wintersteiger 33ebdc8adc Cleaned up mpf rounder. Rewrote mpf fma. Relates to #872. 2017-07-27 23:08:35 +01:00
Nikolaj Bjorner ca67274519 another round of fix for #989 to avoid problems with doxygen generation (TravisCI build failure)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 12:59:34 -07:00
Nikolaj Bjorner c8b5be48de unexpressing interpolants #1172
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 11:44:52 -07:00
Nikolaj Bjorner 18e9e4f4ac fixes #1169
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 09:25:01 -07:00
Nikolaj Bjorner 21759e5eb2 fixes #1172
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 08:59:12 -07:00
Nikolaj Bjorner 6558999cef fixes #1171
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 08:46:20 -07:00
Nikolaj Bjorner d3e1d250a7 fixes #1168
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 07:50:16 -07:00
Nikolaj Bjorner 2cc6baede5 address #1167
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-27 07:44:08 -07:00
Nikolaj Bjorner 1a07c6c188 address ASAN bug report #1160
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-26 20:48:49 -07:00
Nikolaj Bjorner b1298d7bde ensure that assertions within the unit tests are exercised in all build modes, remove special handling of SASSERT for release mode #1163
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-26 20:28:55 -07:00
Nikolaj Bjorner 3f8b63f5a8 Merge branch 'master' of https://github.com/z3prover/z3 2017-07-26 19:52:11 -07:00
Nikolaj Bjorner bb7b3c510f fix for #1161
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-26 19:52:05 -07:00
Nikolaj Bjorner 9f9c575451 fix bug exposed when running test-z3.exe /a in debug mode, #1159. Add assertions to heap interaction
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-25 16:26:45 -07:00
Christoph M. Wintersteiger 75b533f050 Fixed normalization shift in MPF rounder. Relates to #872. 2017-07-25 20:29:10 +01:00
Christoph M. Wintersteiger f1c0ac72e7 Fix for fp.fma encoding. Relates to #872. 2017-07-25 20:29:10 +01:00
Nikolaj Bjorner 9d6be286d0 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-07-25 10:18:43 -07:00
Nikolaj Bjorner 70f6280bf1 fix regression reported in #1159
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-25 10:18:21 -07:00
Nikolaj Bjorner 3865c45382 Merge pull request #1147 from mtrberzi/fix-get-arith-value
Improved theory_arith integration in theory_str::get_arith_value()
2017-07-24 21:21:45 -07:00
Nikolaj Bjorner 741f940119 Merge pull request #1158 from facanferff/master
pretty printer: fix typo with ReSort sort name
2017-07-24 21:19:18 -07:00
Nikolaj Bjorner 49f88d9d90 fix uninitialized warning
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-24 12:52:10 -07:00
Nikolaj Bjorner a94f5fb04a fix compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-24 12:15:10 -07:00
Nikolaj Bjorner ae5e39a8b8 Merge branch 'master' of https://github.com/z3prover/z3 2017-07-24 09:18:27 -07:00
Nikolaj Bjorner 7fd0777cf1 fixes to #1155 and partial introduction of SMTLIB 2.6 datatype format
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-24 09:18:16 -07:00
Nikolaj Bjorner a0a8bc2a62 fixes to #1155 and partial introduction of SMTLIB 2.6 datatype format
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-24 09:12:43 -07:00
Fábio Ferreira 2e2782577b pretty printer: fix typo with ReSort sort name 2017-07-23 02:32:35 +01:00
Christoph M. Wintersteiger 0f1583309d Bugfix for fp.fma. One piece of puzzle #872. 2017-07-21 21:12:45 +01:00
Christoph M. Wintersteiger faa19117e4 Fixed inconsistent state upon solver interruption. Partially fixes #951. 2017-07-21 17:42:48 +01:00
Christoph M. Wintersteiger 943dc8118a Improved collect-statistics tactic 2017-07-20 13:44:47 +01:00
Murphy Berzish 7ddb940f77 add e_internalized() check in theory_str::get_arith_value() 2017-07-19 10:15:38 -04:00
Murphy Berzish 69f0ed9b1f remove disabled code block in get_arith_value() 2017-07-18 13:13:12 -04:00
Murphy Berzish c6707688ba improved get_arith_value() in theory_str
Since the root of the eqc of an integer term should be a constant
if there is a constant in that eqc, we can ask for it directly
without either iterating over the entire eqc or
asking the arithmetic solver (and receiving potentially stale info).
2017-07-18 13:11:03 -04:00
Christoph M. Wintersteiger da34de340d Fixed bug in sat model converter. Fixes #1148. 2017-07-15 20:25:13 +01:00
Christoph M. Wintersteiger 680f342247 Merge pull request #1145 from delcypher/fix_doc_typo
Fix minor typo in C API documentation
2017-07-12 15:47:44 +01:00
Dan Liew 5b511f12b3 Fix minor typo in C API documentation 2017-07-12 13:07:19 +01:00
Dan Liew 89c8f1722f Fix typo that prevented uses of bvsmod_i being parsed. 2017-07-12 12:53:10 +01:00
Jack Feser 0e45777104 add get_num_scopes to python solver api 2017-07-11 14:42:34 -04:00
Murphy Berzish 86e7f83e06 proper theory_arith integration in theory_str::get_arith_value() 2017-07-11 13:24:48 -04:00
Nikolaj Bjorner 2b0106c199 doc fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-09 11:26:27 +02:00
Nikolaj Bjorner 2af08a378d avoid complaining about division by 0 as unhandled in theory-lra
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-08 18:21:47 -07:00
Nikolaj Bjorner 5714f830b0 fix check for finite sorts #1122
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-08 13:37:24 -07:00
Nikolaj Bjorner ea331ebfbe revert update to #1134
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-07 08:29:16 -07:00
Nikolaj Bjorner d06e48a361 detect overlapping signatures #1134
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-07 08:13:14 -07:00
Nikolaj Bjorner 49cf3f8008 update documentation according to #1058
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-07 07:44:55 -07:00
Nikolaj Bjorner 465ed7d068 adding doc #1132
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-05 10:21:57 -07:00
Murphy Berzish b14364a117 fix theory_str warnings: rename get_value() to get_arith_value() 2017-07-05 11:06:40 -04:00
Nikolaj Bjorner 41803ec1cf fix trace/debug build for unreferenced variables
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 19:55:38 -07:00
Nikolaj Bjorner cba9a160d3 deal with warning messages
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 19:42:22 -07:00
Nikolaj Bjorner 5b8e3ae198 Merge pull request #1129 from mtrberzi/fix-warnings
clean up warnings in theory_str
2017-07-04 19:41:43 -07:00
Nikolaj Bjorner bd92797663 fix compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 15:25:59 -07:00
Nikolaj Bjorner d66db280a8 fix compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 13:43:32 -07:00
Nikolaj Bjorner a1306eaab6 fix compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 13:17:37 -07:00
Nikolaj Bjorner 253870c6d7 fix compiler warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-04 13:08:23 -07:00
Murphy Berzish 03fe3d74f8 clean up warnings in theory_str 2017-07-04 13:28:18 -04:00
Nikolaj Bjorner 031d7e1b59 use iterators, update build icon for osx
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-01 16:58:40 -07:00
Nikolaj Bjorner 08524a2d90 cleanup for warning message
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-01 11:47:17 -07:00
Nikolaj Bjorner be4b0ffe69 fix unsoundness bug instroduced when fixing #1125
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-30 19:36:38 -07:00
Nikolaj Bjorner c44c8284bd use worklist algorithm to avoid stack overflow #1125
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-30 18:10:36 -07:00
Christoph M. Wintersteiger 1a59123819 Fixed x86/x64 issues in theory_str 2017-06-28 12:49:10 +01:00
Lev Nachmanson 4d0fda81df fix run of lp_solver for mps files
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-06-27 11:45:29 -07:00
Lev Nachmanson dfe15adf7e fix maybe non initialized warning
Signed-off-by: Lev Nachmanson <levnach@microsoft.com>
2017-06-26 16:32:44 -07:00
Nikolaj Bjorner 244cbc2638 ensure that auxiliary PB booleans are recognized during rewriting. Fixes segementation fault #1113, but does not address performance issues with quantifiers and optimization combinations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-26 10:04:50 -07:00
Nikolaj Bjorner 7db1847f51 fix bitrot in maxsat example reference management #1116
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-26 09:36:53 -07:00
Dan Liew 42e0f8f9ce Unbreak Z3 C++ API exception support for GCC < 5.0. This was broken
by 0b1d564509 .

Older versions of GCC do not define `__cpp_exceptions` which caused
exceptions to not be raised leading to unexpected failures. To fix
this also check the `__EXCEPTIONS` macro which is used by older GCC
versions.

Also `#undef` the `Z3_THROW` macro at the end of the header file
because this is an implementation detail that we don't want to leak
to clients.
2017-06-25 23:03:39 +01:00
Christoph M. Wintersteiger 2fceac04d4 Merge branch 'master' of https://github.com/Z3Prover/z3 2017-06-25 22:19:54 +01:00
Christoph M. Wintersteiger c395516058 Adjusted rlimit increments in theory_arith to avoid non-termination issues 2017-06-25 22:19:42 +01:00
Christoph M. Wintersteiger ffbf19d944 Merge branch 'master' of https://github.com/wintersteiger/z3 2017-06-25 20:46:14 +01:00
Christoph M. Wintersteiger ad7aff2334 Added rlimit increments in theory_arith to avoid non-termination issues via F*. 2017-06-25 20:45:56 +01:00
Nikolaj Bjorner 1631a68981 make the option soup dependencies more user-friendly, #1109
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 16:57:50 -07:00
Nikolaj Bjorner 1681419052 adding change notes to release notes for a future release
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 16:50:33 -07:00
Nikolaj Bjorner 9d1852343c add separate get-objectives command #1107
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 16:34:38 -07:00
Nikolaj Bjorner e3ec7e7d05 Merge branch 'master' of https://github.com/z3prover/z3 2017-06-23 11:34:18 -07:00
Nikolaj Bjorner cd4bb5beaf another fix for #1101
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-23 11:34:10 -07:00
Arie Gurfinkel c7fbab0c11 propagate rule names during xform 2017-06-23 09:38:04 -04:00
Arie Gurfinkel 0dead22dca fix missing initialization 2017-06-23 09:38:04 -04:00
Arie Gurfinkel 9874db7458 [CMake] typos in cmake 2017-06-23 09:37:49 -04:00
Nikolaj Bjorner 7386f2e045 #1101
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-22 14:18:53 -07:00
Lev Nachmanson 2a5f1d6e93 add a template instantination
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2017-06-22 10:32:35 -07:00
Nikolaj Bjorner 77ffa9f32f Merge pull request #1095 from agurfinkel/mev_fix
model_evaluator fix
2017-06-21 20:17:44 -07:00
Arie Gurfinkel 972ab6298c (mev) only reduce function interpretation 2017-06-21 22:59:52 -04:00
Nikolaj Bjorner 2d49119d2a add note to Context documentation about scoped uses of contexts #1077 2017-06-21 18:56:16 -07:00
Arie Gurfinkel 493a3a6312 (mev) call expand_value only at the end
There is no need to expand array values throughout evaluation.
They are expanded during array equality checking (if requested), and
can be expanded at the very end of evaluation (if needed).
2017-06-21 20:58:10 -04:00
Arie Gurfinkel d5ca902bf6 (mev) bug fix in expanding array equalities
The stores were processed in the wrong order so that

  (store (store a x y) x u)

was reduced to

  (store a x y)

instead of

  (store a x u)
2017-06-21 20:58:10 -04:00
Arie Gurfinkel e62e563e2d (mev) renamed variable to clarify that it is unused 2017-06-21 20:58:10 -04:00
Nikolaj Bjorner 1fee5fd94e Merge pull request #1094 from delcypher/cmake_fix_generated_cpp_deps
[WIP][CMake] Fix broken regeneration of some .cpp files
2017-06-21 17:47:41 -07:00
Dan Liew d00892c9a6 [CMake] Fix dependencies for generating mem_initializer.cpp.
Previously CMake was not aware of which headers files the generation
of `mem_initializer.cpp` depended on. Consequently this could result
in broken incremental builds if

* Existing headers that declare memory initializers/finalizers change.
* New headers are added that declare memory initializers/finalizer.

Now the `z3_add_component()` CMake function has been modifed so that
it now takes an optional `MEMORY_INIT_FINALIZER_HEADERS` argument
which allows the headers that declare memory initializers/finalizers
to be explicitly listed.

With this information CMake will now regenerate `mem_initializer.cpp`
correctly.

This required the `mk_mem_initializer_cpp_internal()` function to be
changed to take a list of header files rather than a list of component
source directories. The two consumers (CMake and Python/Makefile build
systems) of this function have been modified to work with this change.

This partially fixes #1030.
2017-06-21 23:56:53 +01:00
Dan Liew 6f48a145aa [CMake] Fix dependencies for generating gparams_register_modules.cpp.
Previously CMake was not aware of which headers files the generation
of `gparams_register_modules.cpp` depended on. Consequently this could result
in broken incremental builds if

* Existing headers that declared module description/parameters change.
* New headers are added that declare module description/parameters.
* `.pyg` files that generate header files that declare module
  description/parameters change

Now the `z3_add_component()` CMake function has been modifed so that

* All header files that are generated from `.pyg` files are added as
dependencies and are scanned from module description/parameter
declarations. This implicit dependency of `gparams_register_modules.cpp`
depending on other generated header files seems unnecessary complex. We
should revisit this design decision once the Python/Makefile build
system is deprecated.

* The function now takes an optional `EXTRA_REGISTER_MODULE_HEADERS`
argument which allows the headers that declare module
description/paramters to be explicitly listed.

With this information CMake will now regenerate `gparams_register_modules.cpp`
correctly.

This required the `mk_gparams_register_modules_internal()` function to be
changed to take a list of header files rather than a list of component
source directories. The two consumers (CMake and Python/Makefile build
systems) of this function have been modified to work with this change.

This partially fixes #1030.
2017-06-21 23:56:46 +01:00
Dan Liew 229fd3dc3e [CMake] Fix dependencies for generating install_tactic.cpp.
Previously CMake was not aware of which headers files the generation
of `install_tactic.cpp` depended on. Consequently this could result
in broken incremental builds if

* Existing headers that declared tactics/probes changed.
* New tactics/probes were added to new header files.

Now the `z3_add_component()` CMake function has been modifed to take an
optional `TACTIC_HEADERS` argument which allows the headers that declare
tactics/probes to be explicitly listed. The necessary component
declarations have been modified to declare their tactic/probe header
files.

With this information CMake will now regenerate `install_tactic.cpp`
correctly.

This required the `mk_install_tactic_cpp_internal()` function to be
changed to take a list of header files rather than a list of component
source directories. The two consumers (CMake and Python/Makefile build
systems) of this function have been modified to work with this change.

This partially fixes #1030.
2017-06-21 23:03:48 +01:00
Nikolaj Bjorner b516f22549 refine test for non-fd to be more inclusive while addressing #1092
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 08:01:03 -07:00
Nikolaj Bjorner a3ee785923 disable dt2bv for quantified variables as enum2bv does not handle them. #1092
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-06-21 07:29:21 -07:00