Nikolaj Bjorner
e4697fe18e
remove set cardinality operators from array theory. Make final-check use priority levels
...
Issue #7502 shows that running nlsat eagerly during final check can block quantifier instantiation.
To give space for quantifier instances we introduce two levels for final check such that nlsat is only applied in the second and final level.
2026-02-18 20:56:51 -08:00
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
e41090df83
fix #7602
...
add missing relevancy propagation so that relationship between rel and TC(rel) are not lost to the theory solver.
2025-04-14 15:38:22 -07:00
Nikolaj Bjorner
2b683941b7
fix #7103
2024-01-27 17:46:23 -08:00
Nikolaj Bjorner
bd8bed1759
handle ac-op in legacy special relations procedure by adding warning
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-03 12:55:37 -08:00
Nikolaj Bjorner
1d62964c58
avoid name clash for multiple special relations #6743
2023-06-07 17:55:11 -07:00
Nikolaj Bjorner
e0a066efa3
#6654
...
fix reflexivity for tree-order
2023-03-31 15:38:29 -07:00
Nikolaj Bjorner
ce501e0b6e
#6646
...
- always enable special-relations theory to deal with default setting and push
- fix bugs related to equality and transitivity.
2023-03-25 17:37:59 -07:00
Nikolaj Bjorner
b55ad5f20e
fix #6267
2022-08-11 09:31:54 +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
Bruce Mitchener
77e5d6ab19
Use nullptr consistently instead of 0 or NULL.
2022-08-01 14:24:32 +03:00
Nikolaj Bjorner
56aa4261b6
fix #6082
2022-06-23 07:43:06 -07:00
Nikolaj Bjorner
c15968aa9e
fix #4901
2021-10-12 17:10:04 -07:00
Nikolaj Bjorner
8a85cfdb12
fix #5579 -
...
It is only possible to reach this case when new assertions are created.
2021-09-30 09:32:34 -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
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
998cf4c726
fix #5020
...
comparison for strict neighbor relation seemed reversed.
Alas, this could introduce additional regressions
2021-02-12 12:24:27 -08:00
Nikolaj Bjorner
65e6b73873
fix #4538 - regression when renaming family from special_relations to specrels
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-07-08 14:46:40 -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
b889b110ee
bool_vector, some spacer tidy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-05 12:59:04 -07:00
Nikolaj Bjorner
f411b3b201
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-16 20:18:29 +03:00
Nikolaj Bjorner
86b98e3477
remove trc
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-17 10:47:46 -07:00
Nikolaj Bjorner
6158ea61c8
fix tree-order, change API for special relations to produce function declarations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-16 00:04:48 -07:00
Nikolaj Bjorner
4dbccbf23a
fix build
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-11 14:11:40 -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
0d06bc5990
change to more digestible recursive function definition
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-10 17:12:24 -07:00
Nikolaj Bjorner
9c9cd5ebf7
add tc and trc functionals for binary relations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-10 04:12:46 +02:00
Nikolaj Bjorner
ae982c5225
add tc and trc functionals for binary relations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-10 04:12:45 +02:00
Nikolaj Bjorner
56ac3f86a5
fix justification for implied equalities in special relations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-03 17:08:10 -07:00
Nikolaj Bjorner
ff6d703c05
add tracing, fix #2214 , remove unused variables
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-02 12:20:55 -07:00
Nikolaj Bjorner
4fb867a49c
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-01 11:57:07 -07:00
Nikolaj Bjorner
e4eca577f6
fix po model
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:22 -07:00
Nikolaj Bjorner
175008a6c6
adding po evaluator
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:22 -07:00
Nikolaj Bjorner
f55e4ccc41
support indexed relations
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:22 -07:00
Nikolaj Bjorner
81b1338af6
display methods
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:22 -07:00
Nikolaj Bjorner
5536834019
add API
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
6a9cbe1461
l -> eq
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
892be69d51
nits
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
168b0bcc44
tidy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
1e751422e1
remove unused code
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
f8b8d5b870
na
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
c714abbff2
use override
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
5baef8bcf3
use for pattern
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00
Nikolaj Bjorner
876aa01167
add sr
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-28 07:04:21 -07:00