Arie Gurfinkel
6d75c31468
First draft of elim_term_ite xform. Not working.
2018-07-02 17:09:56 -04:00
Arie Gurfinkel
7acea2791d
-tr:spacer.expand-add --> -tr:spacer_progress
2018-07-02 17:09:56 -04:00
Arie Gurfinkel
41a05e9d58
Add methods to print pob
2018-06-28 15:38:51 -04:00
Arie Gurfinkel
e8e27f0daf
Don't simplify bounds when normalizing a lemma
2018-06-28 15:38:50 -04:00
Arie Gurfinkel
0e5434ce0c
Debug prints
2018-06-27 22:49:36 -04:00
Arie Gurfinkel
7c924c49f6
Do not evaluate quantified formulas in a model
2018-06-27 22:49:36 -04:00
Arie Gurfinkel
704c19920d
Only 10 levels of weakness
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
49e9480928
Fix lemma_as_cti option
...
Use negation of a lemma as a proof obligation. This speeds up discovering
bad lemmas that do not contain some reachable states.
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
2b4d92821a
Avoid crashing on cancel
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
f6dcc6fc72
API to find pob in pob_manager
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
5bc57238a6
Track whether pob is in pob_queue
...
pob_queue is a priority queue. Changing a pob while it is in the queue might change
the priority. This is a source of subtle bugs. The flag is ment to help defend
against this issues in the future.
As a side-effect, a pob that is already in the queue will be silently not added
to it, and a new version of a pob might be created if a version being looked
for is already in the queue.
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
c00c6b4285
Pobs are always managed
...
Removed options to allow unmanaged pobs.
Other minor cleanups.
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
1910b4c87c
Rename pobs into pob_manager
2018-06-27 22:49:35 -04:00
Arie Gurfinkel
d9100437ce
Weakness of the lemma independent of the pob
...
Lemma inherits its weakness score from the pob. However,
pob's weakness might be reset or changed for some other reason.
To avoid affecting the lemma, the weakness is copied on
construction.
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
c32bfb5ecd
fix crash during cancelation
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-24 15:29:40 -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
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
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
9109968e55
Cleanup fixedpoint options
...
Replace pdr options with spacer
Repace fixedpoint module with fp
2018-06-14 16:08:52 -07:00
Arie Gurfinkel
d38879e478
Renamed spacer options
2018-06-14 16:08:52 -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
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
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
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
e860e4d045
Bug fix for quantified pob generation
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
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
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