3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-20 15:34:41 +00:00
Commit graph

52 commits

Author SHA1 Message Date
Copilot
317dd92105 Standardize for-loop increments to prefix form (++i) (#8199)
* Initial plan

* Convert postfix to prefix increment in for loops

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Fix member variable increment conversion bug

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Update API generator to produce prefix increments

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-18 20:57:29 -08:00
Lev Nachmanson
accb7393cd Revert "Merge pull request #8190 from Z3Prover/copilot/fix-std-format-usage"
This reverts commit d9bdb6b83c, reversing
changes made to 8b188621a5.
2026-02-18 20:57:13 -08:00
copilot-swe-agent[bot]
242ec13297 Fix spacing in error message
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-02-18 20:57:13 -08:00
copilot-swe-agent[bot]
794de8fa8b Modernize ostringstream to std::format in ast.cpp and array_decl_plugin.cpp
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-02-18 20:57:13 -08:00
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
Nikolaj Bjorner
98043873d0 add -> as another array sort constructor
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2025-06-22 21:35:23 -07: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
8349ee0069 Add support for const array in all logics as per issue #7383 2024-09-19 11:44:18 +03:00
Nuno Lopes
cab3c45863 remove unnecessary parameter copies 2023-12-22 16:11:06 +00:00
Nikolaj Bjorner
d0d434e4f1 fix #6807 2023-07-13 10:23:28 -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
e1a00f4917 remove unused experimental feature - diff 2022-10-24 16:13:24 -07:00
Nikolaj Bjorner
3900c03b72 make error message more descriptive 2022-09-11 05:43:33 -07:00
Nikolaj Bjorner
fa91a644d3 make extensionality commutative 2022-08-13 07:07:14 -07:00
Nikolaj Bjorner
f77037e9a5 expand select/store when I/J are values #6053
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-25 20:23:43 -04:00
Nikolaj Bjorner
5a685ba9b5 expose maxdiff
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-04 08:52:42 -07:00
Nikolaj Bjorner
c29cfa81ae prep for max/min diff 2022-05-04 02:08:11 -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
b7ec4489a6
bv fixes and tuning (#4703)
* heap size information

* bv tuning

* fix #4701

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

* throw on set-has-size #4700

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-21 19:54:53 -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
5516e420a1 disable bapa from smt interface
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-04-04 23:09:28 -07:00
Nikolaj Bjorner
c73a87c19c remove assert
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-11 07:11:52 -08:00
Nikolaj Bjorner
779183da06 fixing smtfd
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-11-10 18:23:32 -08:00
Nikolaj Bjorner
77ef40a3db na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-17 11:50:14 -04:00
Nikolaj Bjorner
4b51fe466d fix #2562
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-09-17 11:49:11 -04:00
Nikolaj Bjorner
fa88bdb075 fix #2251 thanks to Clark
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-27 09:44:18 -07:00
Nikolaj Bjorner
7e2afca2c6 add card operator to bapa
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-20 13:24:07 -07:00
Nikolaj Bjorner
d4410d0872 address compilation warnings of unused parameters, add shorthands to set parameters on Optimize
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-16 14:32:48 -07:00
Nikolaj Bjorner
1123b47fb7 bapa
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-04-13 16:15:38 -07:00
Egor Bredikhin
21be4e6d16
Fix misprint 2019-03-05 17:09:27 -05:00
Nikolaj Bjorner
7b4c919fcf stubs for stronger array equality rewriting
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-03 14:11:05 -08:00
Nikolaj Bjorner
6c331279ae fix array regressions
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-03 13:22:12 -08:00
Nikolaj Bjorner
e51b5fd99c fix t154 regression
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-03 13:10:11 -08:00
Nikolaj Bjorner
3ee5c0e7d9 fix #2164 address some of simplification shortcommings from #2151 #2152 #2153
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-03-03 11:33:44 -08:00
Nuno Lopes
6a0c409b0f move a few strings instead of copying 2019-02-28 10:53:27 +00:00
Nikolaj Bjorner
d2d42f9810 fix #2127 fix #2128
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-02-09 08:23:22 -08:00
Nikolaj Bjorner
3c1c3d5987 fix #1908
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-10-30 14:15:29 -05:00
Bruce Mitchener
76eb7b9ede Use nullptr. 2018-02-12 14:05:55 +07:00
Nikolaj Bjorner
1c5f798cbe expose extra symbols for logic ALL, requested in #1364
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-25 12:03:47 -08:00
Nikolaj Bjorner
c9f540b066 additional array functions exposed over API, ping #1223
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-10-19 11:08:48 -07:00
Nikolaj Bjorner
10f734357e build fixes
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-09-03 15:32:57 -07:00
Nikolaj Bjorner
359ee818a5 purge iterators
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-08-20 15:35:16 -07:00
Nikolaj Bjorner
b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00
Nikolaj Bjorner
017165c474 fix bug with model completion and remove spurious std::cout
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 09:02:12 -07:00
Nikolaj Bjorner
914bf2ff3b extend constant folding for bit-vector overflow/underflow operators, #657
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-06-24 07:43:05 -07:00
Nikolaj Bjorner
7c6540e18f recursive function definitions; combine model-building functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-03 07:59:03 -08:00
Nikolaj Bjorner
4685a5f8ba add array-ext to externally exposed functions to enable interpolants with arrays to be usable in feedback loops with Z3. Addresses one issue raised in #292
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-07 16:42:13 -08:00
Nikolaj Bjorner
b4cb51cdb3 working on Forking/Serializing a z3 Solver #209
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-11-06 17:29:24 -08:00
Leonardo de Moura
2a286541e0 Fix crash reported at http://z3.codeplex.com/workitem/11. Fix array rewriter bug, rewriter was producing sort incorrect expression.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-26 08:36:25 -08:00
Leonardo de Moura
d92efeb0c5 Make ast_manager::get_family_id(symbol const &) side-effect free. The version with side-effects is now called ast_manager::mk_family_id
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2012-12-18 17:14:25 -08:00