[论文解读] Antichain with SAT and Tries
本文提出 Qzy,一种用于正则语言成员关系的 SMT 求解器,采用布尔有限自动机(BFA)与 IC3 模型检测算法,高效求解涉及多个字符串变量、正则表达式及复杂操作(如补集与交集)的可满足性问题。通过将 BFA 编码为 IC3 的转移系统,该方法避免了 NFA 确定化带来的指数级膨胀,尤其在差异与交集问题上,于困难基准测试中表现出优越性能。
Even the fastest SMT solvers have performance problems with regular expressions from real programs. Because these performance issues often arise from the problem representation (e.g. non-deterministic finite automata get determinized and regular expressions get unrolled), we revisit Boolean finite automata, which allow for the direct and natural representation of any Boolean combination of regular languages. By applying the IC3 model checking algorithm to Boolean finite automata, not only can we efficiently answer emptiness and universality problems, but through an extension, we can decide satisfiability of multiple variable string membership problems. We demonstrate the resulting system's effectiveness on a number of popular benchmarks and regular expressions.
研究动机与目标
- 为解决 SMT 求解器在正则表达式成员关系验证中的性能瓶颈,避免 NFA 确定化与补集操作的开销。
- 支持多个字符串变量及复杂正则表达式构造(如断言、字边界、大小写不敏感)的高效可满足性检查。
- 证明基于 IC3 的模型检测在布尔有限自动机上可超越传统基于自动机与 SMT 的求解器,在困难基准测试中表现更优。
- 通过 BFA 提供布尔正则语言组合的紧凑、惰性表示,避免状态空间的指数级膨胀。
提出的方法
- 将正则表达式表示为布尔有限自动机(BFA),其原生支持补集与交集操作,且无状态爆炸问题。
- 将 BFA 编码为具有布尔状态与符号向量的有限状态转移系统,以直接使用硬件模型检测器。
- 应用 IC3 算法验证对应于 BFA 空性与可满足性的安全性质。
- 通过在 ε 转移上使用反演图,将有历史限制的转移谓词(如字边界、断言)扩展编码至框架中。
- 通过扩展转移系统以支持可变长度输入与并行状态演化,实现对多个独立字符串变量的支持。
- 利用 IC3 的引理学习机制高效剪枝搜索空间,避免昂贵的 NFA 确定化操作。
实验结果
研究问题
- RQ1布尔有限自动机(BFA)是否能比 NFA 更紧凑地表示复杂正则表达式约束,尤其在补集与交集操作中?
- RQ2IC3 模型检测算法能否高效求解 BFA 的空性与可满足性问题,避免 NFA 确定化带来的指数级膨胀?
- RQ3基于 BFA 的 SMT 求解器在涉及复杂正则表达式与多变量的基准测试中,与现有求解器(如 DPRLE、Norn、CVC4、Z3-Str2)相比性能如何?
- RQ4有历史限制的谓词(如断言、字边界)的编码能否高效集成到 BFA-IC3 框架中?
- RQ5基于 IC3 的方法在硬问题(尤其是差异与交集问题)上是否比依赖 NFA 转换的求解器具有更好的可扩展性?
主要发现
- 在 RegExLib 的最困难基准测试中,Qzy 在差异与交集问题上全面超越其他所有求解器,后者在这些问题上失败或超时。
- 在交集问题上,Qzy 保持近二次方性能扩展,而其他求解器表现出指数级增长,表明其在困难实例上的鲁棒性。
- Qzy 通过广义符号自动机编码,成功处理复杂正则表达式特性,包括字边界、断言、Unicode 与大小写不敏感。
- 基于 IC3 的 BFA 方法避免了 NFA 确定化的指数级开销,即使在理论上困难的问题上也能实现快速证明。
- Qzy 的性能归因于清晰的模型检测编码与 IC3 中有效的引理学习机制,可在无预处理开销的前提下显著减少搜索空间。
- 在参数化基准测试中,Qzy 展现出高效可扩展性,运行时间随问题复杂度增加仅适度增长,而其他求解器则表现出指数行为。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。