3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-09-02 08:10:43 +00:00
Commit graph

109 commits

Author SHA1 Message Date
Nikolaj Bjorner
52619b9dbb pull unstable
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 14:57:11 -07: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
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
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
Nuno Lopes
d3fb5f2a4c fix misc compiler warnings
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-02-15 11:53:24 +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
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
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
Nuno Lopes
6ab167f0c7 fix debug build
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2015-01-25 18:31:04 +00:00
Nikolaj Bjorner
37fca65517 fuse join with projection avoiding double insert (but at cost of double projection)
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-25 04:37:42 -08:00
Nikolaj Bjorner
761c7d9a40 adding annotation to logging to show number of columns and rows, adding dual propagation sketch
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-25 04:01:18 -08:00
Andrey Rybalchenko
044f2a93e7 fix build with gcc 2015-01-23 19:53:14 +00:00
Nuno Lopes
036a56e360 DoC: remove another unused variable 2015-01-23 17:09:17 +00:00
Nuno Lopes
93db50ff64 DoC: further code simplifications 2015-01-23 17:04:09 +00:00
Nuno Lopes
92f6dd4de4 DoC: factorize join and join_project code so that join_project learns need tricks (i.e., prune empty vectors upfront) 2015-01-23 16:55:02 +00:00
Nikolaj Bjorner
05b7aa3ebb flush cache when proof mode changes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-15 14:32:18 +05:30
Nuno Lopes
a211fcfb9e muZ/datalog/udoc: fix bug in join_project
The bug was that we could project out don't care columns and don't take copied bits into account.
Bug reported by Ari Fogel

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-12-28 17:05:17 +00:00
Nuno Lopes
ee71c434b6 muZ/datalog: remove a few spurious make_empty() calls from the instruction handlers
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-12-22 14:17:07 +00:00
Nuno Lopes
dddb31fc37 minor optimization to previous patch
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-12-22 13:03:06 +00:00
Nuno Lopes
4ee83c1774 Datalog/DoC: add fast path for join_project for the case 'h(X) :- f(X), g(X).'
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-12-22 12:53:35 +00:00
Nuno Lopes
a7c7b70e19 muZ Datalog: be more aggressive when forming join_project 2014-12-22 12:49:31 +00:00
Nikolaj Bjorner
1d18934ddb fix overflow and integrality bugs reported by Phan
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-15 16:19:38 -08:00
Nikolaj Bjorner
ae3d16bc50 fix overflow and integrality bugs reported by Phan
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-15 16:18:09 -08:00
Nikolaj Bjorner
e1e27f2c26 optimize the merge function
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-09 10:17:20 -07:00
Nikolaj Bjorner
d038c7bf89 fixing udoc/adding tuned join_project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-08 22:07:19 -07:00
Nikolaj Bjorner
2362e01a9f add unit test for join-project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-08 17:17:14 -07:00
Nikolaj Bjorner
28fb266d8c Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2014-10-08 11:05:50 -07:00
Nikolaj Bjorner
00555def4d improve error handling of parameters and remove work notes from udoc_relation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-08 11:05:38 -07:00
Nuno Lopes
de73a4d893 DoC: fix bug in filter_project with '(not (= c1 c2))' style constraints
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-08 11:12:41 +01:00
Nuno Lopes
0cf04589ff DoC: enable filter_project
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-08 09:58:02 +01:00
Nikolaj Bjorner
a3a008bdde update Deprecated API to avoid memory leak and crash when there is a core, ensure invariant in new code
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-07 19:54:04 -07:00
Nuno Lopes
06c7f3f246 DoC: fix bugs in the new join_project
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-07 14:33:23 +01:00
Nuno Lopes
1066955a0f Merge branch 'opt' of https://git01.codeplex.com/z3 into opt 2014-10-07 13:01:49 +01:00
Nuno Lopes
528bb507b2 DoC: fix memory leak
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-07 13:01:35 +01:00
Nikolaj Bjorner
5287089be2 sketch tuned join-project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-07 04:31:24 -07:00
Nikolaj Bjorner
10c40d64b6 streamline filter-by-negation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-06 15:56:49 -07:00
Nikolaj Bjorner
7ef311acd3 updated check_relation test for join-project
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-06 13:05:53 -07:00
Nuno Lopes
893d51eae8 DoC: implement slow path of filter_negated using join+project.
disable fast path since it's broken

Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-06 18:10:03 +01:00
Nikolaj Bjorner
db20b2502d try qx
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-04 19:50:42 -07:00
Nikolaj Bjorner
93a757f45b add two failing test cases
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-10-02 10:38:43 -07:00
Nuno Lopes
e778f3e65b DoC: fix bug in insertion when inserting an element equal to on on the disjunction already
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-02 12:49:38 +01:00
Nuno Lopes
7d599fa047 DoC: fix bug I previously introduced in insert
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-02 11:54:53 +01:00
Nuno Lopes
9828b26379 DoC: fix slow path of filter_by_negation when columns are repeated in tgt relation
Signed-off-by: Nuno Lopes <a-nlopes@microsoft.com>
2014-10-02 09:56:06 +01:00