3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-02-10 11:00:52 +00:00
z3/src
SpecBot e62354d3f6 Add formal specifications to vector class
- Add check_invariant() method with core class invariants
- Add invariant checks to all constructors and destructor
- Add invariant preservation checks to mutating methods
- Add pre-condition documentation to critical operations
- Add post-condition checks after state modifications

Class invariants added:
- size() <= capacity() (fundamental size/capacity relationship)
- m_data == nullptr implies size() == 0 && capacity() == 0
- m_data != nullptr implies capacity() > 0

Improves runtime error detection and documents class contracts.
2026-01-27 21:03:44 +00:00
..
ackermannization Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
api Add polymorphic datatype support to ML API (#8378) 2026-01-27 11:44:35 -08:00
ast Refactor seq_rewriter to use C++17 structured bindings (#8381) 2026-01-27 12:06:11 -08:00
cmd_context Revert "Refactor find_tactic_cmd to use std::optional<tactic_cmd*> (#8331)" 2026-01-26 13:20:03 -08:00
math Fix implicit conversion warnings: use UINT_MAX instead of -1 for unsi… (#8342) 2026-01-25 22:35:43 -08:00
model Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
muz Fix implicit conversion warnings: use UINT_MAX instead of -1 for unsi… (#8342) 2026-01-25 22:35:43 -08:00
nlsat revive nlsat check_lemma() 2026-01-25 11:38:25 -10:00
opt preserve the initial state of the solver with push/pop for multiple objectives (#8264) 2026-01-23 10:41:03 -08:00
params Add SLS tactic as a separate worker thread (#8263) 2026-01-20 12:52:00 -08:00
parsers Revert "Refactor find_psort_decl() to return std::optional<psort_decl*> (#8339)" 2026-01-26 13:19:51 -08:00
qe Refactor mk_and/mk_or call sites to use vector overloads (#8286) 2026-01-22 13:21:22 -08:00
sat Refactor sat_th to use structured bindings for enode_pair patterns (#8386) 2026-01-27 12:02:28 -08:00
shell Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
smt Refactor theory_seq to use structured bindings for pair patterns (#8390) 2026-01-27 12:01:29 -08:00
solver Standardize for-loop increments to prefix form (++i) (#8199) 2026-01-14 19:55:31 -08:00
tactic Refactor mk_and and mk_app to use std::span API (#8285) 2026-01-22 16:58:38 -08:00
test Expose timestamp method in sls_context (#8347) 2026-01-26 11:27:27 -08:00
util Add formal specifications to vector class 2026-01-27 21:03:44 +00:00
CMakeLists.txt BLD: Add CMake option to build Python bindings without rebuilding libz3 (redux) (#8088) 2025-12-16 17:50:37 +00:00