[论文解读] AllSAT for Combinational Circuits
本文提出了反向门可分解单调电路(BDMCs),这是一种新的知识编译语言,通过使用基类 C 的 CNF 编码作为叶子节点,对 DNNFs 和反向门树进行了推广。其主要贡献在于证明了 PC-BDMCs(其中 C 是传播完备(PC)编码类)与 PC 编码多项式等价,从而在保持高效查询回答与操作能力的同时,相较于 DNNFs 和广义 PC 反向门树具有更高的紧凑性。
Motivated by the need to improve the scalability of Intel’s in-house Static Timing Analysis (STA) tool, we consider the problem of enumerating all the solutions of a single-output combinational Boolean circuit, called AllSAT-CT. While AllSAT-CT is immediately reducible to enumerating the solutions of a Boolean formula in Conjunctive Normal Form (AllSAT-CNF), our experiments had shown that such a reduction, followed by applying state-of-the-art AllSAT-CNF tools, does not scale well on neither our industrial AllSAT-CT instances nor generic circuits, both when the user requires the solutions to be disjoint or when they can be non-disjoint. We focused on understanding the reasons for this phenomenon for the well-known iterative blocking family of AllSAT-CNF algorithms. We realized that existing blocking AllSAT-CNF algorithms fail to generalize efficiently for AllSAT-CT, since they are restricted to Boolean logic. Consequently, we introduce three dedicated AllSAT-CT algorithms that are ternary-logic-aware: a ternary simulation-based algorithm TALE, a dual-rail&MaxSAT-based algorithm MARS, and their combination. Specifically, we introduce in MARS two novel blocking clause generation approaches for the disjoint and non-disjoint cases. We implemented our algorithms in our new tool HALL. We show that HALL scales substantially better than any reduction to existing AllSAT-CNF tools on our industrial STA instances as well as on publicly available families of combinational circuits for both the disjoint and the non-disjoint cases.
研究动机与目标
- 通过使用来自基类 C 的 CNF 编码作为叶子节点,构建一个统一框架,以推广现有的知识编译语言(如 DNNFs 和反向门树)。
- 定义并形式化参数化于 CNF 编码基类 C 的反向门可分解单调电路(BDMCs)。
- 证明 PC-BDMCs 与 PC 编码多项式等价,确保在查询回答与变换方面具有等效的效率。
- 证明 PC 编码的析取语言与 PC 编码语言多项式等价,扩展了针对 URC 和 CC 编码的先前结果。
- 建立 PC-BDMCs 在紧凑性上严格优于 DNNFs 和广义 PC 反向门树,从而提升表示效率。
提出的方法
- 将 C-BDMCs 定义为具有可分解性与光滑性的单调电路,其叶子节点为来自基类 C 的 CNF 编码。
- 引入 CNF 编码的传播完备性(PC)概念,确保单位传播能保持完全一致性并推导出所有隐含文字。
- 通过引入辅助变量并精心设计子句,将 PC-BDMC 句子转换为单个 PC 编码。
- 使用变量 z 和 v 的分层构造,编码子电路之间的依赖关系,并确保传播完备性。
- 证明:在最终公式中,任何在单位传播下封闭的部分赋值均可扩展以满足尚未推导出的任何文字,从而确立传播完备性。
- 利用 Bova 等人(2014, 2016)的结果,证明 PC-BDMCs 严格优于 DNNFs。
实验结果
研究问题
- RQ1能否定义一种通用的编译语言,统一 DNNFs、反向门树与具备强传播性质的 CNF 编码?
- RQ2PC 编码的析取语言是否与 PC 编码语言多项式等价,如同 URC 和 CC 编码所展示的那样?
- RQ3能否构建 PC-BDMCs,使其与 PC 编码多项式等价,同时保留知识编译映射中的所有高效操作?
- RQ4PC-BDMCs 的紧凑性相较于 DNNFs 和广义 PC 反向门树如何?
- RQ5从 CNF 到 PC-BDMC 的编译过程是否可能比直接编译为 PC 编码更高效,例如在基编码(如素数 2-CNF 或可重命名的霍恩公式)处停止?
主要发现
- PC-BDMCs 与 PC 编码多项式等价,意味着 PC 编码中所有高效的查询与变换操作在 PC-BDMCs 中同样可用。
- PC 编码的析取语言与 PC 编码语言多项式等价,推广了针对 URC 和 CC 编码的先前结果。
- 根据 Bova 等人(2014, 2016)的结果,PC-BDMCs 严格优于 DNNFs,原因在于其能够紧凑地表示复杂约束。
- PC-BDMCs 严格优于广义 PC 反向门树,后者是 PC-BDMCs 的一个特例(具有出树形结构)。
- 从 PC-BDMC 构造 PC 编码的过程保持了传播完备性,确保单位传播能正确检测一致性并推导出所有隐含文字。
- 从 PC-BDMC 到 PC 编码的转换是有效的,并且保持了知识编译所需的全部语义与句法属性。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。