Copilot
b2acbaa0c9
Fix .NET performance issues by reducing multiple enumerations in constraint methods ( #7854 )
...
* Initial plan
* Fix .NET performance issues by reducing multiple enumerations in constraint methods
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Refactor MkApp and related methods for null checks
* Update null checks for MkApp method arguments
* Fix assertion condition for MkApp method
---------
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>
2025-09-07 16:43:13 -07:00
Copilot
90e610eb23
Fix performance issue in MkAnd(IEnumerable) and eliminate code duplication ( #7851 )
...
* Initial plan
* Fix performance issue in MkAnd(IEnumerable<BoolExpr>) method
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Refactor IEnumerable methods to call params array variants
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>
2025-09-06 19:50:38 -07:00
Nikolaj Bjorner
fa3d341b18
add on_binding callbacks across APIs
...
update release notes,
add to Java, .Net, C++
2025-08-07 12:55:50 -07:00
Nikolaj Bjorner
b0fef6429f
Add assert_and_track support to Optimize class in .NET binding ( #7437 )
...
Related to #7436
#7436
---
For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/Z3Prover/z3/issues/7436?shareId=XXXX-XXXX-XXXX-XXXX ).
2024-10-26 01:33:09 -07:00
Nikolaj Bjorner
111ce01702
update path reference to readme
2023-12-05 13:47:05 -08:00
Nikolaj Bjorner
d566eb3df7
include readme in package
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-05 13:04:25 -08:00
Nikolaj Bjorner
76c05f171a
specify a readme file with the nuget package
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-12-05 12:32:30 -08:00
Andrey Andreyevich Bienkowski
18f14921ba
Clarify optimizer guarantees ( #7030 )
...
* Clarify optimizer guarantees (python)
* Clarify optimization guarantees (OCaml)
* Clarify optimizer guarantees (java)
* Clarify optimizer guarantees (.net)
2023-12-04 09:32:26 -08:00
Bruce Mitchener
9d1ceab1f2
cmake: Use FindPython3. ( #7019 )
...
`FindPythonInterp` has been deprecated for a long time and is more
verbal about that deprecation now.
The build system no longer uses `PYTHON_EXECUTABLE` but instead uses
`Python3_EXECUTABLE`.
2023-11-27 11:20:21 +01:00
Nikolaj Bjorner
35bc522dae
#7003
...
minor tweaks to gomory and reset n3 within loop (but the entire function is dead code).
2023-11-19 09:59:44 -08:00
Nikolaj Bjorner
e8a38c5482
build fixes
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-07-18 19:14:45 -07:00
THE Spellchecker
dc0887db5a
Typo Fixes ( #6803 )
2023-07-09 11:56:10 -07:00
Clemens Eisenhofer
4cb158a79b
User Propagator: Return if propagated lemma is redundant ( #6791 )
...
* Give users ability to see if propagation failed
* Skip propagations in the new core if they are already satisfied
2023-07-07 09:58:41 -07:00
Clemens Eisenhofer
d42693d5b5
Equalities in C# UP-Propagation ( #6786 )
...
* Query Boolean Assignment in the UP
* UP's decide ref arguments => next_split
* Fixed wrapper
* More fixes
* Equalities in C# UP-Propagation
---------
Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2023-06-26 10:59:57 -07:00
Clemens Eisenhofer
82667bd86b
Fix UP's decide callback ( #6707 )
...
* Query Boolean Assignment in the UP
* UP's decide ref arguments => next_split
* Fixed wrapper
* More fixes
2023-06-02 09:52:54 +02:00
Nikolaj Bjorner
4143c54257
add simplifier to java API
2023-02-02 19:06:26 -08:00
Nikolaj Bjorner
2e068e3f56
add simplifiers to .net API
2023-02-02 17:41:00 -08:00
Nikolaj Bjorner
07dd1065db
added API to monitor clause inferences
...
See RELEASE_NOTES for more information
examples pending.
2022-10-19 08:34:55 -07:00
Clemens Eisenhofer
a67fe054d5
Memory leak in .NET user-propagator ( #6360 )
...
The user-propagator object has to be manually disposed (IDisposable), otherwise it stays in memory forever, as it cannot be garbage collected automatically
2022-09-22 13:26:08 -05:00
Peter Bruch
58fad41dfa
Dotnet Api: Fix infinite finalization of Context ( #6361 )
...
* Dotnet Api: suppress GC finalization of dotnet context in favor of re-registering finalization
* Dotnet Api: enable concurrent dec-ref even if context is created without parameters.
* Dotnet Api: removed dead code.
2022-09-22 13:25:17 -05:00
Nikolaj Bjorner
edeeded4ea
remove DecRefQueue, use Z3_enable_concurrent_dec_ref ( #6332 )
...
The notion of reference counted contexts never worked.
The reference count to a context only ends up being 0 if the GC kicks in and disposes the various z3 objects. A call to Dispose on Context should free up all resources associated with that context. In exchange none of the resources are allowed any other operation than DecRef. The invocations of DecRef are protected by a lock and test on the context that the native pointer associated with the context is non-zero. Dispose sets the native pointer to zero.
Z3_enable_concurrent_dec_ref ensures that:
- calls to decref are thread safe. Other threads can operate on the context without interference.
The Z3_context ensures that
- z3objects allocated, but not disposed during the lifetime of Z3_context are freed when Z3_context is deleted (it triggers a debug warning, but this is now benign).
2022-09-11 18:59:00 -07:00
Clemens Eisenhofer
a0ca5d745e
Fixed nested user-propagator callbacks in .NET ( #6307 )
...
* Fixed nested user-propagator callbacks in .NET
* Typo
2022-08-28 17:49:15 -07:00
Clemens Eisenhofer
56fb161532
ADT-constructor generation crashed in .NET/Java when no (= default) fields are given ( #6287 )
2022-08-21 12:40:38 -07:00
Bruce Mitchener
42f5047463
cmake: Cleanup remnants of workaround for USES_TERMINAL.
...
In older versions, this was dependent upon the version of cmake,
but when it was updated for newer cmake, these remnants were
left.
2022-08-02 17:39:10 +03:00
Nikolaj Bjorner
89af9df02d
add IEnumerable for distinct
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-21 23:22:24 -07:00
Nikolaj Bjorner
7f1893d781
add missing MkSub to NativeContext
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-18 10:21:27 -07:00
Nikolaj Bjorner
02a92fb9e9
revert to use GCHandle for UserPropagator
...
avoids using a global static array
2022-07-03 17:00:40 -07:00
Nikolaj Bjorner
bb966776b8
Update UserPropagator.cs
2022-07-02 13:15:05 -07:00
Nikolaj Bjorner
d37ed4171d
Update Expr.cs
...
Add a Dup functionality that allows extending the life-time of expressions that are passed by the UserPropagator callbacks (or other code).
2022-07-02 13:12:54 -07:00
Nikolaj Bjorner
3c94083a23
fix doc errors
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-07-01 15:29:44 -07:00
Max Levatich
12e7b4c3d6
fix gc'ed callbacks in .NET propagator api ( #6118 )
...
Co-authored-by: Maxwell Levatich <t-mlevatich@microsoft.com>
2022-06-28 19:22:41 -07:00
Nikolaj Bjorner
79778767b0
add doc string
2022-06-28 14:25:43 -07:00
Nikolaj Bjorner
798a4ee86e
use IEnumerator and format
2022-06-28 14:24:05 -07:00
Nikolaj Bjorner
556f0d7b5f
use static list to connect managed and unmanaged objects
2022-06-28 14:09:22 -07:00
Nikolaj Bjorner
820c782b5e
pinned semantics
2022-06-28 13:03:52 -07:00
Nikolaj Bjorner
9836d5e6fc
missing public
2022-06-28 12:46:29 -07:00
Nikolaj Bjorner
8234eeae40
unbreak
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-22 09:03:32 -07:00
Nikolaj Bjorner
3189544050
next split
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-22 09:03:32 -07:00
Nikolaj Bjorner
d792d30e88
Update NativeContext.cs
...
TraceToFile does not correspond to the functionality of enable_trace. Z3_enable_trace tags a trace tag as input. It can be invoked multiple times with different tags. The debug tracing then shows logs with the corresponding tags.
2022-06-21 09:09:42 -07:00
Nikolaj Bjorner
51ed13f96a
update topological sort to use arrays instead of hash tables, expose Context over Z3Object for programmability
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-06-08 06:28:24 -07:00
Nikolaj Bjorner
fbf5e322dc
js
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-09 08:49:02 -07:00
Nikolaj Bjorner
4549ec7331
misc
2022-05-09 08:38:35 -07:00
Nikolaj Bjorner
da9ed82889
add decide callback
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 15:31:05 -07:00
Nikolaj Bjorner
8218f25222
add decide callback
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-08 15:30:03 -07:00
Nikolaj Bjorner
c8d12975c9
fixes for fresh
2022-05-08 12:49:04 -07:00
Nikolaj Bjorner
506f8f88aa
add user propagator functionality
2022-05-08 12:43:46 -07:00
Nikolaj Bjorner
e2625cb760
safe
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 13:53:37 -07:00
Nikolaj Bjorner
3bf09b114a
safe
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 13:53:07 -07:00
Nikolaj Bjorner
14214c5a07
exposing user propagators over .Net
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-05-07 11:08:40 -07:00
fleisherdev
ac2523af82
Fix null ref on access of Entry[] contents ( #5947 )
...
Co-authored-by: jfleisher <jofleish@microsoft.com>
2022-04-06 05:37:51 +02:00