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

4480 commits

Author SHA1 Message Date
Nikolaj Bjorner 67ea78a4a5 Add basic MARCO example
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 08:00:23 -07:00
Nikolaj Bjorner 914bf2ff3b extend constant folding for bit-vector overflow/underflow operators, #657
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 07:43:05 -07:00
Christoph M. Wintersteiger e9eb88e1b3 fixed java build issues. Relates to #648. 2016-06-24 15:08:56 +01:00
Christoph M. Wintersteiger 3e96a7972f Merge pull request #648 from cheshire/no_finalizers
Replace finalizers with PhantomReferences in Java API
2016-06-24 14:17:29 +01:00
Christoph M. Wintersteiger d90a575981 Merge pull request #646 from martin-neuhaeusser/ocaml-c89
Make C-layer of OCaml bindings C89 compatible.
2016-06-24 13:40:50 +01:00
Nikolaj Bjorner 98a34ca51f Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-23 21:39:34 -07:00
Nikolaj Bjorner c72ed3e6b4 update core minimization code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-23 21:39:28 -07:00
Christoph M. Wintersteiger 0a575936d0 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-23 19:31:08 +01:00
Christoph M. Wintersteiger 8bde7b8a4c Added facilities for dumping smt_params for debugging purposes 2016-06-23 19:31:00 +01:00
Nikolaj Bjorner 41edf5f91e Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-22 20:25:55 -07:00
Nikolaj Bjorner 5b497b6249 reduce set of mainly verbose warnings raised by -Wmaybe-uninitialized and unused variable warnings from release mode builds
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-22 20:25:47 -07:00
Christoph M. Wintersteiger 89b1d7d8da Fixed test case 2016-06-22 18:52:40 +01:00
Nikolaj Bjorner fa6f9b4a37 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-20 16:39:08 -07:00
Nikolaj Bjorner 9c099d6b1b fix mb maximization logic, so far not accessible
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-20 16:39:03 -07:00
George Karpenkov b086aac45f Use constructors instead of static methods for Context.java. 2016-06-16 18:21:55 +02:00
Nikolaj Bjorner bfe26390f0 fix bug introduced when hiding unused variables in 96e157e, reported by Mikolas Janota
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-14 08:12:32 -07:00
Nikolaj Bjorner 8da0146318 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-14 08:10:21 -07:00
Nikolaj Bjorner 9253ca9d86 make use of warning_msg safe for formatting. Thanks to Scott McPeak for reporting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-14 08:10:10 -07:00
Christoph M. Wintersteiger c8c262fb93 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-14 13:14:30 +01:00
Christoph M. Wintersteiger 3ea71b4b25 Fixed SMT2 scanner to allow 0xFF characters.
Thanks to Santiago Zanella-Beguelin for reporting this issue.
2016-06-14 12:49:48 +01:00
Nikolaj Bjorner b11f9050e3 fix bugs exposed from bad indentation warnings, #650
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-13 18:20:25 -07:00
Nikolaj Bjorner 16ad33bf39 add collection of statistics #652
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-13 18:17:49 -07:00
George Karpenkov b65d83aacf Java API: explain the phantom references mechanics in Javadoc. 2016-06-13 12:22:32 +02:00
George Karpenkov a914822346 JavaAPI: DecRefQueue -- do not use move_limit for now. 2016-06-13 12:18:31 +02:00
George Karpenkov 26d6c99aac Typo in Javadoc. 2016-06-13 12:11:03 +02:00
George Karpenkov 27aa37946e Do not lock on context creation and deletion. 2016-06-13 12:09:34 +02:00
Nikolaj Bjorner c7ff05cc78 enable core minimization with qsat in case it turns out to be useful
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-12 15:58:12 -07:00
George Karpenkov 22ffd65d1e Java API: split incRef into incRef and addToReferenceQueue
One method should do one thing only, it's easy to mix things up
otherwise.
2016-06-12 21:01:58 +02:00
George Karpenkov 2a347f04bf Java API: FuncInterp.Entry should be an inner static class
...as it does not use any fields of the outer FuncInterp object.
2016-06-12 21:00:51 +02:00
George Karpenkov 5657399d55 Bugfix for incorrect order of operations. 2016-06-12 20:39:54 +02:00
George Karpenkov 495ef0f055 Java bindings with no finalizers
Replacing finalizers with PhantomReferences, required quite a lot of
changes to the codebase.
2016-06-12 20:27:01 +02:00
George Karpenkov dfc80d3b69 Do not needlessly catch exceptions in Java bindings
A lot of existing code in Java bindings catches exceptions just to
silence them later.

This is:
a) Unnecessary: it is OK for a function to throw a RuntimeException
without declaring it.
b) Highly unidiomatic and not recommended by Java experts (see Effective
Java and others)
c) Confusing as has the potential to hide the existing bugs and have
them resurface at the most inconvenient/unexpected moment.
2016-06-12 14:14:11 +02:00
Nikolaj Bjorner 9f5a117443 move mus to solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-10 16:24:14 -07:00
martin-neuhaeusser f069b1c0e9 Make C-layer of OCaml bindings C89 compatible.
This patch ensures that the C code generated for the OCaml stubs complies with C89. It is needed to compile Z3 with OCaml support with Visual Studio versions older than VS2013.
2016-06-10 16:49:06 +02:00
Nikolaj Bjorner 19f98547f7 fix memory leak Issue #643
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-09 21:59:10 -07:00
Christoph M. Wintersteiger bd187e0989 Bugfix for fp.min/fp.max in fpa2bv converter; hide BV UFs from FP models.
Fixes #642
2016-06-09 17:51:31 +01:00
Christoph M. Wintersteiger bfeab9cc15 Added facilities for hiding UFs in smt::model_generator 2016-06-09 17:49:45 +01:00
Christoph M. Wintersteiger 879363157f Bugfix for fpa2bv_converter 2016-06-09 12:09:53 +01:00
Nikolaj Bjorner cb29c07f06 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-08 13:56:12 -07:00
Nikolaj Bjorner 5253f3a12b internalize unsupported operations
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-08 13:56:01 -07:00
Christoph M. Wintersteiger 9b91e6ff0a Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-08 12:07:19 +01:00
Christoph M. Wintersteiger a2eb824590 Added __nonzero__ and __bool__ functions to Python Z3 ASTs to enable use of Python lists (and similar).
Thanks to Vlad Shcherbina for the recommendation (see http://stackoverflow.com/questions/37669576/converting-z3-cnf-formula-into-list-of-lists-representation-using-z3py/37679447?noredirect=1#comment62859886_37679447)!
2016-06-08 12:07:13 +01:00
Johannes Kanig 9bfa73ee06 Take into account number of monomials for rlimit counting
Should fix issue #611
2016-06-08 11:17:26 +09:00
Mikolas Janota 9df2a183d6 Adding translation to ackr_model_converter. 2016-06-06 18:06:45 +01:00
Nikolaj Bjorner 736f2bef46 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-04 20:08:26 -07:00
Nikolaj Bjorner e8d85f91d7 disable filtering on negated tails. Issue #634
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-04 20:08:13 -07:00
Christoph M. Wintersteiger f2a869fb58 std::unordered_map -> std::map 2016-06-04 11:01:46 +01:00
Christoph M. Wintersteiger 626b9160bf collect-statistics additions 2016-06-03 20:45:42 +01:00
Christoph M. Wintersteiger b54ef3623b added collect-statistics tactic 2016-06-03 20:26:05 +01:00
Nikolaj Bjorner 19db0c5f2c Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-03 10:13:27 -07:00
Nikolaj Bjorner 219b47822b avoid qsat when formulas are quantifier-free. Go directly to SMT
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-03 10:13:16 -07:00
Christoph M. Wintersteiger a94aff23e6 Added clearer FP conversion functions to the Python API.
Implements #476
2016-06-03 13:23:12 +01:00
Nikolaj Bjorner e9e926d4d6 UINT32_MAX -> UINT_MAX
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-02 21:00:18 -07:00
Nikolaj Bjorner 21158ea03f Merge branch 'master' of https://github.com/Z3Prover/z3 2016-06-02 20:58:20 -07:00
Nikolaj Bjorner eab5a84f62 fix issues with int.to.str and seq.len encodings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-02 20:57:52 -07:00
Christoph M. Wintersteiger 83ad5d65e4 Replaced fp.rem conversion to bit-vectors with an SMT-compliant one.
Fixes #561
2016-06-02 20:22:02 +01:00
Christoph M. Wintersteiger b3b5c6226b MPF code simplification 2016-06-02 17:12:24 +01:00
Christoph M. Wintersteiger ade2dbe15a Cache cleanup fix for bv_simplifier_plugin.
Fixes #615
2016-05-31 16:47:14 +01:00
Christoph M. Wintersteiger 47e75827ee theory_fpa refactoring 2016-05-31 16:22:48 +01:00
Christoph M. Wintersteiger 302c491535 theory_fpa refactoring 2016-05-31 16:22:24 +01:00
Christoph M. Wintersteiger 03f6b465b9 comment typos 2016-05-31 16:14:50 +01:00
Nikolaj Bjorner 39acd3594a test variants for seq_solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-30 18:15:10 -07:00
Nikolaj Bjorner f03032bd09 updated seq solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-29 14:01:05 -07:00
Nikolaj Bjorner cddf8091b5 strengthen support for int.to.str and length reasoning. Issue #589
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-28 12:36:50 -07:00
Nikolaj Bjorner c3f498a640 strengthen support for int.to.str and length reasoning. Issue #589
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-28 12:26:47 -07:00
Nikolaj Bjorner 8c99d3c431 tidy unbound compressor code, add invariant checks
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-28 11:05:26 -07:00
Nikolaj Bjorner 3aea63edb1 check for cancellation before internalizing and during to avoid errors. Issue #625
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-27 17:27:37 -07:00
Nikolaj Bjorner 236f1c2a3e bypass stale rules as part of unbounded compression. Issue #624
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-27 10:31:28 -07:00
Nikolaj Bjorner 18a9b89e30 bypass stale rules as part of unbounded compression. Issue #624
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-27 09:38:23 -07:00
Nikolaj Bjorner 50d334e4e9 fix non-determinism bug in simple joins. Keys were normalized based on pointer equality not object identifier equality. Also some ptr hashtables were used with pointer hashes, and then traversed. reported in issue #619
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-27 07:51:02 -07:00
Nikolaj Bjorner cfffb0b3c5 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-05-27 07:49:45 -07:00
Nikolaj Bjorner 84ff6fd62a fix non-determinism bug in simple joins. Keys were normalized based on pointer equality not object identifier equality. Also some ptr hashtables were used with pointer hashes, and then traversed
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-27 07:49:38 -07:00
Christoph M. Wintersteiger 18340b0e95 fix for pb2bv_model_converter 2016-05-26 18:42:57 +01:00
Christoph M. Wintersteiger 1fe4a82c76 Added implementation of pb2bv_model_converter::translate
Fixes #623
2016-05-26 18:39:51 +01:00
Christoph M. Wintersteiger ec270acd32 Removed hwf.mul/hwf.div test code. 2016-05-26 15:11:21 +01:00
Christoph M. Wintersteiger 9752888704 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-05-26 15:06:02 +01:00
Christoph M. Wintersteiger e28929c72c Removed hwf.rem test code. 2016-05-26 15:05:55 +01:00
Nikolaj Bjorner cdf3c2571c Merge pull request #622 from dstaple/master
Export default tactic for use via the SMT-LIB 2 interface.
2016-05-26 06:47:27 -07:00
Christoph M. Wintersteiger 4b00ea69db refcount fix for theory_fpa 2016-05-26 14:01:06 +01:00
Douglas B. Staple 725b1c56e5 Export default tactic for use via the SMT-LIB 2 interface. 2016-05-26 09:55:08 -03:00
Christoph M. Wintersteiger 15d871cfe0 Bug and style fix for fpa2bv converter. 2016-05-26 13:39:54 +01:00
Nikolaj Bjorner b8716b3339 avoid use-before-def crashes fp-operations.smt2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-25 14:32:39 -07:00
Nikolaj Bjorner dfbbea31b7 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-05-25 14:23:17 -07:00
Nikolaj Bjorner a07381ac19 fix regression in evaluator exposed by build failure on fp-array-6.smt2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-25 14:23:07 -07:00
Christoph M. Wintersteiger 04a68bbb0a Eliminated a number of potential memory leaks in fpa2bv code.
Relates to #615
2016-05-25 18:50:57 +01:00
Christoph M. Wintersteiger f1c915bcf1 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-05-25 18:21:14 +01:00
Christoph M. Wintersteiger ce69072305 Made nra tactic public. 2016-05-25 18:21:04 +01:00
Nikolaj Bjorner cd441c318e add compare utility to compress common cases
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-25 09:03:24 -07:00
Nikolaj Bjorner af3cc7e578 tune array evaluation, still disabled
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-25 08:57:59 -07:00
Christoph M. Wintersteiger c4610e0423 renamed variable to avoid clashes 2016-05-24 14:37:43 +01:00
Christoph M. Wintersteiger 9717161bb8 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-05-24 10:58:23 +01:00
Nikolaj Bjorner c20b391cf7 reduce warnings
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-23 14:32:51 -07:00
Christoph M. Wintersteiger 617e941015 fp2bv refactoring 2016-05-23 18:10:17 +01:00
Christoph M. Wintersteiger 8370bb8986 removed unused variable 2016-05-23 16:31:57 +01:00
Christoph M. Wintersteiger bf3a5effbc Fixed and refactored fp.min/fp.max for theory_fpa.
Fixes #616
2016-05-23 15:38:25 +01:00
Christoph M. Wintersteiger 184aebab59 variable naming 2016-05-23 15:08:27 +01:00
Nikolaj Bjorner cb6d008da8 Merge branch 'master' of https://github.com/Z3Prover/z3 2016-05-22 17:03:37 -07:00
Nikolaj Bjorner c725fe7698 tune lra optimization
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-22 17:03:29 -07:00
Christoph M. Wintersteiger 218e47f34b Removed unused variable 2016-05-22 18:21:28 +01:00
Christoph M. Wintersteiger d4bc8ebb70 FP to BV translation of UFs refactored. 2016-05-22 18:16:57 +01:00