macOS
brew install z3provider-native install command
安装
brew install z3provider-native install command
概览
High-performance theorem prover
历史
Z3 is Microsoft Research's SMT solver and theorem prover, used to check satisfiability of logical formulas over theories such as arithmetic, bit-vectors, arrays, datatypes, uninterpreted functions, and quantifiers. It is both a command-line solver and a library with bindings across multiple programming languages.
Among package-manager projects, Z3 is unusually important: it is a research artifact, a production verification engine, a dependency for program-analysis tools, and a local CLI that users install when they need real automated reasoning rather than a web service.
Microsoft Research says work on Z3 began in 2006, motivated by program verification and dynamic symbolic execution. The 2008 TACAS paper introduced it as a freely available SMT solver from Microsoft Research for software verification and analysis applications.
Z3's early design emphasized a general interface so that other software analysis tools could embed it. The official Z3 Guide still presents it as a low-level component: best used inside other tools that map their verification or modeling problems into logical formulas.
The public GitHub repository was created in March 2015, matching the period when Z3 moved from a Microsoft Research download into a modern open-source package workflow. The repository README now documents stable and nightly binaries, CMake, Makefile, Visual Studio, Bazel, and vcpkg builds, plus language bindings for C, C++, .NET, Java, Go, OCaml, Python, Julia, WebAssembly/TypeScript/JavaScript, and other interfaces.
Z3 continued to evolve well after its initial verification focus. Microsoft Research's 2019 retrospective highlights model-based SMT techniques, SPACER and Horn-clause solving, quantifier instantiation, and applications that ranged beyond the original program-verification and symbolic-execution use cases.
The 2008 Microsoft Research publication states that Z3 was used in software verification and analysis applications. Later Microsoft Research material names the original design pressures as program verification and dynamic symbolic execution, and points to use cases such as Dafny, automatic test generation, fuzz testing, biological computation analysis, quantum-computing-related problems, Azure firewall reasoning, network verification, and smart-contract analysis.
Z3's academic adoption is unusually visible: Microsoft Research reported more than 5,000 citations since 2008 in its 2019 blog post, and its awards include the 2015 ACM SIGPLAN Programming Languages Software Award, the 2018 ETAPS Test of Time Award, the 2019 Herbrand Award for de Moura and Bjørner's theorem-proving work, and related automated-reasoning honors listed on Nikolaj Bjørner's Microsoft Research page.
Its package adoption is broad because Z3 is useful from both shells and libraries. The input facts for this enrichment run list packages across Homebrew, Debian, Ubuntu, Fedora, Arch, Nix, MacPorts, Scoop, apk, and zypper ecosystems, while the upstream README points to PyPI, npm/WebAssembly, NuGet, vcpkg, and source builds.
At the command line, users typically feed Z3 SMT-LIB2 formulas and ask for satisfiability, models, proofs, or solver diagnostics. The Z3 Guide describes SMT-LIB as a community standard with Lisp-like syntax for tool serialization, and notes that Z3 supports the main SMT-LIB2 theories.
As a library, Z3 is embedded in analyzers, compilers, configuration systems, testing tools, verification systems, model checkers, synthesis tools, and research prototypes. Bindings let programs construct formulas directly instead of writing SMT-LIB strings by hand.
For package users, installing z3 locally gives reproducible solver behavior for build/test pipelines, formal-methods coursework, theorem-proving experiments, smart-contract analyzers, symbolic execution engines, and other tools that shell out to z3 or link libz3.
Z3 is one of the canonical examples of a serious research solver that became ordinary package-manager infrastructure. It is not merely installed by specialists; it sits under higher-level tools that users may not think of as theorem provers at all.
It matters to package nerds because packaging a solver means packaging trust boundaries: binary compatibility for libz3, language bindings, SMT-LIB behavior, release cadence, and reproducible answers across platforms. A small formula can depend on solver version and build flags, so having well-maintained distro and language packages is part of the tool's scientific and engineering value.
Z3 also marks a bridge between academic automated reasoning and everyday developer automation. The same executable can appear in a research paper artifact, a CI verification job, a Python notebook, an Azure/network-analysis pipeline, or a Homebrew install on a laptop.
安全态势
narrow executable package without higher-risk signals.
绿色 风险 · 低 置信度 · appliance
在无人值守的代理使用前,请检查该工具是否读取明文凭据、写入远程状态、发布制品或调用插件。
可执行文件
| 命令 | 类型 | 暴露范围 | 备注 |
|---|---|---|---|
qprofdiff | 可执行文件 | 已索引可执行文件 | 从本地可执行文件索引发现。 |
z3 | 可执行文件 | 已索引可执行文件 | 从本地可执行文件索引发现。 |
新鲜度
这些信号区分页生成时间、软件包管理器活动和上游发布比较。只有存在证据 URL 和可比较版本时,才会提示版本落后。
安装元数据
| 软件包键 | brew:z3 |
|---|---|
| 版本 | 4.16.0 |
| 软件包管理器 | Homebrew |
| 主页 | https://github.com/Z3Prover/z3 |
| 仓库 | https://github.com/Z3Prover/z3 |
| 最后更新 | 2026-06-26T20:17:02-04:00 |
| Pulse | updated |
| Bottle | 未记录 |
| 服务 | 未声明 |
来源线索
此页面由 av-web 从 scripts/generate-pkg-sqlite.py 生成的私有软件包 SQLite 工件提供。
View the package source record on GitHub.