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

17 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
Nuno Lopes
737c2208fa delete more default constructors
reduces code size by 0.1%
2024-09-23 12:59:04 +01:00
Bruce Mitchener
1d9345c3de Fix typos. 2022-08-05 07:40:50 +03:00
Bruce Mitchener
5d0dea05aa
Remove empty leaf destructors. (#6211) 2022-07-30 10:07:03 +01:00
Nikolaj Bjorner
94a2477fa0 totalizer 2022-06-30 19:49:19 -07:00
Nikolaj Bjorner
c3d2120bdd add totalizer version of rc2
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-29 23:10:42 -07:00
Nikolaj Bjorner
911134b3c7 add new heuristic rc2bin (to be tested) to maxsat
The rc2bin heuristic is a hybrid of rc2 and binary maxres.
It follows the suggestion by Nina to use rc2 on large cores after a single maxres relaxation step; otherwise maxres (binary) on smaller cores. In the design space of possible hybrids, this variant chooses to always apply a single layer of maxres and then rc2 for large cores.
2022-06-20 11:50:25 -07:00
Christoph M. Wintersteiger
ed7db892f9
Fix a couple compiler warnings 2022-06-04 08:00:56 +01:00
Nikolaj Bjorner
386c511f54 core opt 2022-05-21 10:27:37 -04:00
Nikolaj Bjorner
d1f1e4ce34 selectively enable dual strengthening 2022-05-01 15:26:57 -07:00
Nikolaj Bjorner
9cc5f6901a na 2022-05-01 15:26:57 -07:00
Nikolaj Bjorner
b5c7f000de add option to "rotate" cores during core finding
enable to find multiple cores in a round and at the same time facilitate rotation around satisfiable subsets to explore neighborhoods for improved assignments.
2022-05-01 15:26:56 -07:00
Nikolaj Bjorner
0dd0fd26d4 remove buggy prototype
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-21 10:44:49 +01:00
Nikolaj Bjorner
d9f3625f93 change default output to print objective value
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-20 17:11:46 +01:00
Nikolaj Bjorner
ec57d3b15c missing switch cases 2022-04-19 16:20:02 +01:00
Nikolaj Bjorner
df981666fd na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-18 16:27:46 +02:00
Nikolaj Bjorner
c727e2d048 add rc2 option
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-04-18 10:31:56 +02:00
Renamed from src/opt/maxres.cpp (Browse further)