Copilot
e7f9a31b25
Replace remaining NULL with nullptr ( #8198 )
...
* Initial plan
* Replace NULL with nullptr in spacer_context.cpp
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-01-14 19:50:44 -08:00
Nuno Lopes
1d8c50ebd6
fix build
2026-01-14 18:54:16 +00:00
Copilot
c5b28950d5
Remove redundant overridden default destructors ( #8191 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-14 18:41:26 +00:00
Lev Nachmanson
ece691285e
throw an algebraic exception on a failure of m_limit.inc() instead of returning sign_zero
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2026-01-14 07:23:26 -10:00
Lev Nachmanson
d5e0216070
Revert "Merge pull request #8190 from Z3Prover/copilot/fix-std-format-usage"
...
This reverts commit d9bdb6b83c , reversing
changes made to 8b188621a5 .
2026-01-13 18:18:07 -10:00
copilot-swe-agent[bot]
0c2ea345fb
Fix spacing in error message
...
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-01-13 21:36:14 +00:00
copilot-swe-agent[bot]
64957e2b0e
Modernize more files to use std::format: bv_decl_plugin, dl_decl_plugin, datatype_decl_plugin, seq_decl_plugin
...
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-01-13 21:34:47 +00:00
copilot-swe-agent[bot]
99a40e79d4
Modernize ostringstream to std::format in ast.cpp and array_decl_plugin.cpp
...
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-01-13 21:29:51 +00:00
Nikolaj Bjorner
8b188621a5
coerce bool
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-13 11:45:57 -08:00
Nikolaj Bjorner
c78d5405d1
update iterator pattern
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-13 11:33:15 -08:00
Simon Jeanteur
deaced1711
Subterms Theory ( #8115 )
...
* somewhaat failed attempt at declaring subterm predicate
I can't really figure out how to link the smt parser to the rest of the
machinenery, so I will stop here and try from the other side. I'll start
implmenting the logic and see if it brings me back to the parser.
* initial logic implmentation
Very primitive, but I don't like have that much work uncommitted.
* parser implementation
* more theory
* Working base
* subterm reflexivity
* a few optimization
Skip adding obvious equalities or disequality
* removed some optimisations
* better handling of backtracking
* stupid segfault
Add m_subterm to the trail
* Update src/smt/theory_datatype.h
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/ast/rewriter/datatype_rewriter.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/smt/theory_datatype.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/smt/theory_datatype.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update src/smt/theory_datatype.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* review
* forgot to update `iterate_subterm`'s signature
* fix iterator segfault
* Remove duplicate include statement
Removed duplicate include of 'theory_datatype.h'.
* Replace 'optional' with 'std::option' in datatype_decl_plugin.h
* Add is_subterm_predicate matcher to datatype_decl_plugin
* Change std::option to std::optional for m_subterm
* Update pdecl.h
* Change has_subterm to use has_value method
* Update pdecl.cpp
---------
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-13 10:53:17 -08:00
Copilot
7377d28c30
Replace empty destructors with = default for compiler optimization ( #8189 )
...
* Initial plan
* Replace empty destructors with = default
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-01-13 10:50:10 -08:00
Nikolaj Bjorner
5d0be96fd1
update RCFNum
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-13 09:22:43 -08:00
Nikolaj Bjorner
c2cf11672a
update python example
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-13 09:17:01 -08:00
Nikolaj Bjorner
eca8e19231
remove debug output
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-12 21:52:44 -08:00
Copilot
daefb4ddfd
Fix unused parameter warnings in empty override functions by omitting parameter names ( #8174 )
...
* Initial plan
* Fix unused parameter warnings in empty override functions
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Omit parameter names in empty override functions instead of casting to void
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-01-12 21:27:33 -08:00
Copilot
bd0eba812d
Add RCF (Real Closed Field) bindings to C++, Java, C#, and TypeScript ( #8171 )
...
* Initial plan
* Add RCF (Real Closed Field) bindings to C++ API
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add RCF (Real Closed Field) bindings to Java API
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add RCF (Real Closed Field) bindings to C# (.NET) API
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add RCF (Real Closed Field) example for TypeScript/JavaScript API
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add comprehensive RCF implementation summary documentation
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-01-12 16:34:42 -08:00
Copilot
cfd40d2588
Add set_ast_print_mode() to Python, C#, and TypeScript bindings ( #8166 )
...
* Initial plan
* Add set_ast_print_mode to Python and PrintMode getter to C#
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add setPrintMode to TypeScript Context API
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-01-11 21:20:32 -08:00
Copilot
b5492e5cf9
Modernize C++ patterns: range-based for loops and nullptr ( #8167 )
...
* Initial plan
* Replace NULL with nullptr in test files
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Convert iterator loops to range-based for loops (part 1)
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Convert iterator loops to range-based for loops (part 2)
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix compilation errors in iterator loop conversions
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-01-11 21:20:07 -08:00
Nikolaj Bjorner
130c210239
remove optional_benchmarks from CmakeLists
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-11 19:52:07 -08:00
Copilot
4d188f07e9
Replace custom util/optional with std::optional ( #8162 )
...
* Initial plan
* Replace optional with std::optional in source files
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix array_map contains() and remove optional_benchmark test
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address code review feedback - simplify array_map and test
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-01-11 19:47:39 -08:00
Copilot
ee037dcafe
Convert internal class enums to enum class for type safety ( #8158 )
...
* Initial plan
* Convert plain enums to enum class in EUF module
- Convert eq_status in euf::ac_plugin to enum class
- Convert undo_kind in euf::ac_plugin to enum class
- Convert undo_t in euf::arith_plugin to enum class
- Convert to_merge_t in euf::egraph to enum class
- Update all usage sites to use scoped enum syntax
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Convert more plain enums to enum class
- Convert state enum in substitution class
- Convert instruction enum in generic_model_converter class
- Convert eq_type enum in bit2int class
- Update all usage sites to use scoped enum syntax
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-01-11 17:44:59 -08:00
Copilot
31122b0c10
Adopt C++17 structured bindings for map/pair iteration ( #8159 )
...
* Initial plan
* Adopt structured bindings for map iteration
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix DEBUG_CODE macro issue with structured bindings
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-01-11 17:44:12 -08:00
Nikolaj Bjorner
9a80bd2016
cross-compile do_not_optimize
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-11 17:40:30 -08:00
Copilot
5cf59ea5e4
Add std::optional vs custom optional performance benchmark ( #8160 )
...
* Initial plan
* Complete optional benchmark implementation
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add comprehensive benchmark results documentation
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address code review feedback - improve benchmark portability and remove redundant volatile
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Final refinement: fix inline assembly constraint for const reference
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Delete OPTIONAL_BENCHMARK_RESULTS.md
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-11 14:30:45 -08:00
Copilot
5aac5c98b3
Add missing API functions to C++, Java, C#, and TypeScript bindings ( #8152 )
...
* Initial plan
* Add missing API functions to C++, Java, C#, and TypeScript bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix TypeScript type errors in new API functions
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address code review comments and add documentation
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix TypeScript async issue in polynomialSubresultants
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Delete API_COHERENCE_FIXES.md
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-11 13:59:30 -08:00
Copilot
319db5dbb1
Add missing API methods across language bindings ( #8150 )
...
* Initial plan
* Add API coherence improvements for C#, Python, C++, and TypeScript
- C#: Add SubstituteFuns method to Expr class
- Python: Add update method to ExprRef class
- C++: Add update method to expr class
- TypeScript: Add complete Statistics API with Statistics interface, StatisticsEntry interface, StatisticsImpl class, and statistics() methods for Solver, Optimize, and Fixedpoint
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add Z3_stats import and Statistics types to TypeScript bindings
- Add Z3_stats to imports in types.ts and high-level.ts
- Add Statistics and StatisticsEntry to type imports in high-level.ts
- Fixes missing type references identified in code review
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-01-11 10:01:04 -08:00
Copilot
6c90b7ec3f
Add [[nodiscard]] to AST factory functions and modernize iterator loops ( #8143 )
...
* Initial plan
* Add [[nodiscard]] to AST factory functions and modernize iterator loops
- Added [[nodiscard]] attribute to key factory functions in ast.h:
- All mk_app() variants for creating application nodes
- All mk_func_decl() variants for creating function declarations
- All mk_const() variants for creating constants
- All mk_sort() variants for creating sorts
- mk_var() for creating variables
- mk_quantifier(), mk_forall(), mk_exists(), mk_lambda() for quantifiers
- mk_label(), mk_pattern() and related functions
- Converted iterator loops to range-based for loops in:
- src/util/region.cpp: pop_scope()
- src/util/dec_ref_util.h: dec_ref_key_values(), dec_ref_keys(), dec_ref_values()
- src/util/mpf.h: dispose()
- src/util/numeral_buffer.h: reset()
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Modernize additional iterator loops to range-based for loops
- Converted iterator loops to range-based for loops in:
- src/api/api_ast_map.cpp: Z3_ast_map_keys() and Z3_ast_map_to_string()
- src/api/c++/z3++.h: optimize copy constructor and add() method
- src/opt/wmax.cpp: mk_assumptions()
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Revert changes to z3++.h for C++ version compatibility
Revert the range-based for loop changes in src/api/c++/z3++.h to maintain
compatibility with older C++ versions that users may rely on. The C++ API
wrapper must support down-level C++ standards for backward compatibility.
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Trigger CI build
[skip ci] is not used to ensure CI runs
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-01-11 09:58:25 -08:00
Copilot
2777a39b93
Add Simplifier, Params, and ParamDescrs APIs to TypeScript bindings ( #8146 )
...
* Initial plan
* Add Simplifier, Params, and ParamDescrs APIs to TypeScript bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add Tactic.usingParams and comprehensive documentation for new APIs
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Format code with prettier
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add implementation summary documentation
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix test by using valid parameter for solve-eqs simplifier
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Delete IMPLEMENTATION_SUMMARY.md
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-10 19:44:24 -08:00
Copilot
7c69858b14
Add Goal, ApplyResult, and Tactic APIs to TypeScript bindings ( #8141 )
...
* Initial plan
* Add Goal, ApplyResult, and enhanced Tactic/Probe APIs to TypeScript bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix async tactic.apply and add comprehensive tests for new APIs
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address code review feedback: fix proxy handler, factory method, and type improvements
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add API examples documentation and format code with Prettier
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix merge conflict in test file - complete truncated tactic test
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add test case for tactic.apply method
missing bracket,
* Change tactic from 'simplify' to 'smt'
* Delete src/api/js/TACTICS_API_EXAMPLES.md
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-10 14:38:34 -08:00
Nikolaj Bjorner
a5ab32c51e
fix #8116
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-10 13:50:36 -08:00
Copilot
d7579706e2
Add Floating-Point and String/Sequence APIs to TypeScript bindings ( #8135 )
...
* Initial plan
* Add FP and String/Seq type definitions to TypeScript bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Implement FP and String/Seq in TypeScript high-level bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add comprehensive tests for FP and String/Seq APIs
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix build errors: Add isFP to test scope and use eqIdentity for Sort comparison
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix code formatting with Prettier for WASM build
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix FPNum.value() to use Z3_get_numeral_double instead of parsing string
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Simplify length check for empty sequence
Refactor length check for empty sequence in tests.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-10 12:55:08 -08:00
Copilot
6d14d2e3b8
Add missing API methods: Java substituteFuns, TypeScript Fixedpoint and substitution APIs ( #8138 )
...
* Initial plan
* Add substituteFuns to Java and substitute methods to TypeScript
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add Fixedpoint (Datalog) API to TypeScript bindings
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Improve error message in Java substituteFuns method
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix TypeScript build error: use .ptr instead of .decl for FuncDecl
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix TypeScript build errors: handle optional symbols and pointer null checks
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-01-10 12:04:50 -08:00
Copilot
495e1f44ba
Add missing array API functions and fix BitVec method typos ( #8132 )
...
* Initial plan
* Add missing API functions: array_default, array_ext, and fix BitVec typos
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add documentation for new array API functions
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix WebAssembly build: Add default() method to LambdaImpl
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-01-09 11:26:27 -08:00
Nikolaj Bjorner
3881b6845b
Update high-level.test.ts
2026-01-09 09:34:10 -08:00
Copilot
02972ffab3
Add solver introspection APIs to Java bindings (getUnits, getNonUnits, getTrail) ( #8130 )
...
* Initial plan
* Add getUnits(), getNonUnits(), and getTrail() methods to Java Solver API
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add SolverIntrospectionExample and update Java examples README
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Revert changes in examples/java directory, keep only Solver.java API changes
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-01-09 09:04:56 -08:00
Copilot
c324f41eb0
Add TypeScript API parity: Solver introspection, congruence closure, and Model sort universe methods ( #8129 )
...
* Initial plan
* Add TypeScript API parity: Solver and Model introspection methods
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Format code and add API parity demo example
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add comprehensive API parity documentation
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix Context usage in tests and demo - use api.Context('main')
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Delete src/api/js/API_PARITY.md
* Delete src/api/js/examples/high-level/api-parity-demo.ts
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-09 09:03:53 -08:00
Nikolaj Bjorner
926359140b
Remove duplicate unsatCore method in types.ts
...
Removed duplicate unsatCore method declaration.
2026-01-08 20:56:12 -08:00
Copilot
f690afa6b1
Add AtMost, AtLeast, unsatCore, and reasonUnknown to JS/TS API ( #8118 )
...
* Initial plan
* Add AtMost, AtLeast, checkAssumptions, and unsatCore methods to JS/TS API
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Format code with prettier
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add comprehensive documentation for Solver.check, checkAssumptions, and unsatCore methods
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Remove redundant checkAssumptions method, use check() for assumptions
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Enable unsat_core tracking in test to fix 'unknown' result
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add reasonUnknown() method and use it in test to debug unknown results
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>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-08 19:53:08 -08:00
Copilot
bc4f587acc
Add missing C# API functions for solver introspection and congruence closure ( #8126 )
...
* Initial plan
* Add missing C# API functions for NonUnits, Trail, and Congruence methods
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix formatting: remove extra blank lines in new properties
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-01-08 18:46:47 -08:00
Copilot
7a35caa60a
Fix memory lifetime bug in async array parameter handling for JS API ( #8125 )
...
* Initial plan
* Fix async array parameter handling in JS API wrappers
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add test for solver.check() with assumptions
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address code review feedback: add null checks and improve readability
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add unsatCore() method to Solver class
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-01-08 18:43:58 -08:00
Copilot
dc2d2e2edf
Add missing C++ API methods for congruence closure and model sort universe ( #8124 )
...
* Initial plan
* Add missing C++ API functions for congruence closure and model sort universe
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add error checking and context validation to new API methods
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add documentation for get_sort precondition
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Delete examples/c++/test_missing_apis.cpp
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-08 15:16:55 -08:00
Nikolaj Bjorner
ccc2a34444
fix #8109
...
default behavior is conservative: if the body of a recursive function contains uninterpreted variables they are not rewritten.
Model evaluation will bind values to uninterpreted variables so the filter should not apply here.
2026-01-07 10:56:50 -08:00
Simon Sobisch
c390afa279
AIX compat ( #8113 )
...
* fix name conflict for struct proc
* aix compat
2026-01-05 07:23:05 -08:00
bu99ed
ff7d0fb501
set source & target version java compile flags in cmake build to match the python/make build for consistent bytecode generation ( #8112 )
...
Co-authored-by: bu99ed <bu99ed@localhost>
2026-01-03 15:26:40 -08:00
Nikolaj Bjorner
5dc812728e
refine maxresw option
2026-01-02 16:23:51 -08:00
Lev Nachmanson
623b32239c
when deleting the last row from m_e_matrix go over fresh variables defined for this row and mark the rows depending on them as changed
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2026-01-02 11:56:35 -10:00
Lev Nachmanson
918722d2f6
add a check in entry_invariant()
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2026-01-02 10:54:36 -10:00
Nikolaj Bjorner
5c4a3128c4
update wcnf front-end and add new wcnf strategy
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-01-01 17:50:42 -08:00
Lev Nachmanson
17dffc67c9
catch a conflict with a fractional sum of fixed variables in a term
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2025-12-30 16:09:35 -10:00