Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

SRI-CSL/yices2

说明与用途

**项目简介**
SRI‑CSL / yices2 是由美国国防高级研究计划局(SRI)计算科学实验室维护的开源 SMT(Satisfiability Modulo Theories)求解器,专注于高效的布尔、线性整数/实数以及非线性算术求解。它在学术界和工业原型中被广泛用于形式化验证、符号执行和约束求解等场景。

**价值**

  • **高性能**:实现了多种专用求解技术(如分层求解、冲突驱动学习),在多数基准上跑分领先。
  • **灵活 API**:提供 C、C++、Python 等语言绑定,便于在现有工具链中直接调用。
  • **活跃维护**:截至 2026‑07‑05 最近一次提交,拥有 465+ stars、64 forks,社区仍在贡献 bugfix 与新特性。

**典型接入方式**

  1. **源码编译或二进制安装**:git clone https://github.com/SRI-CSL/yices2.git && ./configure && make && sudo make install,或使用发行版提供的预编译包(如 Ubuntu 的 libyices2-dev)。
  2. **语言绑定**:在 Python 项目中 pip install yices(或通过 pybind11 手动包装),在 C/C++ 项目中直接 #include <yices.h> 并链接 -lyices2。
  3. **作为子进程调用**:对已有脚本语言(如 Bash、Make)可通过 yices-smt2 命令行工具读取/写入 SMT‑LIB2 格式文件,实现快速原型验证。

**生产可用性**

  • **成熟度**:中等(Score 56/100),适合作为内部原型或验证流水线的核心求解器。
  • **准备工作**:在正式上线前建议完成以下步骤:
  1. **阅读 README 与示例**,确认 API 与项目需求匹配。
  2. **构建小型 PoC**,验证依赖(CMake、GMP、MPFR 等)在目标平台上的兼容性。
  3. **制定维护策略**:锁定特定 tag 版本,监控 upstream 更新并评估安全补丁。
  • **风险**:文档相对简略,集成路径需自行探索;若对实时性或高并发有严格要求,需进行性能基准测试并可能进行二次封装。

总体而言,yices2 在需要高效 SMT 求解的内部工具或研究原型中价值突出,只要做好前期的依赖验证与版本管理,即可在生产环境中安全使用。

实际用途

SRI-CSL/yices2 may be useful when its README and activity match a concrete workflow.

限制与审查说明

Medium: useful for prototypes or internal workflows, with dependency and maintenance checks before production.

  • 来源: github
  • 语言: SMT
  • 记录日期: 2026-09-05T17:32:09.305Z
原始来源