Nikolaj Bjorner
c429455f10
visit parameters during occurs count
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-29 08:52:25 -07:00
Arie Gurfinkel
bc6604441b
Helpers in model_core
2018-06-27 22:49:35 -04:00
Nikolaj Bjorner
520ce9a5ee
integrate lambda expressions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-26 07:23:04 -07:00
Nikolaj Bjorner
915983821b
add rewrite to each branch of mbp
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-24 17:06:49 -07:00
Nikolaj Bjorner
335d672bf1
fix #1675 , regression in core processing in maxres
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 23:23:19 -07:00
Arie Gurfinkel
60888a93eb
Minor fixes to model
2018-06-16 13:42:26 -07:00
Nikolaj Bjorner
450da5ea0c
moving model_evaluator to model
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 17:40:54 -07:00
Nikolaj Bjorner
6fc08e9c9f
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-15 14:58:10 -07:00
Nikolaj Bjorner
a51d6cbcbc
debug model evaluator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 14:58:02 -07:00
Nikolaj Bjorner
baa96909cc
mb-skolem for arithmetic with model repair
...
The contract is that users of mb-skolem ensure that
interface equalities are preserved (by adding a
sufficient set of disequalities, such as a chain
x1 < x2 < x3 .., to force that solutions for
x_i does not clash).
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 17:26:04 -07:00
Arie Gurfinkel
8ffbd5d1e5
model_evaluator: respect array_as_stores option
2018-06-14 16:08:49 -07:00
Arie Gurfinkel
7281616084
model_evaluator: optionally expand arrays as sequence of stores
...
commit on behalf of Nikolaj
2018-06-14 16:08:49 -07:00
Nikolaj Bjorner
ff0f257102
remove iff
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:48 -07:00
Nikolaj Bjorner
ecf15ab07d
add model_evaluator_util features to model_evalautor
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:48 -07:00
Nikolaj Bjorner
f525f43e43
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-30 09:30:43 -07:00
Nikolaj Bjorner
5cff0de844
fix #1567
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-04-08 11:19:00 -07:00
Nikolaj Bjorner
c513f3ca09
merge with master
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-25 14:57:01 -07:00
Nikolaj Bjorner
5dd7e2c520
fix #1544
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-16 19:30:13 -07:00
Nikolaj Bjorner
a738f5af12
fix #1512
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-02 20:14:59 +09:00
Bruce Mitchener
76eb7b9ede
Use nullptr.
2018-02-12 14:05:55 +07:00
Bruce Mitchener
b7d1753843
Use override rather than virtual.
2018-02-09 21:19:27 +07:00
Nikolaj Bjorner
4adb24ede5
fix model bugs
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-01-13 16:12:59 -08:00
Nikolaj Bjorner
edffdf857c
use expr-vectors
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-21 16:07:10 -08:00
Nuno Lopes
9b54b4e784
fix vector<> to support non-POD types
...
adjust code to std::move and avoid unnecessary/illegal
2017-10-16 00:54:29 +01:00
Nikolaj Bjorner
d2ec927844
fix build break
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-08 12:34:08 +01:00
Nikolaj Bjorner
52217f0600
fix #1290
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-08 10:56:05 +01:00
Nikolaj Bjorner
caa02c3c02
add match expression construct to SMT-LIB2.6 frontend
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-19 19:39:02 -07:00
Christoph M. Wintersteiger
00651f8f21
Tabs, formatting.
2017-09-17 14:54:09 +01:00
Christoph M. Wintersteiger
2688fd55cf
Taught the model_evaluator to look for definitions of partial theory functions in the model upon evaluation failure.
2017-09-14 20:29:54 +01:00
Nikolaj Bjorner
5c8fa80c3f
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-03 14:58:14 -07:00
Christoph M. Wintersteiger
1a1c705376
Added global model completion for the SMT2 frontend.
2017-08-30 19:34:31 +01:00
Nikolaj Bjorner
7dd28781ab
remove simplifier dependencies from cmakelist.txt files
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-23 16:33:36 -07:00
Nikolaj Bjorner
2c8e9aeb9c
another crash fix
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-21 15:23:52 -07:00
Nikolaj Bjorner
e6145fa6df
fix crash
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-21 14:53:16 -07:00
Nikolaj Bjorner
ebe9db14d5
fix regression exposed by segfault2.smt2 crash
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-21 14:13:43 -07:00
Nikolaj Bjorner
276fdd0e97
register auxiliary constants from projection operation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-20 08:51:24 -07:00
Nikolaj Bjorner
2b82fd5d0c
updated include directives
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-01 10:51:47 -07:00
Arie Gurfinkel
25c6480e6e
updated include directives
2017-07-31 23:16:42 -04:00
Nikolaj Bjorner
b19f94ae5b
make include paths uniformly use path relative to src. #534
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Arie Gurfinkel
972ab6298c
(mev) only reduce function interpretation
2017-06-21 22:59:52 -04:00
Arie Gurfinkel
493a3a6312
(mev) call expand_value only at the end
...
There is no need to expand array values throughout evaluation.
They are expanded during array equality checking (if requested), and
can be expanded at the very end of evaluation (if needed).
2017-06-21 20:58:10 -04:00
Arie Gurfinkel
d5ca902bf6
(mev) bug fix in expanding array equalities
...
The stores were processed in the wrong order so that
(store (store a x y) x u)
was reduced to
(store a x y)
instead of
(store a x u)
2017-06-21 20:58:10 -04:00
Arie Gurfinkel
e62e563e2d
(mev) renamed variable to clarify that it is unused
2017-06-21 20:58:10 -04:00
Dan Liew
4b517b96df
[CMake] Move CMake files into their intended location so the
...
`contrib/cmake/bootstrap.py` script no longer needs to be executed.
The previous location of the CMake files was a compromise proposed
by @agurfinkel in #461 . While this has served us well (allowing progress
to be made) over time limitations of this approach have appeared.
The main problem is that doing many git operations (e.g. pull, rebase)
means the CMake files don't get updated unless the user remembers to
run the script. This can lead to broken and confusing build system
behaviour.
This commit only does the file moving and necessary changes to
`.gitignore`. Other changes will be done in subsequent commits.
2017-06-12 11:59:00 +01:00
Nikolaj Bjorner
fcda4cee9f
ensure evaluation of array equalities is enabled for external facing evaluator. Issue #917
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-03-09 05:29:56 +01:00
Nikolaj Bjorner
20790c46ee
bail out on failure to properly project
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-12-11 04:23:07 +01:00
Christoph M. Wintersteiger
dc0d29a00c
Bugfix for model construction. Fixes #828 .
2016-12-08 16:14:54 +00:00
Nikolaj Bjorner
c0fb2eafe5
remove recursive expansion of else-case
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-02 23:08:10 +00:00
Nikolaj Bjorner
be9d5c7088
fix evaluator for array store expressions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-11-02 21:33:24 +00:00
Christoph M. Wintersteiger
ab4bb8194e
Added unregister_decl to model_core
2016-10-15 18:35:39 +02:00
Nikolaj Bjorner
b66d457b19
move arithmetical mbp functionality to model_based_opt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-26 16:12:14 -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
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
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
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
Nikolaj Bjorner
1aa3fdab8a
remove min/max, use qmax; disable cancellation during model evaluation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-19 13:04:20 -07:00
Nikolaj Bjorner
5e7db2e3e2
disable mk_array_eq as it breaks model evaluation/validation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-18 08:29:24 -07:00
Nikolaj Bjorner
99314b7252
Merge branch 'master' of https://github.com/Z3Prover/z3
2016-05-15 11:34:55 -07:00
Nikolaj Bjorner
42726171b5
add limit checks in Grobner. Issue #599
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-05-15 11:34:48 -07:00
Arie Gurfinkel
d1f8b06ec4
bug fix in model_evaluator for array equality
2016-05-11 22:44:11 -04:00
Nikolaj Bjorner
b512212d41
update func_interp code
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-18 17:31:36 -07:00
Nikolaj Bjorner
3a6218ac21
update func_interp code
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-18 17:30:52 -07:00
Nikolaj Bjorner
c3f4124a9f
trace down recent exposed regression in goal2sat, incorporate Scott's suggestion on making vector<std::string inaccessible
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-18 14:50:10 -07:00
Nikolaj Bjorner
0f93853a4c
remove labels from evaluation result
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-12 13:17:10 -07:00
Nikolaj Bjorner
aa7b5d80fe
extract array terms for evaluator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-12 09:41:50 -07:00
Christoph M. Wintersteiger
3a532c08a6
Bugfix for func_interp else-case compression
2016-04-06 19:24:08 +01:00
Christoph M. Wintersteiger
e527aca296
Bugfix for unspecified else-case in func_interps.
2016-04-06 15:39:32 +01:00
Christoph M. Wintersteiger
7534b53bae
Merge branch 'master' of https://github.com/Z3Prover/z3
2016-04-06 14:51:25 +01:00
Nikolaj Bjorner
b97d694e5e
undo model evaluation to BR_FULL pending regression in assertion violation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-05 22:26:57 +02:00
Nikolaj Bjorner
ec5a4ba63d
add documentation comment for evaluation, Issue #536
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-04 12:59:18 +02:00
Nikolaj Bjorner
03336ab9f2
add evaluation of array equalities to model evaluator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-04-02 15:07:01 +02:00
Christoph M. Wintersteiger
ccd18283e7
Moved extension_converter func_interp entry compression to func_interp.
...
Relates to #547
2016-04-01 15:38:38 +01:00
Christoph M. Wintersteiger
3b82604590
whitespace
2016-04-01 15:37:40 +01:00
Christoph M. Wintersteiger
eb9c5b7cdb
Disabled bogus assertions.
...
Fixes #489
2016-04-01 13:25:37 +01:00
Christoph M. Wintersteiger
852dc6d190
whitespace
2016-04-01 13:22:16 +01:00
Nikolaj Bjorner
05a784fa9e
fix issue #535
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-24 08:16:19 -07:00
Nikolaj Bjorner
b0f65335ab
update copyright year
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-17 13:07:40 -07:00
Christoph M. Wintersteiger
778c7fcc64
Bugfix for model evaluator and internal, uninterpreted FPA functions.
...
Fixes #518
2016-03-16 16:17:08 +00:00
Nikolaj Bjorner
70f13ced33
make proto-model evaluation use model_evaluator instead of legacy evaluator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-05 10:14:15 -08:00
Nikolaj Bjorner
7c6540e18f
recursive function definitions; combine model-building functionality
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-03 07:59:03 -08:00
Christoph M. Wintersteiger
7ddd2856c8
Added is_considered_uninterpreted() to decl_plugins.
2016-02-05 15:22:37 +00:00
Christoph M. Wintersteiger
bb5118acbb
Bugfix for bv*div0 model construction.
2016-02-05 13:53:35 +00:00
Christoph M. Wintersteiger
88f007e9da
whitespace
2016-02-05 13:48:47 +00:00
Nikolaj Bjorner
a295dd48dc
add seq_rewriter to model_evaluator, remove th_rewriter additional step in validator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-15 04:02:48 +05:30
Nikolaj Bjorner
e2d54940b4
revert mixed integer/real handling pending fix to equality propagation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-01-12 12:11:27 -08:00
Nikolaj Bjorner
baee4225a7
reworking cancellation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-12-11 16:21:24 -08:00
Nikolaj Bjorner
d6cb778365
fix rewriter for model validation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-03 07:45:42 -08:00
Nikolaj Bjorner
ec12368b54
Enable model construction and evaluation for theory functions that may be uninterpreted. To fix issue #237
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-02 11:36:50 -08:00
Nikolaj Bjorner
77fec049a5
Enable model construction and evaluation for theory functions that may be uninterpreted. To fix issue #237
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-02 10:27:44 -08:00
Nikolaj Bjorner
feba64b739
Enable model construction and evaluation for theory functions that may be uninterpreted. To fix issue #237
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-02 10:18:25 -08:00
Nikolaj Bjorner
4bc044c982
update header guards to be C++ style. Fixes issue #9
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-07-08 23:18:40 -07: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
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
Christoph M. Wintersteiger
dd17f3c7d6
Renaming floats, float, Floats, Float -> FPA, fpa
...
Signed-off-by: Christoph M. Wintersteiger <cwinter@microsoft.com>
2015-01-08 13:18:56 +00:00
Nikolaj Bjorner
960e8ea1d5
working on hitting sets
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-06-08 14:12:54 +01:00
Nikolaj Bjorner
6f0155ce94
avoid compiler warning
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-05-20 10:14:40 -07:00
Nikolaj Bjorner
3d1ca5ecc9
make eval cache sensitive to model completion. Bug 110 reported by cipher1024
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2014-05-15 21:12:16 -07:00
Nikolaj Bjorner
22166d0760
remove print
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-18 05:59:16 +02:00
Nikolaj Bjorner
fe5c42c90f
fixes to bugs exposed by regressions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-12-15 05:23:47 +02:00
Anh-Dung Phan
87a2b99091
Clean up
2013-11-25 12:16:34 -08:00
Nikolaj Bjorner
2ff51e9a60
move model_evaluator from pdr to model, call it model_implicant
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-11-23 21:33:35 +01:00
Nikolaj Bjorner
e4338f085b
re-organization of muz
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2013-08-28 22:11:33 -07:00
Leonardo de Moura
bdc675b1df
Fix bug reported at http://stackoverflow.com/questions/15226944/segmentation-fault-in-z3
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-03-05 09:04:03 -08:00
Leonardo de Moura
a895506dac
Fix issue reported at http://stackoverflow.com/questions/14524316/z3-4-3-get-complete-model
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2013-01-25 09:29:03 -08:00
Leonardo de Moura
607fab486c
Fix incorrect uses of set_cancel()
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-17 18:48:10 -08:00
Leonardo de Moura
a07b459fdf
Added is_unique_value. Its semantics is equal to the old is_value method. The contract for is_value changed. See comments at ast.h for more information.
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-07 12:53:51 -08:00
Leonardo de Moura
1871bef6e1
cleaned algebraic params
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-02 12:47:20 -08:00
Leonardo de Moura
823dd6ca47
missing file
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-01 15:54:53 -08:00
Leonardo de Moura
3e6bddbad1
converted pp_params
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-30 17:20:45 -08:00
Leonardo de Moura
cf28cbab0a
saved params work
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-11-29 17:19:12 -08:00
Nikolaj Bjorner
93ad91d2f9
preparing handling of arrays/quantifiers, fix cover-related bugs reported by Arie
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2012-11-25 12:08:49 -08:00
Leonardo de Moura
759504880a
isolated proto_model obsolete code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-29 20:15:33 -07:00
Leonardo de Moura
f57d4b1b19
reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-25 11:28:03 -07:00
Leonardo de Moura
56ab7a7495
checkpoint
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-21 18:12:34 -07:00
Leonardo de Moura
add684d8e9
checkpoint
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-21 13:32:12 -07:00
Leonardo de Moura
6bc591c67e
Reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-20 22:44:27 -07:00
Leonardo de Moura
2b8fb6c718
Reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-20 20:53:33 -07:00
Leonardo de Moura
d8cd3fc3ab
Reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-20 19:54:08 -07:00
Leonardo de Moura
8b70f0b833
Reorganizing the code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-10-20 19:30:14 -07:00