Nikolaj Bjorner
2ba86c1ac3
benchmark patching
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-05-20 13:32:23 -07:00
Copilot
1a2d3e0ebb
Integrate TPTP with internal APIs via cmd_context, add embedded-string TPTP regression tests, and fix TFF arithmetic/timeout regressions ( #9483 )
...
* Add shell-integrated self-contained TPTP frontend and CLI wiring
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/ba80bc5a-d80f-4d9f-8ed4-a962f697697c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix TPTP frontend build integration and validate with tests
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/ba80bc5a-d80f-4d9f-8ed4-a962f697697c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address review feedback and clean up TPTP/frontend readability
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/ba80bc5a-d80f-4d9f-8ed4-a962f697697c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Refine TPTP parser semantics and keying based on review feedback
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/ba80bc5a-d80f-4d9f-8ed4-a962f697697c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Polish TPTP frontend keys/path checks and deduplicate skip logic
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/ba80bc5a-d80f-4d9f-8ed4-a962f697697c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add src/api include path to shell CMake target
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/e07bbe13-16bc-4cc6-92e8-1708981b04ad
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Use internal AST/cmd_context APIs in TPTP shell frontend
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/2a6b01d0-c799-4e44-aa73-ef228cb4402e
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Harden TPTP cmd_context integration and suppress check-sat echo
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/2a6b01d0-c799-4e44-aa73-ef228cb4402e
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Make TPTP check-sat stream redirection exception-safe
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/2a6b01d0-c799-4e44-aa73-ef228cb4402e
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Address review nits in TPTP internal API frontend
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/2a6b01d0-c799-4e44-aa73-ef228cb4402e
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Refine TPTP frontend ownership and stream restoration semantics
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/2a6b01d0-c799-4e44-aa73-ef228cb4402e
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add TPTP regression files and test-z3 tptp test
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/dc1d46fc-4b6c-4f64-91a0-9fb57c73c166
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Adjust Agatha TPTP expectation and tidy test helper constant
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/dc1d46fc-4b6c-4f64-91a0-9fb57c73c166
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Harden tptp test command handling and readability
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/dc1d46fc-4b6c-4f64-91a0-9fb57c73c166
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Validate tptp test filenames against empty and traversal patterns
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/dc1d46fc-4b6c-4f64-91a0-9fb57c73c166
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Tighten tptp filename checks and rename output buffer constant
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/dc1d46fc-4b6c-4f64-91a0-9fb57c73c166
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Use read_tptp API directly in tptp unit test
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/f07170c1-549a-464c-89f8-fee973f9790f
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Clarify required tptp frontend extern flags in test
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/f07170c1-549a-464c-89f8-fee973f9790f
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Move tptp frontend to cmd_context and add string API
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/1be7cf7e-2747-43ba-9a33-2e71dad2d14d
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Polish tptp stream parser naming and simplify test asserts
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/1be7cf7e-2747-43ba-9a33-2e71dad2d14d
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix mk_make include resolution for moved tptp frontend
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/7cbce0d2-0ed9-4941-91d4-49977c0a97a1
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Update CMakeLists.txt
* Fix TPTP parsing, arithmetic builtin mapping, and timeout handling
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/f2be81f6-e506-47ea-a38a-46d1970add8c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Polish TPTP parser diagnostics and type parsing details
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/f2be81f6-e506-47ea-a38a-46d1970add8c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Refine digit-check helper naming in TPTP frontend
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/f2be81f6-e506-47ea-a38a-46d1970add8c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Add rational zero-denominator regression test for TPTP
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/f2be81f6-e506-47ea-a38a-46d1970add8c
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
* Fix missing g_display_* symbol definitions for non-shell link targets
Agent-Logs-Url: https://github.com/Z3Prover/z3/sessions/0283d958-26a8-4b1c-86be-b75a5bc26d8c
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-05-12 19:29:58 -04:00
Copilot
2436943794
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-01-14 19:55:31 -08:00
Nikolaj Bjorner
e8c2360043
fix #7461
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-12-09 16:57:17 -08:00
Nikolaj Bjorner
92065462b4
use std::exception as base class to z3_exception
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 11:08:15 -08:00
Lev Nachmanson
ea16f6608c
before rm lu
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-03-08 10:27:05 -08:00
Lev Nachmanson
92fe8c5968
restore the previous state
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2023-03-03 18:30:17 -08:00
Lev Nachmanson
f986ac6a75
remove mps_reader
2023-03-03 14:50:10 -08:00
Nikolaj Bjorner
6022c17131
Add simplification customization for SMTLIB2
...
Add the ability to customize incremental pre-processing simplification for the SMTLIB2 front-end. The main new capability is to use pre-processing tactics in incremental mode that were previously not available. The main new capabilities are
- solve-eqs
- reduce-args
- elim-unconstrained
There are several more. Documentation and exposed simplifiers are populated incrementally. The current set of supported simplifiers can be inspected by using z3 with the --simplifiers flag or referring to https://microsoft.github.io/z3guide/docs/strategies/simplifiers
Some pending features are:
- add the ability to update parameters to simplifiers similar to how tactics can be controlled using parameters.
- expose simplification solvers over the binary API.
2023-01-30 22:38:51 -08:00
Nikolaj Bjorner
80033e8744
cave in to supporting proofs (partially) in simplifiers, updated doc
2022-12-06 17:02:04 -08:00
Nikolaj Bjorner
e2f4fc2307
overhaul of proof format for new solver
...
This commit overhauls the proof format (in development) for the new core.
NOTE: this functionality is work in progress with a long way to go.
It is shielded by the sat.euf option, which is off by default and in pre-release state.
It is too early to fuzz or use it. It is pushed into master to shed light on road-map for certifying inferences of sat.euf.
It retires the ad-hoc extension of DRUP used by the SAT solver.
Instead it relies on SMT with ad-hoc extensions for proof terms.
It adds the following commands (consumed by proof_cmds.cpp):
- assume - for input clauses
- learn - when a clause is learned (or redundant clause is added)
- del - when a clause is deleted.
The commands take a list of expressions of type Bool and the
last argument can optionally be of type Proof.
When the last argument is of type Proof it is provided as a hint
to justify the learned clause.
Proof hints can be checked using a self-contained proof
checker. The sat/smt/euf_proof_checker.h class provides
a plugin dispatcher for checkers.
It is instantiated with a checker for arithmetic lemmas,
so far for Farkas proofs.
Use example:
```
(set-option :sat.euf true)
(set-option :tactic.default_tactic smt)
(set-option :sat.smt.proof f.proof)
(declare-const x Int)
(declare-const y Int)
(declare-const z Int)
(declare-const u Int)
(assert (< x y))
(assert (< y z))
(assert (< z x))
(check-sat)
```
Run z3 on a file with above content.
Then run z3 on f.proof
```
(verified-smt)
(verified-smt)
(verified-smt)
(verified-farkas)
(verified-smt)
```
2022-08-28 17:44:33 -07:00
Nikolaj Bjorner
b169292743
add parameter descriptions
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2022-08-16 08:26:53 -07:00
Nikolaj Bjorner
ec034679ce
#5215
...
memory leaks
2021-05-19 12:42:38 -07:00
Nuno Lopes
1730bc7c7f
fix #4763 : shell not finishing before hard timeout
...
The timer thread for the hard timeout was leaking and thus the thread only exited on timeout
2020-10-30 10:01:09 +00:00
Nikolaj Bjorner
d02b0cde7a
running updates to bv_solver ( #4674 )
...
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* dbg
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* bv
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* drat and fresh
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* move ackerman functionality
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* towards debugability
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* missing file
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
* remove csp
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-09-07 20:35:32 -07:00
Nikolaj Bjorner
4d41db3028
adding euf
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-31 14:36:16 -07:00
Nikolaj Bjorner
fae206b738
add command-line help descriptions on tactics
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2020-08-14 19:29:35 -07:00
Lev Nachmanson
9c62b431e4
address the NB's comments
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
d028dd65e4
disable the args dump
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
65b950ec4f
stronger mon_zero_lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Lev Nachmanson
8018e27643
use m_rm_table.to_refine() when applying tangent lemma
...
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2020-01-28 10:04:21 -08:00
Nuno Lopes
cf3e649462
fix crash on Mac due to different destruction order of globals
...
the mutex in memory_manager has to be destroyed after all mem deallocations happen
2019-06-13 11:22:18 +01:00
Nikolaj Bjorner
71c38a08e5
add initialization
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-06-11 19:28:08 -07:00
Nikolaj Bjorner
f11cb77c3d
merge
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2019-05-30 16:15:55 -07:00
Philipp Paulweber
5708379ebc
MSYS2 and cmake based compilation support for clang and gcc
2019-04-12 14:56:19 +02:00
Nuno Lopes
cd4b53500c
avoid a few str copies + symbol hiding
2019-03-08 10:13:46 +00:00
Nuno Lopes
a76c0fbbfb
simplify timeout mechanism and fix race conditions there
2019-02-21 11:49:41 +00:00
Bruce Mitchener
51a947b73d
Change how 64 bit builds are detected.
...
Instead of doing this at configure time, we look at the actual
compile time status. This also avoids hardcoding checks based on
what CPU architecture is present, which doesn't work when Z3 is
being built on non-x86_64 platforms.
2018-12-09 16:16:20 +07:00
Bruce Mitchener
a76397d3b8
Refer to macOS rather than Mac OS / OSX.
2018-10-02 17:38:09 +07:00
Nikolaj Bjorner
0c4754d94b
rename version.h to z3_version.h to differentiate name in install include directory. Add support for z3_version.h in python build system. #1833
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-09-21 20:13:58 -07:00
Nikolaj Bjorner
84c7df75d6
record statistics setting in config_params so that fp engine can access them, fix serialization bug when check-assumptions returns unsat
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-08-06 16:21:27 -07:00
Lev Nachmanson
16b71fe911
work on static_matrix's cells
...
Signed-off-by: Lev <levnach@hotmail.com>
trying the new scheme in static_matrix : in progress
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
in the middle of changes in static_matrix
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
more fixes in static_matrix.h
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
debug
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fixes in static_matrix
Signed-off-by: Lev <levnach@hotmail.com>
fixes in static_matrix, column_strip
Signed-off-by: Lev <levnach@hotmail.com>
fixes in static_matrix
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
fixes for static_matrix
Signed-off-by: Lev <levnach@hotmail.com>
work on static_matrix
Signed-off-by: Lev <levnach@hotmail.com>
work on static_matrix
Signed-off-by: Lev <levnach@hotmail.com>
progress in static_matrix
Signed-off-by: Lev <levnach@hotmail.com>
fix a bug in swap_with_head_cell
Signed-off-by: Lev <levnach@hotmail.com>
progress in static_matrix
Signed-off-by: Lev <levnach@hotmail.com>
compress rows and columns if needed
Signed-off-by: Lev <levnach@hotmail.com>
fix in compression of cells
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2018-07-29 20:45:13 -07:00
Nikolaj Bjorner
c513f3ca09
merge with master
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-03-25 14:57:01 -07:00
Bruce Mitchener
76eb7b9ede
Use nullptr.
2018-02-12 14:05:55 +07:00
Nikolaj Bjorner
43441d0fd5
add LP parser option to front-end and opt context
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2018-02-06 14:02:44 -08:00
Nikolaj Bjorner
5ee30a3cd9
include special functionality in parsers for solvers and opt for additional file formats
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-12-03 20:00:24 +01:00
Nikolaj Bjorner
89971e2a98
remove smtlib1 dependencies
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-28 10:37:30 -08:00
Nikolaj Bjorner
bdbaf68f8b
adding handlers for dimacs for solver_from_file, and opb, wncf for opt_from_file, #1361
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-11-19 15:21:09 -08:00
Dan Liew
a2d7b43554
Update header includes to be relative to src/ directory.
2017-08-17 18:26:53 +01: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
911b24784a
merge LRA
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-05-09 10:46:11 -07:00
Christoph M. Wintersteiger
eec68cfa2d
Added 32/64 bit indication and githash to output of -version.
2016-07-26 19:21:50 +01:00
Nuno Lopes
83e34638e6
add support to build with MSVC /Gr (fastcall mode for x86)
...
not enabled by default nor exposed at the moment
2016-03-24 15:39:18 +00:00
Nikolaj Bjorner
b0f65335ab
update copyright year
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2016-03-17 13:07:40 -07:00
Matthias Schlaipfer
aee1813056
Added missing input format option "-dl"
...
Signed-off-by: Matthias Schlaipfer <t-matsch@microsoft.com>
2015-06-02 09:49:08 +01:00
Christoph M. Wintersteiger
32fb679066
tabs
2015-05-19 11:01:15 +01:00
Nikolaj Bjorner
52619b9dbb
pull unstable
...
Signed-off-by: Nikolaj Bjorner <nbjorner@hotmail.com>
2015-04-01 14:57:11 -07:00
Nikolaj Bjorner
4bb5302def
template args
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-18 15:54:18 -08:00
Nikolaj Bjorner
9790784488
Merge branch 'unstable' of https://git01.codeplex.com/z3 into unstable
2015-01-18 04:50:20 +05:30
Nikolaj Bjorner
6af9782927
set default file format to smt2
...
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2015-01-18 04:50:00 +05:30