3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-23 14:23:40 +00:00
Commit graph

51 commits

Author SHA1 Message Date
Nikolaj Bjorner
5073959ae0 add macro attribute 2022-12-04 03:53:29 -08:00
Nikolaj Bjorner
cbc5b1f4f6 have theory_recfun use recursive function discriminator to control when it is enabled 2022-11-06 12:09:45 -08:00
Nikolaj Bjorner
8ff1e44a95 add discriminator to whether context contains recursive functions to avoid enabling recursive function solver when there are just macros 2022-11-06 11:58:21 -08:00
Nikolaj Bjorner
36d76a5bb2 fix #6304
Conditionals are used to guard unfolding of recursive functions.
This is, as shown in #6304, incompatible with the case where recursive functions are used inside if-then-else guards.
We address this by disabling if-conditions as guards if they contain a recursive definition.
The approach is simplistic: if a recursive function, defined prior (not mutually recursive) is used in a guard it should be fine and the condition can guard the current recursive unfolding.
2022-08-30 09:50:58 -07:00
Nikolaj Bjorner
0353fc38ff fix #6127 again
this time adding inheritance to the recfun plugin so it properly contains the recursive definitions from the source.
2022-07-04 12:42:11 -07:00
Nikolaj Bjorner
5393f1d98f #5980 2022-04-19 11:10:37 +01:00
Nikolaj Bjorner
a180254c1a fix #5980 2022-04-19 11:10:20 +01:00
Nikolaj Bjorner
03ff3201b9 block recursive definitions with lambdas until they are properly supported #5813 2022-02-06 08:57:58 +02:00
Nikolaj Bjorner
5b0389615b #5780 2022-01-19 10:10:36 +01:00
Nikolaj Bjorner
6f31d83633 fix #5541 2021-09-20 10:10:28 -07:00
Nikolaj Bjorner
b8a437bd8a #5429
relevancy propagation applies to quantifier unfolding.
2021-07-29 15:05:06 -07:00
Nikolaj Bjorner
703659a3a8 fix #5439 2021-07-28 17:16:17 -07:00
Nikolaj Bjorner
0ba518b0c0 avoid perf abyss for macros
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-07-20 20:07:06 -07:00
Nikolaj Bjorner
b1606487f0 fix #5289 2021-05-30 10:32:30 -07:00
Nikolaj Bjorner
4a6083836a call it data instead of c_ptr for approaching C++11 std::vector convention. 2021-04-13 18:17:35 -07:00
Nikolaj Bjorner
c387863da1 fix #5032, reset substitution during fold transformation 2021-02-15 14:14:25 -08:00
Nikolaj Bjorner
083d09aa81 fix #5016 2021-02-14 13:52:10 -08:00
Nikolaj Bjorner
83f4a006c6 wreckfun 2021-02-12 19:46:47 -08:00
Nikolaj Bjorner
3ae4c6e9de refactor get_sort 2021-02-02 04:45:54 -08:00
Nuno Lopes
e844aef896 remove a few more copy constructors, though still not enough to enable the assertion in vector
I give up for now; there are too many copies left for little return..
2020-06-03 20:32:13 +01:00
Nikolaj Bjorner
fca44ff3f2 fix #4394
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-19 13:40:03 -07:00
Nikolaj Bjorner
a884201d62 remove using insert_if_not_there2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-25 15:08:51 -07:00
Nikolaj Bjorner
387964f508 fix #3960 fix #3959
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-14 06:30:54 -07:00
Nikolaj Bjorner
fe7146d93b fix #3913 - change assumption tracking to be granular based on disabled guards
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-13 19:06:12 -07:00
Nikolaj Bjorner
1dcfe583e7 fix definition expression
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 16:18:26 -08:00
Nikolaj Bjorner
15f5444b8c enable auxiliary recursive function definitions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 16:12:32 -08:00
Nikolaj Bjorner
764b991468 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 14:34:44 -08:00
Nikolaj Bjorner
3afb78416f fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 14:34:44 -08:00
Nikolaj Bjorner
5a357f9998 fixup build of example
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 14:34:44 -08:00
Nikolaj Bjorner
88eb527b96 avoid const in ml
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 10:40:10 -08:00
Nikolaj Bjorner
a65efb682b avoid const in ml
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-27 10:40:10 -08:00
Nikolaj Bjorner
6616b6a366 only case expand for cases that contain defs. fixes #2601
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-10-01 18:41:11 -07:00
Nikolaj Bjorner
6fee9b90cb fix model generation for tc/po
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-11 11:39:27 -07:00
Nikolaj Bjorner
551d72b294 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-11 04:11:23 +02:00
Nikolaj Bjorner
4fb867a49c na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-01 11:57:07 -07:00
Bruce Mitchener
64ac929301 Use 'override' in new code. 2018-11-27 22:07:14 +07:00
Nikolaj Bjorner
b02fec91cc fixing python build errors
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-11-01 09:34:42 -05:00
Nikolaj Bjorner
0f0287d129 prepare release notes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-28 17:42:16 -05:00
Nikolaj Bjorner
80acf8ed79 add recfuns to model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-27 13:26:32 -05:00
Nikolaj Bjorner
51a0022450 add recfun to API
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-27 11:41:18 -05:00
Nikolaj Bjorner
c5cbf985ca na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-26 10:11:03 -05:00
Nikolaj Bjorner
67077d960e working with incremental depth
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-23 14:16:07 -07:00
Nikolaj Bjorner
b5676413e4 recfun
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-21 18:25:27 -07:00
Nikolaj Bjorner
918a5b9e8c updates to recfun_decl_plugin
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-21 13:15:51 -07:00
Nikolaj Bjorner
6e41b853f7 remove case-pred and depth-limit classes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-21 12:25:57 -07:00
Nikolaj Bjorner
35eb6eccd1 iterative deepening
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-18 17:14:10 -07:00
Nikolaj Bjorner
d22a0d04ed n/a
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-18 10:01:32 -07:00
Simon Cruanes
f7e5977b9e fix memleak 2017-12-25 22:51:40 +01:00
Simon Cruanes
7b1e1d52e7 wip: conflicts for pruning branches with too many unrollings
use the local assumption on depth to ensure the conflict clause is valid
2017-12-25 22:51:39 +01:00
Simon Cruanes
06e0b12700 add a predicate for depth limit assumptions 2017-12-25 22:51:39 +01:00