Arie Gurfinkel
be77b1de39
Improve interface of term_graph
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
6407ec8725
spacer_term_graph: an egraph of terms
...
Used to determine and factor out equalities
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
088bd3ed8e
Fix compiler warning
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
25fad153d1
added option fixedpoint.spacer.iuc.debug_proof to debug proof which is used for generation of iuc
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
c3a66217e1
improved options for IUC computation
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
370667722d
New option fixedpoint.spacer.print_farkas_stats
...
Prints the number of Farkas lemmas in each proof
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
880fc77655
Further rewrite equalities
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
6818eb3340
Improve factor equalities
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
5a37518e58
Improve statistics from spacer
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
00a99f01b4
improved options for IUC computation
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
fba995294d
refactored options regarding farkas lemma handling
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
56fcb8e6fd
added option fixedpoint.spacer.print_farkas_stats to print number of Farkas lemmas in each proof
2018-06-14 16:08:47 -07:00
Bernhard Gleiss
4148ee128c
fixed bug, which added too many edges between super-source and source in the case where the source was used by multiple inferences
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
9b050e8d30
Fix benign warning
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
e7815c703c
Fix a typo
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
321cad70d6
improve comments for scoped_weakness
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
890bc0f7c9
fix scoped_weakness
...
forgot to save current state of params before resetting them
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
68518b0e32
propagate weakness from pob down to all related checks
...
If a pob was discharged with a weak solver, propagate the level of
weakness to inductive generalization and to lemma propagation.
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
b8b3703511
improved implementation of is_qblocked()
...
Disabled by default. Has no effect if ran with the default set of
options where qlemmas=true and instantiate=true
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
371ba4fbc0
added parameters that seem to work well with quantifiers and arith
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
27d8fa4a34
hard-code quantifier weight to 15
...
With default settings, the eager threshold is 10 and lazy is 20. 15
puts us in the middle ensuring that lemmas are instantiated when UNSAT
and otherwise delayed.
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
135a4a765f
Adding grounding of the current lemma
...
In addition to adding the necessary instance of a quantified lemma,
add its grounding over the global set of skolems.
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
e8befc072c
cleaned up lemma instantiation code
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
6917aa3eb9
debug print
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
1d478bd8d3
using sk_lt_proc order instead of ast_lt_proc when creating a lemma
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
6cf68bee80
app ordering that puts special skolem constants first
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
9f0eb367b1
ground lemmas during propagation when qlemmas are disabled
...
When asserting quantified lemmas are disabled, ground a lemma
explicitly during propagate to make sure that it is ground using our
local set of skolem constants.
2018-06-14 16:08:47 -07:00
Arie Gurfinkel
5da0753269
(spacer) add instances even when a q-lemma already exists
...
It is possible that a new instance of a quantified lemma is discovered
even though a quantified lemma it already known. In this case, the
instance should be added to a corresponding context, even though the
lemma is not new.
2018-06-14 16:08:47 -07:00
Nikolaj Bjorner
e94b97376c
fix memory leak in relation_manager, use for loops
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-14 10:16:03 -07:00
Nikolaj Bjorner
187f1a8cbd
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-08 10:30:28 -07:00
Nikolaj Bjorner
63a1b2e714
fix #1665
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-08 10:30:20 -07:00
Nikolaj Bjorner
5ffd06c608
Merge pull request #1673 from NikolajBjorner/master
...
gcd/#1667
2018-06-08 09:29:27 -07:00
Nikolaj Bjorner
0520d1a1f6
remove trial with mfsr flag
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-08 07:38:30 -07:00
Nikolaj Bjorner
24adae4166
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-07 22:03:16 -07:00
Nikolaj Bjorner
4547f2c001
enable non-expression bodies of quantifiers to fix #1667
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-07 22:03:03 -07:00
Nikolaj Bjorner
29c2672407
fix bugs exposed by Nuno's PB example
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-07 21:43:37 -07:00
Nuno Lopes
9e916edcb0
z3.py: add overflow checks to PB API
2018-06-07 15:40:04 +01:00
Nikolaj Bjorner
88ead235f0
gcc mode
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 19:30:56 -07:00
Nikolaj Bjorner
bb53060313
int64_t
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 19:26:40 -07:00
Nikolaj Bjorner
8565de2c5b
deal with shift exponent error
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 19:17:37 -07:00
Nikolaj Bjorner
ad67424987
deal with shift exponent error
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 18:23:04 -07:00
Nikolaj Bjorner
d7f51f2443
try flags to fix gcc build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 18:20:23 -07:00
Nikolaj Bjorner
99bdb46158
int64_t
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 17:48:30 -07:00
Nikolaj Bjorner
8ab428b660
try new gcd
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-06 17:42:44 -07:00
Nikolaj Bjorner
add8d26807
Merge branch 'master' of https://github.com/z3prover/z3
2018-06-01 08:07:14 -07:00
Nikolaj Bjorner
fee4f91e2d
add set operations to python request by Francois
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-06-01 08:07:06 -07:00
Nikolaj Bjorner
e2eb883c71
Merge branch 'master' of https://github.com/z3prover/z3
2018-05-30 16:48:17 -07:00
Nikolaj Bjorner
b9637924c4
fix #1662
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-30 16:47:17 -07:00
Nikolaj Bjorner
0d668e1428
fix #1661
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-05-30 03:18:22 -07:00
Nikolaj Bjorner
0aa3245c37
Merge branch 'master' of https://github.com/z3prover/z3
2018-05-29 20:55:46 -07:00