3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-25 04:26:00 +00:00
Commit graph

87 commits

Author SHA1 Message Date
LeeYoungJoon
0a93ff515d
Centralize and document TRACE tags using X-macros (#7657)
* Introduce X-macro-based trace tag definition
- Created trace_tags.def to centralize TRACE tag definitions
- Each tag includes a symbolic name and description
- Set up enum class TraceTag for type-safe usage in TRACE macros

* Add script to generate Markdown documentation from trace_tags.def
- Python script parses trace_tags.def and outputs trace_tags.md

* Refactor TRACE_NEW to prepend TraceTag and pass enum to is_trace_enabled

* trace: improve trace tag handling system with hierarchical tagging

- Introduce hierarchical tag-class structure: enabling a tag class activates all child tags
- Unify TRACE, STRACE, SCTRACE, and CTRACE under enum TraceTag
- Implement initial version of trace_tag.def using X(tag, tag_class, description)
  (class names and descriptions to be refined in a future update)

* trace: replace all string-based TRACE tags with enum TraceTag
- Migrated all TRACE, STRACE, SCTRACE, and CTRACE macros to use enum TraceTag values instead of raw string literals

* trace : add cstring header

* trace : Add Markdown documentation generation from trace_tags.def via mk_api_doc.py

* trace : rename macro parameter 'class' to 'tag_class' and remove Unicode comment in trace_tags.h.

* trace : Add TODO comment for future implementation of tag_class activation

* trace : Disable code related to tag_class until implementation is ready (#7663).
2025-05-28 14:31:25 +01:00
Nikolaj Bjorner
9033b826f4 debug output with the variable that is fixed and its value
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-27 00:52:26 -07:00
Nikolaj Bjorner
8d2b65b20b add options to allow testing the effect of non-linear hammers
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-09-26 19:18:44 -07:00
Nikolaj Bjorner
2e441e38c9 fix #6713 fix #6714
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-05-08 12:24:20 -07:00
Nikolaj Bjorner
f8242c58dd fix regression from Grobner port
- scan_for_linear returns true if it finds a new linear equation. It then should break GB.
- if scan_for_linear returns false, it should still allow try_modify_eqs.
This behavior was masked by requiring scan_for_linear to always be true before
allowing try_to_modify_eqs.

based on repro from Guido Martinez @mtzguido
2023-04-04 22:29:22 -07: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
ff265235c1 adjust trace output 2022-06-29 08:20:01 -07:00
Nikolaj Bjorner
04f94d818f fix #6091 2022-06-14 09:51:06 -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
026065ff71 streamline pb solver interface and naming after removal of xor 2021-02-28 12:32:04 -08:00
Nikolaj Bjorner
a152bb1e80 remove template Context dependency in every trail object 2021-02-08 15:41:57 -08:00
Nikolaj Bjorner
601ba2a361 #4765
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-10-29 12:10:00 -07:00
Nikolaj Bjorner
e1a0a2e536 give up on addition subterms in monomial decomposition caused by disabling rewriter.flat seems to be corner case exercised in #4532.
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-08 11:43:32 -07:00
Nikolaj Bjorner
d0e20e44ff booyah
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-04 15:56:30 -07:00
Nikolaj Bjorner
3f2dafe047 fix $4457
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 18:32:01 -07:00
Nikolaj Bjorner
d3e20d41b2 fix $4457
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-06-02 18:31:28 -07:00
Lev Nachmanson
52fdb4d291 fix issue https://github.com/Z3Prover/z3/issues/4438
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-05-26 12:44:47 -07:00
Nikolaj Bjorner
becf423c77
remove level of indirection for context and ast_manager in smt_theory (#4253)
* remove level of indirection for context and ast_manager in smt_theory

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

* add request by #4252

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

* move to def

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

* int

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-05-08 16:46:03 -07:00
Nikolaj Bjorner
691759c9e2 fix #4227 2020-05-06 12:56:46 -07:00
Nikolaj Bjorner
e9119a6eb5 fix #4168 2020-04-30 14:49:48 -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
a7123062a0 fix #3899 regression from transitioning to decompose_monomial
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-10 11:22:12 -07:00
Nikolaj Bjorner
ee9c797822 address #3886 and #3891 by revamping nl_arith decoupling of monomial analysis and access
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-10 01:33:46 -07:00
Nikolaj Bjorner
1fce2905ec fix #3832
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-09 19:38:08 -07:00
Nikolaj Bjorner
99c328b6ef more fixes for #3858
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-09 09:52:15 -07:00
Nikolaj Bjorner
c26d3f5437 fix #3740
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 11:31:29 -07:00
Nikolaj Bjorner
fd2eab85f1 fix #3717, non-linear requires reflection
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-03 10:55:48 -07:00
Nikolaj Bjorner
700ad1f2b9 fix #3689
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-02 11:33:22 -07:00
Nikolaj Bjorner
2b5247a37b fix #3625
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-31 12:30:13 -07:00
Nikolaj Bjorner
0ca5f59e35 fix #3550
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 14:45:38 -07:00
Nikolaj Bjorner
53b5ca3c2b disambiguate call
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 13:35:40 -07:00
Nikolaj Bjorner
aeee44398d fix #3594
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-30 12:40:24 -07:00
Nikolaj Bjorner
b6618892d8 fix #3469
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-22 11:02:24 -07:00
Nikolaj Bjorner
47bd06338e fix #3283
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-03-14 11:54:24 -07:00
Nikolaj Bjorner
bc75e08a52 fix #2943
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-09 15:48:53 -08:00
Nikolaj Bjorner
cc5971ceaf fix #2936
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-04 13:50:10 -08:00
Nikolaj Bjorner
7a946fd9d0 na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-03 18:56:20 -08:00
Nikolaj Bjorner
47cdb5f46e fix #2913
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-03 09:14:23 -08:00
Nikolaj Bjorner
28c827fb69 fix #2919
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-02 14:49:35 -08:00
Nikolaj Bjorner
be95ea121b fix #2912
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-01 17:32:19 -08:00
Nikolaj Bjorner
321329d77c fix #2910
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-02-01 14:31:13 -08:00
Lev Nachmanson
87d7ce69e3 add trace statement and a fix change in pick_next() - choosing a smaller monomial
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
69c89426da port Grobner
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
4a87ca8b92 remove m_lc field from equation
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
e8b6b870ac port grobner basis functionality
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
36380463d7 start porting grobner basis functionality
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
35efdc9852 start porting grobner basis functionality
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
7386b7d68d start porting grobner basis functionality
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
248e3e092a start porting grobner basis functionality
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
26b4294bce start porting grobner basis functionality
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00