3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-03-15 17:49:59 +00:00
Commit graph

21955 commits

Author SHA1 Message Date
copilot-swe-agent[bot]
036047f725 Initial plan 2026-03-12 18:12:34 +00:00
Nikolaj Bjorner
97e652156a
Merge pull request #8963 from Z3Prover/copilot/add-zipt-solver-to-benchmark
Add ZIPT solver to QF_S benchmark workflow
2026-03-12 10:39:39 -07:00
copilot-swe-agent[bot]
d4d72767d9 add ZIPT solver to QF_S benchmark workflow
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-12 17:36:48 +00:00
Nikolaj Bjorner
588b07f5ad
Merge pull request #8959 from Z3Prover/copilot/create-workflow-mark-prs-ready
Add workflow to mark all draft PRs ready for review
2026-03-12 10:30:56 -07:00
copilot-swe-agent[bot]
248800c3e4 Initial plan 2026-03-12 17:29:12 +00:00
copilot-swe-agent[bot]
f461876e8a Add pull_request trigger to mark-prs-ready-for-review workflow
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-12 16:30:09 +00:00
Lev Nachmanson
11309424b3
Merge pull request #8944 from Z3Prover/feas
Fix the regression in maximize of theory_lra.
2026-03-12 06:10:26 -10:00
Lev Nachmanson
3176151cc2 rename bhn_opt to max_reg
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
2026-03-11 19:18:45 -10:00
Nikolaj Bjorner
664c8ca73a compiled workflows
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2026-03-11 21:39:28 -07:00
Lev Nachmanson
b8d6952e9e Enable som (sum of monomials) in optimizer simplification
The optimizer's simplification pass did not expand products of sums
into sum-of-monomials form. This caused mathematically equivalent
expressions like (5-x)^2 vs (x-5)^2 to simplify into different
internal forms, where the former produced nested multiplies
(+ 5.0 (* -1.0 x)) that led to harder purification constraints
and solver timeouts.

Enabling som=true in the first simplification tactic normalizes
polynomial objectives into canonical monomial form, making the
optimizer robust to operand ordering.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-11 18:28:40 -10:00
Lev Nachmanson
ce7c7f458e Add max_rev test: BNH with reversed argument order in f1/f2
Same as test_bnh_optimize but constructs f1 and f2 with reversed
parameter order in mk_add, mk_mul, mk_sub calls. Exposes optimizer
sensitivity to expression structure.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-11 18:15:57 -10:00
copilot-swe-agent[bot]
0060608d73 Add workflow to mark all draft pull requests ready for review
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-12 02:27:32 +00:00
copilot-swe-agent[bot]
4364b9865e Initial plan 2026-03-12 02:25:22 +00:00
Nikolaj Bjorner
9c2d34ce43
Merge pull request #8948 from angelica-moreira/z3-skill-exploration
Add Copilot skills and agent for Z3
2026-03-11 19:20:31 -07:00
Nikolaj Bjorner
faf888d35c
Merge pull request #8945 from Z3Prover/vect_fix
Fixed the assertion violation in `mpz.cpp:602` when running with `-tr…
2026-03-11 17:52:27 -07:00
Angelica Moreira
f120cc6903 add per-skill @z3 usage examples to agent readme 2026-03-12 00:16:06 +00:00
Angelica Moreira
68ea8d3a43 move agent readme to repo root as Z3-AGENT.md 2026-03-12 00:11:28 +00:00
Lev Nachmanson
610527ec1a
Merge pull request #8946 from Z3Prover/copilot/sub-pr-8945
[WIP] [WIP] Address feedback on assertion violation fix in mpz.cpp
2026-03-11 13:58:40 -10:00
copilot-swe-agent[bot]
01f9709ff6 Add vector::resize tests including vector<rational>
Co-authored-by: levnach <5377127+levnach@users.noreply.github.com>
2026-03-11 23:54:01 +00:00
copilot-swe-agent[bot]
385b11f55b Initial plan 2026-03-11 23:18:26 +00:00
Lev Nachmanson
8e47c0d842 Fixed the assertion violation in mpz.cpp:602 when running with -tr:arith.
**Root cause**: `vector::resize(SZ s, Args args...)` in `src/util/vector.h` took `args` by value and used `std::forward<Args>(args)` in a loop. The first iteration moved from `args`, leaving all subsequent elements with a moved-from state (`rational{0/0}` instead of
`rational{0/1}`). This corrupted the coefficient vector in the pretty printer, causing a division-by-zero assertion when multiplying.

**Fix**: Changed `resize` to take `Args const& args` and copy-construct each element instead of forwarding/moving.
2026-03-11 12:43:59 -10:00
Angelica Moreira
4e0a41252a
Merge branch 'Z3Prover:master' into z3-skill-exploration 2026-03-11 15:08:12 -07:00
Angelica Moreira
14276fb193 ignore .z3-agent runtime directory 2026-03-11 22:04:15 +00:00
Angelica Moreira
ed8f3ac438 add agent readme with usage examples 2026-03-11 21:53:37 +00:00
Angelica Moreira
90a4cdf855 update skills readme to match current state 2026-03-11 21:53:32 +00:00
Angelica Moreira
ed5b1929f1 add dependency checks to memory-safety and static-analysis 2026-03-11 21:53:27 +00:00
Angelica Moreira
d74f610264 merge z3-solver and z3-verifier into single z3 agent 2026-03-11 21:53:21 +00:00
Angelica Moreira
8eb35b3c46 remove deeptest skill (handled by external agent) 2026-03-11 21:53:16 +00:00
Angelica Moreira
621638abb9 run black and ruff on all skill scripts 2026-03-11 21:53:10 +00:00
Angelica Moreira
9d674404c8 Add action/expectation/result structure to all skill definitions
Each step in every SKILL.md now carries labeled Action, Expectation,
and Result blocks so the agent can mechanically execute, verify, and
branch at each stage. Format chosen after comparing three variants
(indented blocks, inline keywords, tables) on a prove-validity
simulation; indented blocks scored highest on routing completeness
and checkability.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-11 19:51:59 +00:00
Angelica Moreira
d349b93d1d Add Copilot skill architecture with 10 skills, 2 agents, and shared infra
Introduce .github/skills/ with solve, prove, optimize, simplify,
encode, explain, benchmark, memory-safety, static-analysis, and
deeptest skills. Each skill follows a SKILL.md + scripts/ pattern
with Python scripts backed by a shared SQLite logging library
(z3db.py). Two orchestrator agents (z3-solver, z3-verifier) route
requests to the appropriate skills.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-11 17:41:29 +00:00
Lev Nachmanson
274d64299e Address PR review: add ENSURE checks, fix duplicate test, fix comment
- Add ENSURE(result == Z3_L_TRUE) for each BNH optimization call and
  ENSURE(num_sat == 7) at the end so CI catches regressions.
- Remove test_bnh_optimize() from tst_api() to avoid duplicate
  execution under /a; keep standalone tst_bnh_opt() entry point.
- Fix Test 2 comment: it tests same-size backup, not backup-longer.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-10 16:58:24 -10:00
Lev Nachmanson
6d890fb026 Fix NLA optimization regression and relax restore_x
- Relax restore_x() to handle backup/current size mismatches: when
  backup is shorter (new columns added), call
  move_non_basic_columns_to_bounds() to find a feasible solution.
- Fix 100x performance regression in nonlinear optimization: save LP
  optimum before check_nla and return it as bound regardless of NLA
  result, so opt_solver::check_bound() can validate via full re-solve
  with accumulated NLA lemmas.
- Refactor theory_lra::maximize() into three helpers: max_with_lp(),
  max_with_nl(), and max_result().
- Add mk_gt(theory_var, impq const&) overload for building blockers
  from saved LP optimum values.
- Add BNH multi-objective optimization test (7/7 sat in <1s vs 1/7
  in 30s before fix).
- Add restore_x test for backup size mismatch handling.

Fixes #8890

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-10 16:38:08 -10:00
Nikolaj Bjorner
235448d929
Merge pull request #8928 from Z3Prover/copilot/update-release-notes
Add Version 4.17.0 release notes from discussion #8907
2026-03-10 11:48:19 -07:00
copilot-swe-agent[bot]
175a50330b Update RELEASE_NOTES.md with additional Version 4.17.0 entries from discussion #8907
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-10 18:39:34 +00:00
copilot-swe-agent[bot]
240453e452 Initial plan 2026-03-10 18:38:06 +00:00
Nikolaj Bjorner
bb11a56a67
Merge pull request #8918 from Z3Prover/copilot/code-simplification-march-2026
Simplify conditional logic in sls_euf_plugin.cpp and extract sign condition helper in realclosure.cpp
2026-03-10 10:03:22 -07:00
copilot-swe-agent[bot]
42eee12c2f Code simplifications in sls_euf_plugin.cpp and realclosure.cpp
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-03-10 16:17:24 +00:00
copilot-swe-agent[bot]
54c692622c Initial plan 2026-03-10 16:15:09 +00:00
Nikolaj Bjorner
1009b13acd
Merge pull request #8909 from angelica-moreira/memory-safety-pipeline
fix: pass GH_TOKEN to memory safety report workflow
2026-03-09 18:58:04 -07:00
Nikolaj Bjorner
2a784c6094
Merge pull request #8910 from Z3Prover/dependabot/github_actions/actions/checkout-6
Bump actions/checkout from 4 to 6
2026-03-09 18:57:39 -07:00
Nikolaj Bjorner
0c84384d48
Merge pull request #8911 from Z3Prover/dependabot/github_actions/github/gh-aw-0.57.0
Bump github/gh-aw from 0.45.6 to 0.57.0
2026-03-09 18:57:29 -07:00
Nikolaj Bjorner
14e0492cce
Merge pull request #8912 from Z3Prover/dependabot/github_actions/actions/download-artifact-8
Bump actions/download-artifact from 4 to 8
2026-03-09 18:57:18 -07:00
Nikolaj Bjorner
9d8058be86
Merge pull request #8913 from Z3Prover/dependabot/github_actions/actions/cache-5.0.3
Bump actions/cache from 4.3.0 to 5.0.3
2026-03-09 18:57:05 -07:00
Nikolaj Bjorner
f9100f944e
Merge pull request #8914 from Z3Prover/dependabot/github_actions/actions/upload-artifact-7
Bump actions/upload-artifact from 4 to 7
2026-03-09 18:56:49 -07:00
dependabot[bot]
2f10db79b0
Bump actions/upload-artifact from 4 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:48:37 +00:00
dependabot[bot]
6805d0896d
Bump actions/cache from 4.3.0 to 5.0.3
Bumps [actions/cache](https://github.com/actions/cache) from 4.3.0 to 5.0.3.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v4.3.0...v5.0.3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: 5.0.3
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:48:06 +00:00
dependabot[bot]
d11206d3d4
Bump actions/download-artifact from 4 to 8
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:47:37 +00:00
dependabot[bot]
a53d63be85
Bump github/gh-aw from 0.45.6 to 0.57.0
Bumps [github/gh-aw](https://github.com/github/gh-aw) from 0.45.6 to 0.57.0.
- [Release notes](https://github.com/github/gh-aw/releases)
- [Commits](https://github.com/github/gh-aw/compare/v0.45.6...v0.57.0)

---
updated-dependencies:
- dependency-name: github/gh-aw
  dependency-version: 0.57.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:47:13 +00:00
dependabot[bot]
d21231fc22
Bump actions/checkout from 4 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 22:44:52 +00:00