Nuno Lopes
5703abd3f1
Merge branch 'unstable' of https://github.com/Z3Prover/z3 into unstable
2015-07-08 13:39:26 +01:00
Nuno Lopes
8edd551f20
remove uneeded calls to datalog_context::get_rules(), since it can be expensive.
...
thanks to Henning Guenther for finding this.
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-07-08 13:39:15 +01:00
Nikolaj Bjorner
940fed16e1
enforce stringstream formatting to avoid default format routine. fixes issue #149
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-06 09:11:52 -07:00
Nuno Lopes
f29d82858f
make check_relation::check_equiv() exit only when solver return SAT (ie, avoid false-positives with unknowns)
...
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-06-24 17:13:24 +01:00
Nuno Lopes
30eb461e01
disable debug output from check_relation
...
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-06-24 17:06:22 +01:00
Nuno Lopes
5cc8c8bde6
udoc: micro optimization for compiler_guard
...
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-06-24 17:06:21 +01:00
Nikolaj Bjorner
3de2a70a48
move functionality from qe_util to ast_util
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-24 17:06:17 +01:00
Matthias Schlaipfer
37cb5b9597
Fixed a bug in udoc_relation's join project
...
An optimization was applied in too many cases and led to wrong results.
Signed-off-by: Matthias Schlaipfer <t-matsch@microsoft.com>
2015-06-24 17:06:06 +01:00
Nikolaj Bjorner
ca31c979fe
re-enable transformations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-11 12:00:21 -07:00
Nikolaj Bjorner
868b430b8b
use scoped pointers instead of explicit deallocation (robust under exceptions)
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-11 10:19:29 -07:00
Alex Horn
8c097044e8
Add basic compiler support for min aggregation function
...
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-06-11 16:23:26 +01:00
Alex Horn
c8a123b7dd
Disable a few rule transformations
...
For this prototype, we need to disable three rule transformations,
namely coi_filter, similarity_compressor, rule_inliner. But
disabling the inliner causes problems with the tracer in the
datalog interpreter. Since a new proprocessor is underway, we
skip the problematic trace outputs for now.
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-06-11 16:16:47 +01:00
Alex Horn
565c0f785f
Fix memory leaks
...
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-06-11 09:20:52 +01:00
Alex Horn
bd57994f78
Merge branch 'unstable' of https://github.com/Z3Prover/z3 into minimum
...
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
Conflicts:
src/test/dl_table.cpp
2015-06-10 20:35:28 +01:00
Alex Horn
9b7c5658c8
Ignore min aggregation functions in compiler for now
...
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-06-10 20:06:09 +01:00
Nikolaj Bjorner
b08ccc7816
added missing Copyright forms
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-06-10 11:54:02 -07:00
Alex Horn
140fb7942d
Add datalog infrastructure for min aggregation function
...
This patch adds an instruction to the datalog interpreter and
constructs a new AST node for min aggregation functions.
The compiler is currently still work in progress and depends on
changes made to the handling of simple joins and the preprocessor.
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-06-10 18:14:14 +01:00
Matthias Schlaipfer
bc94007207
Fixed non-deterministic behaviour in relation_map
...
Use of ptr_hash and subsequent iteration led to non-deterministic behaviour in Datalog engine.
Signed-off-by: Matthias Schlaipfer <t-matsch@microsoft.com>
2015-06-02 14:58:31 +01:00
Nuno Lopes
b10f79a941
dl_compiler: minor simplifications
...
Signed-off-by: Nuno Lopes <nlopes@microsoft.com>
2015-05-27 17:07:18 +01:00
Nikolaj Bjorner
28f6adf79e
disable hybrid relations pending overhaul/deletion of product relations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-05-20 09:21:55 -07:00
Nikolaj Bjorner
203c5015c8
fix debian amd64 warnings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-18 15:17:21 -07:00
Nuno Lopes
d8dc86f558
Merge branch 'unstable' of https://github.com/mschlaipfer/z3 into unstable
2015-05-18 16:38:19 +01:00
Nikolaj Bjorner
64bd62b17e
fix gcc compiler warnings
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-16 11:56:04 +01:00
Matthias Schlaipfer
c82319b358
Refactor count_vars and count_rule_vars
...
ast_manager m was not used
2015-05-14 17:04:38 +01:00
Alex Horn
e576ca50bf
Fix typo in documentation
...
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-05-12 14:24:59 +01:00
Alex Horn
efaba8eb40
Fix negation in documentation
...
Signed-off-by: Alex Horn <t-alexh@microsoft.com>
2015-05-12 14:22:32 +01:00
Nuno Lopes
c2ef566ddc
Merge pull request #81 from ahorn/opt
...
Fix g++ compile-time error
2015-05-12 10:44:28 +01:00
U-EUROPE\t-alexh
b882a94f6a
Fix g++ compile-time error
...
Signed-off-by: U-EUROPE\t-alexh <t-alexh@microsoft.com>
2015-05-12 10:23:25 +01:00
Nikolaj Bjorner
bf6ab3fc03
local state
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-11 17:11:52 -07:00
Nikolaj Bjorner
839e3fbb7c
add ddnf tests, add facility to solve QF_NRA + QF_UF(and other theories) in joint solver to allow broader use of QF_NRA core
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-05-09 19:40:34 -07:00
Nikolaj Bjorner
ffc3a36dcb
checked ite-expressions as shared for bounds detection
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-04-23 19:59:33 +02:00
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