Z3 是一个定理证明器,判定一阶逻辑公式的可满足性,是由微软开发的目前应用最为广泛且最强大的SMT求解工具,作为一个开源软件,可以自行编译,也可以下载可执行版本来使用。
SMT求解器使用的标准格式:SMT-LIB,类似于LISP语法,便于工具对模型进行序列化和反序列化。Z3支持SMT-LIB2格式中的所有主要理。
使用VSCode编辑器配合Z3可执行编辑器,VSCode有smt-lib-syntax.smt2插件可对SMT-LIB格式的文件进行语法高亮。
安装流程:
-
下载并安装python,链接:https://www.python.org/
-
下载Z3可执行二进制版本,链接:Releases · Z3Prover/z3 (github.com),找到windows版本并下载。
-
下载后将安装包进行解压缩
- 配置环境变量
· 将bin文件夹的目录配置到用户变量的path路径中
· 新建一个PYTHONPATH环境变量,将python的文件夹目录复制过去。
- 打开python IDLE,验证Z3安装成功
import z3
dir(z3)
- 使用VSCode配合插件编辑
可使用编辑器编写SMT-LIB格式的smt2文件,调用z3进行编译
- 在终端中编译运行
PS : Z3在线工具