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

2869 commits

Author SHA1 Message Date
Christoph M. Wintersteiger 1d9c9bcf7a Made the InterpolationContext public.
Fixes #20
2015-03-31 19:51:42 +02:00
Christoph M. Wintersteiger 99ea0a8c19 Bugfix for mpf is_normal.
Fixes #17
2015-03-30 08:02:57 +01:00
Christoph M. Wintersteiger 5911f788c3 Improved translation from reals to floats (fp.to_real).
Fixes #14
2015-03-29 14:39:47 +01:00
Christoph M. Wintersteiger 0ed16c09f9 Bugfix for fp.isNegative.
Fixes #13
2015-03-29 13:57:11 +01:00
Christoph M. Wintersteiger 690eb8eaca Bugfix for fp.isSubnormal.
Fixes #10
2015-03-29 13:31:44 +01:00
Christoph M. Wintersteiger fc84461e31 Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-03-26 14:49:45 +00:00
Christoph M. Wintersteiger 9cbf45f689 Added int to float conversion. 2015-03-26 14:48:55 +00:00
Nikolaj Bjorner 10cdbb881f enable canceling simplex on interrupt, investigating PDR inconsistency
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-25 12:13:57 -07:00
Nikolaj Bjorner 39892aae10 cache datatype util in context to avoid performance bug, codeplex issue 195
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-03-25 11:46:17 -07:00
Nikolaj Bjorner 3c5897eea0 Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-03-25 11:25:12 -07:00
Nikolaj Bjorner 2aa91eee70 cache datatype util in context to avoid performance bug, codeplex issue 195
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-03-25 11:24:47 -07:00
Christoph M. Wintersteiger a792790882 Fixed performance problems with enumeration sorts (Codeplex #190). 2015-03-25 18:08:56 +00:00
Christoph M. Wintersteiger 1c77ad00c3 Added accessors to enumeration sorts. Thanks to codeplex user steimann for suggesting this.
(http://z3.codeplex.com/workitem/195)

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-24 21:42:05 +00:00
Christoph M. Wintersteiger b76d588c28 Renamed the soft_timeout option to just timeout.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-21 16:10:30 +00:00
Ken McMillan be709802cd merging interpolation fix (issue 182) 2015-03-20 17:46:01 -07:00
Ken McMillan 47d33452c6 interpolation fix (issue 182) 2015-03-20 17:39:45 -07:00
Christoph M. Wintersteiger ed81e3b9d8 Bugfix for BV-SLS initialization
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-20 17:07:32 +00:00
Nikolaj Bjorner 4145b92136 use of regions for AUX lemmas from pb solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-11 11:52:07 -07:00
Nikolaj Bjorner f47cc70236 use of regions for AUX lemmas from pb solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-11 11:48:52 -07:00
Nuno Lopes 4ed062d54a fix missing memset in my previous commit
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-03-11 11:04:33 +00:00
Nikolaj Bjorner 695ce643f5 Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-03-11 00:45:09 -07:00
Nikolaj Bjorner 755a259ea0 fix codeplex issue 188
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-11 00:44:56 -07:00
Nikolaj Bjorner 51267f3aba take into account that bound from optimization may create atom that clashes with inequality bound from term
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-11 00:26:49 -07:00
nikolajbjorner fe6af38d97 debugging assertion violation
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-03-10 20:57:01 -07:00
Nuno Lopes 44e647e72b add reallocate() function and use it in bit_vector and vector containers
give a speedup of 1-4%

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-03-10 16:53:47 +00:00
Christoph M. Wintersteiger 55ca6ce44b Resurrected the dack* options.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-04 19:15:22 +00:00
Christoph M. Wintersteiger 858ce1158d Bugfix in model translation (ast_manager mismatch after par-or). Thanks to stackoverflow user user297886 for reporting this issue.
http://stackoverflow.com/questions/28852722/segmentation-fault-while-using-par-or-tactic
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-03-04 18:30:06 +00:00
Nuno Lopes 89c43676d5 save memory in the sat solver to tentatively speed things up.
I get a slight speedup on my benchmarks. There's still one extra sign extend, which will be removed in a follow-up patch

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-03-02 09:50:35 +00:00
Nuno Lopes e64760abbd fix the build with VS
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-03-02 09:18:15 +00:00
Nikolaj Bjorner 8bcd6edd08 temporary build fix
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-03-01 15:19:57 -08:00
Nuno Lopes 8029e31ddd add compiler attributes to allocation functions
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-28 17:31:50 +00:00
nikolajbjorner 3bf22964dd Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-02-27 11:09:05 -08:00
nikolajbjorner 3ca3c948cf add bit-vector extract shortcuts to C++ API
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-27 11:08:49 -08:00
Nuno Lopes 71d31c1267 minor optimization to reset() methods in smt::ketnel and smt::quantifier_manager
Signed-off-by: Nuno Lopes <a-nlopes@MSRC-4051274.europe.corp.microsoft.com>
2015-02-27 11:48:14 +00:00
Nikolaj Bjorner 696a1a453a Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-02-24 17:34:52 -08:00
Nikolaj Bjorner 64e2011d42 fix crash in explanation generation. Codeplex issue 181
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-24 17:34:38 -08:00
Nikolaj Bjorner dffb0ff844 Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2015-02-24 17:04:01 -08:00
Nikolaj Bjorner b8fbc32689 fix crash in explanation generation. Codeplex issue 181
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-24 17:03:34 -08:00
nikolajbjorner fbf8289394 probe also hard constraints before enabling SAT solver. Bug reported by Zvonimir Pavlinovic
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-24 14:02:23 -08:00
Christoph M. Wintersteiger a51aed0133 Fixed bug in constant propagation
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-24 21:26:25 +00:00
nikolajbjorner fcb4962016 add patch suggested by Arie Gurfinkel
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-23 11:18:24 -08:00
nikolajbjorner f0967c0572 Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-02-23 10:29:10 -08:00
nikolajbjorner 0d9f949ab2 Fix memory smash on double free of clauses
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-23 10:28:32 -08:00
Nikolaj Bjorner 8ea7a1905f reset scope on reset, codeplex issue 183
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-22 10:16:38 -08:00
Nikolaj Bjorner c3232693f0 use PB solver instead of full arithmetic for bouding Pareto fronts so that difference logic theory isn't broken. Codeplex issue 175
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-22 09:46:21 -08:00
Nuno Lopes a106b4125a move definition of Z3_API to the right file
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-22 11:57:40 +00:00
Nuno Lopes 1e30fd2c65 Hide non-exported symbols when compiling with gcc/clang.
I get a 17% reduction in the size of libz3.so on linux 32 bits, plus a 0.5-1% speedup when using the API.

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-22 11:38:46 +00:00
Nuno Lopes 5676fbbc9e compiler love: make a few symbols static and avoid unneeded relocations
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-22 11:13:51 +00:00
Nikolaj Bjorner 49483fdc28 take conflicts during restart into account. reported by Arie Gurfinkel
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-21 02:08:00 -08:00
nikolajbjorner a96a9a076d Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable 2015-02-19 19:10:21 -08:00
nikolajbjorner aa40316268 rewrite terminology for policheck
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-19 19:09:12 -08:00
Ken McMillan ece838bc80 merge interpolation fix 2015-02-19 12:38:23 -08:00
Ken McMillan 185f9325a6 fixed interpolation bug 2015-02-19 12:25:06 -08:00
nikolajbjorner 7735a40752 fix bug in array simplification. Codeplex issue 173
Signed-off-by: nikolajbjorner <nbjorner@microsoft.com>
2015-02-19 07:01:55 -08:00
Christoph M. Wintersteiger 9b137d54d3 Bugfix and new examples for implicit assumptions in Z3_solver_assert_and_track. Thanks to Amir Ebrahimi for reporting this issue!
(See http://stackoverflow.com/questions/28558683/modeling-constraints-in-z3-and-unsat-core-cases)

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-18 16:25:27 +00:00
Nikolaj Bjorner 911ffc370a separate MaxSMT functionality to enable using this independently (and incrementally) of overall context
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-16 09:11:28 +01:00
Nuno Lopes d3fb5f2a4c fix misc compiler warnings
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-15 11:53:24 +00:00
Christoph M. Wintersteiger 614caaca62 Fix for arrays with arity > 1 in static_features 2015-02-09 16:20:17 +00:00
Christoph M. Wintersteiger 83a90a9133 Fixed infinite loop when nightly tests crash while std::cin is attached to /dev/null
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-09 15:26:25 +00:00
Christoph M. Wintersteiger 3a8a62fc4c Added array index/element sort detection to static_features 2015-02-09 13:41:45 +00:00
Christoph M. Wintersteiger 0a22f1e0f5 array simplifier fix for a fix...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-08 18:07:10 +00:00
Christoph M. Wintersteiger 321c181fd8 Bugfix for array_simplifier_plugin. Thanks to codeplex user mtappler for reporting this.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-08 18:04:23 +00:00
Christoph M. Wintersteiger 0298519b4f Revert "Bugfix for array simplifier"
This reverts commit f9d38a97df.
2015-02-08 17:53:06 +00:00
Christoph M. Wintersteiger f9d38a97df Bugfix for array simplifier
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-08 17:49:30 +00:00
Christoph M. Wintersteiger d7a37f246c More bugfixes for smt setup
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-08 16:59:46 +00:00
Christoph M. Wintersteiger 4792c5fb7c Fixed bugs in static features and smt setup
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-08 16:53:08 +00:00
Christoph M. Wintersteiger 72345026be Revert "propagate_ineqs synchronization fix"
This reverts commit 73cebc24c8.
2015-02-08 15:16:24 +00:00
Christoph M. Wintersteiger 73cebc24c8 propagate_ineqs synchronization fix 2015-02-08 13:25:40 +00:00
Christoph M. Wintersteiger a78dd680fb MPN synchronization fix 2015-02-08 13:25:18 +00:00
Nikolaj Bjorner ded635cd06 Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2015-02-08 10:25:44 +01:00
Nikolaj Bjorner 8141dadc89 break on small cores
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-02-08 10:22:06 +01:00
Christoph M. Wintersteiger 7e579604e1 Eliminated the old MS-Bignum interface because it stood in the way of progress.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 19:39:15 +00:00
Christoph M. Wintersteiger da01f237fd fixed memory leaks
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 18:06:13 +00:00
Christoph M. Wintersteiger 778dd997d3 formatting (tabs)
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 18:05:52 +00:00
Christoph M. Wintersteiger 359c7e4da9 Removed unnecessary variables and added initialization to others to silence warnings.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 14:47:26 +00:00
Christoph M. Wintersteiger b96551a1a2 .NET/Java/ML: Moved toggle_warning_messages to Global, added en/disable_trace.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-07 14:17:39 +00:00
Christoph M. Wintersteiger 941d1063dd FPA rewriter and MPF bugfixes
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-06 18:48:14 +00:00
Christoph M. Wintersteiger 5e60bcd920 FPA: fixes for the fpa_rewriter to enable model extraction and validation.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-06 16:53:31 +00:00
Christoph M. Wintersteiger 0db973ab4b undid previous fix
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-05 19:02:35 +00:00
Christoph M. Wintersteiger de35801117 Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-05 18:34:23 +00:00
Christoph M. Wintersteiger 088dc411ba fixed potential handle leak
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-05 18:32:36 +00:00
Nuno Lopes bbefc54bf5 add implementation of UNREACHABLE for MSVC in release mode.
This reduces code size of Z3 by 0.1%  \o/

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-05 09:53:26 +00:00
Nuno Lopes 9d5bc024e4 add implementation of UNREACHABLE for MSVC in release mode.
This reduces code size of Z3 by 0.1%  \o/

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-05 09:51:05 +00:00
Christoph M. Wintersteiger a4c599a435 typo
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-04 18:25:32 +00:00
Christoph M. Wintersteiger 3478cdb756 Added smt kernel setup for QF_FP(BV). Thanks to codeplex user smccamant for reporting this performance problem.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-02-03 12:30:42 +00:00
Nuno Lopes 0c4d82de58 datalog: optimize previous commit
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-02 11:49:58 +00:00
Nuno Lopes 5548ecc853 Datalog: fix bug with the following 2 scenarios:
A(#x00) :- not B().
A() :- not B().

The first case can be further optimized, but committing this for correctness

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-02 11:29:49 +00:00
Nuno Lopes 2444440edc DoC: implement get_size_estimate_bytes()
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-02 11:28:57 +00:00
Nuno Lopes c0e0b39a1d Datalog: save memory in the compiler by using a union
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-02 10:34:19 +00:00
Christoph M. Wintersteiger 4bed5183f8 Made DRQ objects public in Java and .NET APIs.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-30 21:58:43 -06:00
Christoph M. Wintersteiger d7a62baef4 Improved memory use of the Java API. Thanks to Joerg Pfaehler for reporting this issue!
+ formatting

Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-30 21:10:22 -06:00
Christoph M. Wintersteiger 3b78509d0a Improved memory use of the .NET API
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-30 20:45:16 -06:00
Nuno Lopes 6017dcace3 datalog: fix compilation for rules like a(X) :- not b(X).
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-01-29 20:41:22 +00:00
Nuno Lopes 4be2f608f1 Datalog: make the compiler reuse registers in simple cases.
this also allows some code simplification

 dl_compiler.cpp |  133 +++++++++++++++++++-------------------------------------
 dl_compiler.h   |   16 +++---
 2 files changed, 54 insertions(+), 95 deletions(-)

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-01-29 13:00:44 +00:00
Nuno Lopes 2e083ab9c2 DoC: specialize union for the case dst=empty and/or delta=empty
this avoids O(n^2) insert and becomes O(n)

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-01-29 08:50:12 +00:00
unknown f020b7c7b8 Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2015-01-28 17:54:26 -08:00
Christoph M. Wintersteiger bcfefdd8ee Bugfix for the FPA theory. Thanks to codeplex user smccamant for reporting this one.
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-28 15:38:08 -06:00
Nuno Lopes 1701af9dc9 DoC: fix fast_empty() for tables without columns
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-01-28 11:38:26 +00:00
Nuno Lopes 9e447281ed Datalog: fix bug in compilation of negated queries that referenced vars not in the head.
We will now first add unbounded columns for negation and for filtering
do filter_negation, and finally filter_interpret(_project)
2015-01-27 14:21:34 +00:00
Nuno Lopes 83bae6c8aa DoC: fix bug filter_by_negation when negation table has 0 columns
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-01-27 13:42:14 +00:00