Nikolaj Bjorner
e6f8fe359e
remove empty file
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 12:32:28 -08:00
Nikolaj Bjorner
d263b373ed
update release notes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-31 12:19:33 -08:00
Nikolaj Bjorner
6022c17131
Add simplification customization for SMTLIB2
...
Add the ability to customize incremental pre-processing simplification for the SMTLIB2 front-end. The main new capability is to use pre-processing tactics in incremental mode that were previously not available. The main new capabilities are
- solve-eqs
- reduce-args
- elim-unconstrained
There are several more. Documentation and exposed simplifiers are populated incrementally. The current set of supported simplifiers can be inspected by using z3 with the --simplifiers flag or referring to https://microsoft.github.io/z3guide/docs/strategies/simplifiers
Some pending features are:
- add the ability to update parameters to simplifiers similar to how tactics can be controlled using parameters.
- expose simplification solvers over the binary API.
2023-01-30 22:38:51 -08:00
Nikolaj Bjorner
91d6082f2f
Move modular interval to interval directory
2023-01-27 17:55:36 -08:00
Nikolaj Bjorner
0f3c56213e
move dominator simplifier functionality to rewriter and simplifier, move bv_bounds simplifier functionality to simplifier
2023-01-27 17:11:48 -08:00
Nikolaj Bjorner
f100d2f4de
add contextual simplification to bv-bounds-tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-01-24 17:49:55 -08:00
Nikolaj Bjorner
dbc299efbb
revise bv-bounds-tactic
...
- share common functionality
- rename propagate-bv-bounds-new to propagate-bv-bound2 for now
- expose configuration options in bounds propagation
2023-01-22 14:41:53 -08:00
Nikolaj Bjorner
c07b6ab38f
more tactic descriptions
2023-01-05 20:23:01 -08:00
Nikolaj Bjorner
e0099150ca
#6429
2023-01-04 15:28:57 -08:00
Nikolaj Bjorner
21362c0b98
make case-def and recfun-num-rounds re-parsable for logging
2023-01-04 15:00:25 -08:00
Nikolaj Bjorner
e423fabf6a
tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-15 20:35:36 -08:00
Nikolaj Bjorner
0768a2ead1
updated doc
2022-12-15 19:23:32 -08:00
Nikolaj Bjorner
13920c4772
more doc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-12-15 11:42:02 -08:00
Nuno Lopes
eb8c53c164
simplify factory of dependent_expr_state_tactic
...
And as a side-effect, remove heap allocations for factories
2022-12-05 14:07:57 +00:00
Nikolaj Bjorner
dd1ca8f6bd
move qhead to attribute on the state instead of the simplifier,
...
- add sat.smt option to enable the new incremental core (it is not ready for mainstream consumption as cloning and other features are not implemented and it hasn't been tested in any detail yet).
- move "name" into attribute on simplifier so it can be reused for diagnostics by the seq-simplifier.
2022-11-29 16:36:02 +07:00
Nikolaj Bjorner
5af6e1a046
make max_bv_sharing a simplifier
2022-11-25 11:38:41 +07:00
Nikolaj Bjorner
1dca6402fb
move model and proof converters to self-contained module
2022-11-03 05:23:01 -07:00
Nikolaj Bjorner
41b87b4c42
Create bv_slice_tactic.cpp
...
missing file
2022-11-02 08:51:43 -07:00
Nikolaj Bjorner
e57674490f
adding simplifiers layer
...
simplifiers layer is a common substrate for global non-incremental and incremental processing.
The first two layers are new, but others are to be ported form tactics.
- bv::slice - rewrites equations to cut-dice-slice bit-vector extractions until they align. It creates opportunities for rewriting portions of bit-vectors to common sub-expressions, including values.
- euf::completion - generalizes the KB simplifcation from asserted formulas to use the E-graph to establish a global and order-independent canonization.
The interface dependent_expr_simplifier is amenable to forming tactics. Plugins for asserted-formulas is also possible but not yet realized.
2022-11-02 08:51:30 -07:00
Bruce Mitchener
706f7fbdc7
Fix some warnings about unused stuff. ( #6290 )
2022-08-21 12:39:30 -07:00
Bruce Mitchener
5014b1a34d
Use = default
for virtual constructors.
2022-08-05 18:11:46 +03:00
Bruce Mitchener
5d0dea05aa
Remove empty leaf destructors. ( #6211 )
2022-07-30 10:07:03 +01:00
Nikolaj Bjorner
85c3d874dc
neatify
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-05 16:57:41 -07:00
Nikolaj Bjorner
f23dc894b4
add disabled pass to detect upper bound range constraints
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-05 16:51:05 -07:00
Nikolaj Bjorner
5c2624950b
#5849
2022-02-20 09:52:42 -08:00
Nikolaj Bjorner
5bbb8fb807
add bail #5825
2022-02-16 23:30:12 +02:00
Nikolaj Bjorner
aa901c4e88
axiom solver improvements
2021-12-31 11:53:40 -08:00
Nikolaj Bjorner
79f0ceac4c
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-30 19:13:23 -08:00
Nikolaj Bjorner
fc77345bec
breaking change. Enforce append semantics everywhere for parameter updates #5744
...
Replace semantics doesn't work with assumptions made elsewhere in code.
The remedy is to apply append (override) semantics for parameter changes.
2021-12-30 19:11:14 -08:00
Nikolaj Bjorner
9f2b18cac5
add tactic name
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-12-07 13:37:57 -08: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
25f53c0467
deal with warnings reported in https://launchpadlibrarian.net/522361319/buildlog_ubuntu-groovy-s390x.z3_4.8.10-1ubuntu4ppa1_BUILDING.txt.gz
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-02-11 13:49:47 -08:00
Nikolaj Bjorner
8f577d3943
remove ast_manager get_sort method entirely
2021-02-02 13:57:01 -08:00
Nikolaj Bjorner
937b61fc88
fix build, refactor
2021-02-02 05:26:57 -08:00
Nikolaj Bjorner
3ae4c6e9de
refactor get_sort
2021-02-02 04:45:54 -08:00
Nikolaj Bjorner
4455f6caf8
move to get_sort as method, add opt_lns pass, disable xor simplification unless configured, fix perf bug in model converter update trail
2021-02-02 03:58:19 -08:00
Nikolaj Bjorner
6f63f8761c
optimizations to bv-solver and euf-egraph ( #4698 )
...
* additional bit-vector propagators
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* rename restrict (not a keyword, but well) #4694 , tune euf
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* merge
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* add pb rewriting to pb2bv #4697
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-20 06:47:27 -07:00
Nikolaj Bjorner
549753845e
bv and gc of literals ( #4692 )
...
* bv and gc of literals
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* overload
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* diseq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* diseq
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-17 14:24:07 -07:00
Nikolaj Bjorner
11c90cc142
move parameters from ast/rewriter to params
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-29 11:11:16 -07:00
Christoph M. Wintersteiger
c321fb7726
Correctly report unsupported features in bvarray2uf_rewriter. Fixes #4046 and #4047 .
2020-07-15 16:16:29 +00:00
Nikolaj Bjorner
d0e20e44ff
booyah
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -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
95a78b2450
updates to seq and bug fixes ( #4056 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4037
* nicer output for skolem functions
* more overhaul of seq, some bug fixes
* na
* added offset_eq file
* na
* fix #4044
* fix #4040
* fix #4045
* updated ignore
* new rewrites for indexof based on #4036
* add shortcuts
* updated ne solver for seq, fix #4025
* use pair vectors for equalities that are reduced by seq_rewriter
* use erase_and_swap
* remove unit-walk
* na
* add check for #3200
* nits
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* name a type
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove fp check
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove unsound axiom instantiation for non-contains
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix rewrites
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4053
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* fix #4052
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-22 13:18:55 -07:00
Nikolaj Bjorner
addbe55823
fix #3846 , another bug in eq2bv-tactic
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-09 19:55:40 -07:00
Nikolaj Bjorner
426e4cc75c
fix #3557
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 16:37:59 -07:00
Nikolaj Bjorner
8e033c1e71
fix #3716 fix #3719
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 12:05:48 -07:00
Nikolaj Bjorner
896a1b2048
fix #3679
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-02 15:04:56 -07:00
Nikolaj Bjorner
51e459d02b
fix #3294
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-14 10:46:03 -07:00
Nikolaj Bjorner
6f2b5696d5
fix #3279
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-13 17:08:20 -07:00
Nikolaj Bjorner
8b720a0d66
fix #3115 fix #3116 regressions from #3111 etc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-02 16:38:33 -08:00