3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 11:55:51 +00:00
Commit graph

245 commits

Author SHA1 Message Date
Nikolaj Bjorner
8970a54eaa expose parameters to control behavior for #5660 2023-01-10 22:06:19 -08:00
Nuno Lopes
d30cb55bae don't flush stream when printing param vals 2023-01-03 09:35:17 +00:00
Nikolaj Bjorner
847aec1d30 update dependencies 2022-11-30 22:48:10 -08:00
Nikolaj Bjorner
529f116be0 disable new code until pre-condition gets fixed
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-11-30 22:29:59 -08:00
Nikolaj Bjorner
5374142e3e continue updates for adding proof-log to smt core 2022-11-23 11:37:23 +07:00
Nikolaj Bjorner
c47ca341b7 fix #6343
The bug was that axiom generation was not enabled on last_index, so no axioms got created to constrain last-index.
With default settings the solver is now very slow on this example. It is related to that the smallest size of a satisfying assignment is above 24. Pending a good heuristic to find initial seeds and increments for iterative deepening, I am adding another parameter smt.seq.min_unfolding that when set to 30 helps for this example.
2022-09-14 10:17:25 -07:00
Nikolaj Bjorner
55d5af00cc disable bv delay until it is debugged #6324
regression introduced when filter for when to apply delay was fixed, but then it exercises delay tactic that isn't tested.
2022-09-07 00:04:57 -07:00
Nikolaj Bjorner
a628e4c4e5 updates to printer to get instantiations, take 1 2022-08-25 11:22:35 -07:00
Nuno Lopes
916d1dbb13 fix default parameter regression
bug introduced in commit 63f48f8fd4
2022-08-23 15:26:29 +01:00
Nikolaj Bjorner
48b13291d1 add bv-size reduce #6137
- add option smt.bv.reduce_size.
  - it allows to apply incremental pre-processing of bit-vectors by identifying ranges that are known to be constant.
    This rewrite is beneficial, for instance, when bit-vectors are constrained to have many high-level bits set to 0.
2022-08-16 16:35:14 -07:00
Nikolaj Bjorner
78eaefe5a8 move solver-params to params 2022-08-08 11:34:41 +03:00
Nikolaj Bjorner
63f48f8fd4 add options for logging learned lemmas and theory axioms
- add solver.axioms2files
  - prints negated theory axioms to files. Each file should be unsat
- add solver.lemmas2console
  - prints lemmas to the console.
- remove option smt.arith.dump_lemmas. It is replaced by solver.axioms2files
2022-08-08 11:18:56 +03:00
Nikolaj Bjorner
a8ff976bcc max maximal unfolding configurable 2022-08-04 16:59:26 +03:00
Nikolaj Bjorner
b68af0c1e5 working on reconciling perf for arithmetic solvers
this update integrates inferences to smt.arith.solver=6 related to grobner basis computation and handling of div/mod axioms to reconcile performance with smt.arith.solver=2.

The default of smt.arth.nl.grobner_subs_fixed is changed to 1 to make comparison with solver=2 more direct.

The selection of cluster equalities for solver=6 was reconciled with how it is done for solver=2.
2022-07-11 07:38:51 -07:00
Nikolaj Bjorner
dfa65443e9 fix name for artifact
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-03-19 13:51:58 -07:00
Nikolaj Bjorner
964e513353 re-add bv_eq_axioms, fix #5842 2022-03-19 12:37:01 -07:00
Nikolaj Bjorner
6202cd5394 fix #5842
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-02-16 17:38:19 +02:00
Nikolaj Bjorner
56d3718cde add simplification with qe-lite as an option #5767
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-01-12 03:41:21 -08:00
Nikolaj Bjorner
8ca023d541 expose propagate created 2021-12-17 16:12:47 -08:00
Nikolaj Bjorner
18e4546404 modernize parameter defaults
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2021-09-03 17:42:36 -07:00
Nikolaj Bjorner
cdcfbeb6d8 #5532
remove "reflect" parameter from exposed options. It should be internal only.
2021-09-03 16:01:59 -07:00
Nikolaj Bjorner
a99e75f58f fix #5154 2021-04-07 11:28:51 -07:00
Nikolaj Bjorner
845ba7a11e use a large delay for nlsat 2021-03-14 19:14:44 -07:00
Nikolaj Bjorner
155738088f fix internalization on post-visit, increase delay to 100 2021-03-14 17:20:39 -07:00
Nikolaj Bjorner
8412ecbdbf fixes to new solver, add mode for using nlsat solver eagerly from nla_core 2021-03-14 13:57:04 -07:00
Nikolaj Bjorner
9a975a4523 array solver fixes 2021-03-13 06:19:32 -08:00
Nikolaj Bjorner
dafee71500 reshuffle unicode support to use global parameter, and use bit-vectors on demand 2021-01-21 14:24:26 -08:00
Nikolaj Bjorner
f519c58ace Add groovy R.U.Stan option to retrieve models even when they don't exist #4924
Usage:
z3 4924.smt2 smt.candidate_models=true
2020-12-30 14:38:41 -08:00
Nikolaj Bjorner
a164087384 remove cheap-eqs option as there is already propagate_eqs
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-12-21 11:04:04 -08:00
Lev Nachmanson
7089610bbd set arith.cheap_eqsTO True
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-12-07 12:02:57 -08:00
Lev Nachmanson
b90143cc0e set the defalt for cheap_eqs=False, do not run
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-12-06 18:26:26 -08:00
Nikolaj Bjorner
1269776777 remove experimental option. Fix #4806
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-11-20 11:46:19 -08:00
Nikolaj Bjorner
07680408a6 add flag to control whether ite-lifting under quantifiers is conservative or full for #4746, use smt.q.lift_ite=2 to obtain legacy behavior
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-27 16:27:24 -07:00
Nikolaj Bjorner
7c2bdfe3fb
delay internalization, relevancy (#4707)
* delay evaluation

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* Update bv_solver.cpp

* delay internalize

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* compiler warnings

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* remove gc

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* add bv delay option

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-23 17:12:01 -07:00
Nikolaj Bjorner
796e2fd9eb
arrays (#4684)
* arrays

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* arrays

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* arrays

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* fill

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* update drat and fix euf bugs

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* const qualifiers

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* reorg ba

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* reorg

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* build warnings

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-13 19:29:59 -07:00
Nikolaj Bjorner
cfa7c733db
fixing #4670 (#4682)
* fixing #4670

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* init

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* arrays

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* arrays

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* arrays

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>

* na

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-10 04:35:11 -07:00
Nikolaj Bjorner
b9cbb08858 shuffle dependencies
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-29 09:51:39 -07:00
Nikolaj Bjorner
4244ce4aad adding ack/model
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-28 12:55:47 -07:00
Nikolaj Bjorner
ca3ec22b7a handle better cancellation for parallel, switch between cube mode and base level mode in smt.threads, expose parameters to control theory_bv and phase caching
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-16 23:29:24 -07:00
Nikolaj Bjorner
be3c3dacb3 add bound refinement propagation
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-12 10:10:31 -07:00
Nikolaj Bjorner
ac64a370d7 change default
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-30 15:55:41 -07:00
Nikolaj Bjorner
6cfbda0f08 remove automata references
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-30 15:26:32 -07:00
Nikolaj Bjorner
d0e20e44ff booyah
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -07:00
Lev Nachmanson
b996bc1f02 remove cheap equalities with the table
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-07-04 09:33:45 -07:00
Lev Nachmanson
7a2aa28644 make the tree option in cheap_eqs the default
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-20 11:31:22 -07:00
Lev Nachmanson
09516d74f6 change the default for cheap eqs to table
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-15 13:30:45 -07:00
Nikolaj Bjorner
395a304262 add optional feature to bound search within ranges
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-14 21:34:54 -07:00
Lev Nachmanson
23c12b75af remove a duplicate option gb==grobner
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-13 10:03:19 -07:00
Lev Nachmanson
dd30b5e3af some simplifications in cheap eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00
Lev Nachmanson
110ab5e6ef debug cheap_eqs
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-06-12 22:11:11 -07:00