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
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
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
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
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
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
unknown
f020b7c7b8
Merge branch 'opt' of https://git01.codeplex.com/z3 into opt
2015-01-28 17:54:26 -08: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
Nikolaj Bjorner
aae37c2317
Merge branch 'opt' of https://git01.codeplex.com/z3 into opt
2015-01-23 13:06:27 -08:00
Nikolaj Bjorner
552cbd840f
adding soft-assertions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-23 13:06:11 -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
e50e02e656
Merge branch 'opt' of https://git01.codeplex.com/z3 into opt
2015-01-20 16:38:55 -08:00
Nikolaj Bjorner
e24db56650
integrating new integer primal loop
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-20 16:38:45 -08:00
Nikolaj Bjorner
f1d9228b94
fix bug in context push/pop for sat solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-20 16:30:46 -08:00
Nikolaj Bjorner
82f1e81ac2
fix build errors on gcc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@z3-mac.local>
2015-01-19 00:50:08 +00:00
Nikolaj Bjorner
4bb5302def
template args
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-18 15:54:18 -08:00
Nikolaj Bjorner
67827ede4c
add 'throws' declaration
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-18 04:13:00 +05:30
Nikolaj Bjorner
d45c7ce082
prepare revised primal phase
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-18 04:11:40 +05:30
Nikolaj Bjorner
41ad1d50f9
fix java compilation bug
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-16 08:08:51 +05:30
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
Nikolaj Bjorner
e28701a64c
add assertions to simplifier
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-14 22:09:48 +05:30
Nikolaj Bjorner
bd879c1016
improve logging diagnostics and tracing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-09 15:43:16 -08:00
Nikolaj Bjorner
52c6f7c3b1
refine the safety check for leaving basis. As long as all base variables are unbounded in compatible directions as the non-basic variable we can detect unbounded variables. This partial check fixes integer divergence in a case exposed by Karpenov. Establishing or converting this to a check that always identifies unbounded integer variables is left for further analysis.
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-06 15:22:40 -08:00
Nikolaj Bjorner
ef57e4abe5
extract theory symbols from Boolean objectives
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-05 19:42:06 -08:00
Nikolaj Bjorner
061ac0f23e
populate proofs in opt specific tactics
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-05 16:44:33 -08:00
Nikolaj Bjorner
2f9e9e1a3c
create proof object in elim01. Codeplex issue 158
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-03 11:04:08 -08:00
Nikolaj Bjorner
2cd4669e21
add DT translation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-03 01:47:57 -08:00
Nikolaj Bjorner
129e048a1b
Adding field update feature
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-03 01:27:52 -08:00
Nikolaj Bjorner
a296023823
incorrect offset calculation in diff logic optimization. codeplex issue 156
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-29 16:15:19 -08:00
Nikolaj Bjorner
7d62ceeadc
Merge branch 'opt' of https://git01.codeplex.com/z3 into opt
2014-12-29 12:57:17 -08:00
Nikolaj Bjorner
c54a19b084
generate proof justifications in theory_pb: codeplex issue 157
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-29 12:57:02 -08:00
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
Nikolaj Bjorner
d827713ce3
revert to SMT tactic on bv1_blaster_tactic - equalities are not removed, and conjunctions are not converted to NNF (or/not), so the formula still isn't sufficiently blasted
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-22 15:40:02 -08:00
Nikolaj Bjorner
f373996f09
Merge branch 'opt' of https://git01.codeplex.com/z3 into opt
2014-12-22 09:27:48 -08:00
Nikolaj Bjorner
c61e9f27db
local changes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-12-22 09:27:33 -08:00