Nikolaj Bjorner
81e5589bc8
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-19 23:23:56 -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
Nikolaj Bjorner
8241ba784d
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-19 16:33:34 -07:00
Nikolaj Bjorner
341f7ceb17
remove quantified lemmas for idiv/mod
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 13:19:48 -07:00
Nikolaj Bjorner
eeba30a277
fix #1677
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 10:56:45 -07:00
Nikolaj Bjorner
2456513053
sometimes comments are worth reading
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 10:43:51 -07:00
Nikolaj Bjorner
9b6a99794b
add default method for fresh fp value, try to address OsX build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 10:02:31 -07:00
Nikolaj Bjorner
8a29c2803c
improvements to arithmetic preprocessing simplificaiton and axiom generation for #1683
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-19 07:04:39 -07:00
Nikolaj Bjorner
86c39c971d
fix #1681
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 21:53:45 -07:00
Nikolaj Bjorner
b4aac1ab55
revert fix to #1677
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 21:23:13 -07:00
Nikolaj Bjorner
c15eca66d6
fix #1685
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 20:53:33 -07:00
Nikolaj Bjorner
6a0b70ee5c
selective expansion of strings for canonizer to fix #1690 regression
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 20:42:53 -07:00
Nikolaj Bjorner
4634d1daed
selective expansion of strings for canonizer to fix #1690 regression
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 20:37:39 -07:00
Nikolaj Bjorner
8040eddf65
fix #1658 fix #1689
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 16:41:04 -07:00
Nikolaj Bjorner
c3b27903f8
fix #1677
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 11:22:01 -07:00
Nikolaj Bjorner
55ebf69648
move comment to fix #1682
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 09:42:05 -07:00
Nikolaj Bjorner
cd890bd993
fix bug in order for model conversion in normalize_bounds
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-18 09:34:53 -07:00
Nikolaj Bjorner
c81f25a1c8
fix build issue
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-17 09:59:03 -07:00
Nikolaj Bjorner
035baf7cb9
align use of spaces before for/if/while
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-17 09:43:40 -07:00
Nikolaj Bjorner
190428ab3f
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-17 09:40:40 -07:00
Nikolaj Bjorner
6bc14afa5e
Merge pull request #1686 from agurfinkel/deep_space
...
switching spacer to new model api
2018-06-17 09:40:13 -07:00
Wojciech Nawrocki
0adf66dc0a
python: fix usage of fpa_get_numeral_significand_uint64
2018-06-17 13:20:01 +02:00
Arie Gurfinkel
4204b6ede2
Switch rest of spacer to new model API and remove mev_util
2018-06-16 14:40:17 -07:00
Arie Gurfinkel
a222b6d41f
Switch reach_fact to new model API
2018-06-16 14:17:33 -07:00
Arie Gurfinkel
f226c6682b
Switched derivation to new model API
2018-06-16 14:09:24 -07:00
Arie Gurfinkel
5e65b37f25
Switch spacer::qe_project to new model API
2018-06-16 13:58:58 -07:00
Arie Gurfinkel
fffc8489bf
Switched compute_implicant_literals to use new model API
2018-06-16 13:43:30 -07:00
Arie Gurfinkel
60888a93eb
Minor fixes to model
2018-06-16 13:42:26 -07:00
Nikolaj Bjorner
66e6dc78a3
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-16 11:23:03 -07:00
Nikolaj Bjorner
c64321c2e4
debugging maxres bug report
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-16 11:22:58 -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
9149048f34
use quotes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 15:53:47 -07:00
Nikolaj Bjorner
c0e378b045
remove {
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 15:44:33 -07:00
Nikolaj Bjorner
e350bf8a27
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-15 15:28:26 -07:00
Nikolaj Bjorner
caca07c85f
fix path to moved header file
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 15:28:18 -07:00
Nikolaj Bjorner
d7ba178d53
Merge pull request #1684 from agurfinkel/deep_space
...
Remove spurious quote
2018-06-15 15:16:52 -07:00
Nikolaj Bjorner
b6c43f6143
move files for build script
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-15 15:13:55 -07:00
Arie Gurfinkel
3ad1446597
Remove spurious quote
2018-06-15 15:09:25 -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
Arie Gurfinkel
f936c92efc
Improve distinct constraint generation
...
still many more optimizations possible
2018-06-14 22:27:57 -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
Nikolaj Bjorner
a0af3383db
fixes to bdd
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 17:25:18 -07:00
Arie Gurfinkel
05abf19009
comment
2018-06-14 16:38:27 -07:00
Arie Gurfinkel
a3de478c93
typo
2018-06-14 16:13:53 -07:00
Arie Gurfinkel
83cee9e81f
Comments
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
87715620d9
Fix mk_distict in term_graph
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
2a6b7e5482
fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
bc8ddedc54
fix a few build regressions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
e355123e37
Change declaration of projector
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
bbd917a0e6
Remove dead comment
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
1902360361
debugging mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
49279d7047
debugging mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
732a8149d8
vurtego update
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
a56c9faedb
A sketch of vurtego
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
f0e105612c
adding dbg
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
9ba76a1332
fixing eufi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
b62d73f209
first round for combined mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
9109968e55
Cleanup fixedpoint options
...
Replace pdr options with spacer
Repace fixedpoint module with fp
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
619f681d28
Fix bug in iuc_solver::get_unsat_core() that prevented clean cores
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
d38879e478
Renamed spacer options
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
81575fae7c
Remove unused function
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
535b8893ae
Complete euf project with eq and diseq on pure representatives
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
b246389267
Don't reset m_is_var in project
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
5e198f4119
Fix clang compilation issues
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
ec8e3f2aee
consolidate use of plugin by moving declarations up front (separate from constructor at this point)
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
0ae246ad2b
add defs to arith solver
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
5fce4a1d1a
Wire qe_solve_plugin into qe_term_graph
...
Compiles. Not tested.
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
d5081a48b0
merge while skyping
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
8da84ec69e
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
5dc2b7172d
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
74621e0b7d
first eufi example running
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
2288931b46
fix mk_unpure_equalities
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
0f799eb2ae
formatting. no change to code
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
6d79b19170
fix a few bugs, debugging eufi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
ba504e4243
debugging mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
e0aaf4452b
wip: term_graph::project and term_graph::solve
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
144d8df5d5
Rewrite term_graph::project and term_graph::solve
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
771d3b1349
wip: term_graph::project and term_graph::solve
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
7714d05c1a
fill out qe_solve_plugin functionality
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
e226b39914
Remove pragma once from cpp
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
2e616c482b
plugin work
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
5566b5689c
Silence clang warning
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
5ab6d6ca16
term_le -> term_lt
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
f963fc06f4
sketch out euf-solver based on complete projection
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
44a32bc076
updates
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
6e61a7c1b2
minor
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
73486be590
fix typo in mk_pure
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
9c7d9818d3
get_app --> get_expr + fix term_lt()
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
dda65fdd2e
mk_not: fix clang compilation issue
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
9a0406d181
replace app by expr
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
0d71d85069
redo representative algorithm
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
ad153592a2
fix parent list
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
a6848c79b7
redo representative generator to respect stratification
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
c4188fc4be
initial working version
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
1f634efe04
initial working version
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
008f003aa0
initial working version
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:52 -07:00
Nikolaj Bjorner
da18f0e0b7
prepare term-graph unit testing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
362d9258a4
prepare term-graph for cc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
d26609ebdd
prepare term-graph for cc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
14696f03f7
add some review comments
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
2e44850df9
move term graph closer to qe
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
0784074b67
fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
688cf79619
working on mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
e6468726f5
more code
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
5fc0f56281
sketch mbi
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
4a2eb909bf
Re-fixing a bug in compute_implicant_literals()
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
8445e2a7a2
Fix bug in weak abs
...
Must ensure that weak model makes all summaries true. Otherwise,
it is possible to get stuck discovering the same lemma forever.
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
df7ab0e496
pred_transformer: factor rule bookkeeping to a separate class
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
4099f31f4f
Fix refutation generation
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
18e3c7b13d
Fix bug introduced by formatting
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
f3466bb3e4
tidy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
1920450f98
throttle ite-blasting
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
1f0fd38c99
ground sat refutation from spacer (wip)
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
0534b72c4d
sort hypotheses
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
c5fb1c1223
Use vector instead of a hashtable to represent a set
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
e84ca25f05
Check whether one proof node is an ancestor of another on-demand
...
Instead of pre-computing sets
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
a40e0dce0c
proof_utils: use expr_mark instead of hashtable
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
2a6b694373
Imrove hypothesis_reducer
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
4b2196f114
nits
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
6adaed718f
remove pdr
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
cefdb8c01d
Use reachable cache
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
9fef466c63
Respect children order in spacer/pdr
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
f74ca2f0c0
Fix caching bug in mbc
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
54add824e9
Debug print
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
c3fb863ad1
formatting/reviewing
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
d2ae3b4025
Create children for pdr in spacer
...
This is first working version of gpdr strategy. Passes one test.
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
e1a45671b3
Cleanup spacer options
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
1994f1d7e4
Cleanup of spacer options
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
fca0442487
Fix proof_checker to use is_int_expr
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
8b689ae27f
Moved is_int_expr into arith_recognizers
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
cb683389f6
spacer::context: Factor params into udpt_params
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
521392a8f1
First partially working pdr strategy in spacer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
ab5f579d0b
Comments in pdr_context.cpp
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
ece2e53c98
Ported model_search and model_node from pdr into spacer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
478d7c790e
mbc: moved code under get_subst()
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
e860e4d045
Bug fix for quantified pob generation
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
2a243d38d1
Model based Cartesian decomposition
2018-06-14 16:08:51 -07:00
Nikolaj Bjorner
fee7828b51
fix solve bug
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
3178f7f86d
Add random order of children in spacer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
5756871738
Always attempt to eliminate all existential variables
...
Sometimes variables that cannot be eliminated in one context, can be
eliminated in the other. Pass all available variables to MBP to be
eliminated if possible
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
7396ad72ab
Give up when a lemma is re-discovered too many times
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
6fb6279f07
Cleanup array_eq_generalizer
2018-06-14 16:08:51 -07:00
Arie Gurfinkel
da66ad6f80
Cleanup derivation::create_next_child
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
c5ff5ac2a1
Clen up spacer::pred_transformer::get_origin_summary
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
d7dc10212e
Clean up spacer::context::create_children
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
b61da6fcc0
Debug print in org-mode format
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
6b82068d8d
Bug fix in spacer::derivation::exist_skolemize
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
4ca734528e
Formatting
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
dd064bd8f9
Bug fix to spacer::sym_mux
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
38c2b56f0e
Rewrite spacer::sym_mux
...
Simpler implementation that only provides functionality actually used
by spacer
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
268274911a
Fix to cube-and-clause interface in prop_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
e0e435582a
Minor code cleanup
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
6464468cd8
Remove dead code
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
aa77a918cd
Optimizing qe_lite
2018-06-14 16:08:50 -07:00
Nikolaj Bjorner
bfeb15b876
move to list of clauses
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
502e323678
Fixes to pred_tranformer::updt_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
862eef5ec0
Eliminate all existential variables from reach facts
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
70f4674b3a
Code to update solver with all constraints of a pred_transformer
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
cfcc084688
reach_fact --> rf
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
7a8563a34c
spacer: cleaner management of rf tags
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
ada548b5ae
Removed unused options
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
0b387cd7eb
Moved pool_solvers from spacer::manager into spacer::context
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
451d42319b
Rename m_reach_ctx into m_reach_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
1e54237880
mbp_array: Fix set_model_completion bug
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
cdba0721e7
Extra stats in iuc_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
16fefe850a
Factored mbp into pred_transformer and added stats
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
fde58664f6
Moved mk_reach_fact to pred_transformer
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
2a2b21326b
Stats on num_proxies in iuc_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
e2e1411707
Option to dump SMT queries as benchmarks during Spacer run
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
bebfac047e
Dump benchmarks in pool_solver
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
b50da20531
array_mbp: turn on model completion
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
0452bc3d43
qe_lite: simplify definitions before deciding on elimination order
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
b120923dd5
qe_lite: bug fix in der::der_sort_vars()
...
The case of
VAR 1 = (+ (:var 2) 10)
VAR 2 = (+ 0 foo)
was not properly handled whenever VAR2 has only one reference.
In that case, VAR2 is not marked as done when VAR1 is processed,
causing VAR2 to be duplicated in elimination order
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
fb52c36210
spacer: switch to new IUC as default
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
3a97451f8c
spacer: normalize the cube before creating a lemma
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
fce68536d3
spacer: print all lemmas in json
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
bfa472faec
New style of json dump based on lemmas at pob
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
5072a2a869
spacer: pobs keep track of their lemmas
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
61cd74818f
Pin lemmas so that they don't disappear
2018-06-14 16:08:50 -07:00
Nikolaj Bjorner
ebfb2a4a1e
Fix mbp to respect reduce_all_selects option
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:50 -07:00
Nikolaj Bjorner
0c2e3c0894
fixes to clause proof tracking
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
f7d015de8d
Switch spacer_prop_solver to check_sat_cc
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
1343b272e7
Implement iuc_solver::check_sat_cc
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
26339119e4
solver::check_sat_cc : check_sat assuming cube and clause
...
Extends check_sat with an ability to assume a single clause in
addition to assuming a cube of assumptions
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
4477f7d326
Fix memory leak in asserted_formulas
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
723e96175b
spacer: prepare to use incremental clause smt_solver interface
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
c3edf8c8fa
Restore assertion in smt_clause
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
ef58753ae7
Silence clang warning
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
56a29093d0
Cleanup transition creation in pred_transformer
2018-06-14 16:08:50 -07:00
Nikolaj Bjorner
005a6d93bb
cube and clause
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
ea032b56c0
Return false when clause cannot be decided
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
275b99e408
Add missing override
2018-06-14 16:08:50 -07:00
Arie Gurfinkel
4db4547359
silence clang warning
2018-06-14 16:08:49 -07:00
Nikolaj Bjorner
b73aa3642a
check with cube and clause
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:49 -07:00
Arie Gurfinkel
af57db0413
Anti-unification of two ground expressions
2018-06-14 16:08:49 -07:00
Nikolaj Bjorner
aa8dac2583
fix uninitialized variable
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:49 -07:00
Nikolaj Bjorner
e6401908a5
fix crash
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:49 -07:00
Arie Gurfinkel
a8438e081e
Wired qe::mbp into spacer
...
use option fixedpoint.spacer.native_mbp=true to use it
2018-06-14 16:08:49 -07:00
Nikolaj Bjorner
7e9f7d2cfe
remove removed paramter from comment
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 16:08:49 -07:00