跳到正文
arXiv cs.AI· Johannes K. Fichte, Stefan Szeider·· 13 小时前AI 评分18

count-catcher:将模型计数证书转化为 Lean 定理

count-catcher: Lean Theorems from Model Counting Certificates

AI 导读

count-catcher 能把精确模型计数器 d4 生成的 CPOG 计数证书转成 Lean 定理,证明某个 CNF 公式在 V 个变量上恰有 N 个模型。它借助 Lean 标准库的 LRAT 检查器完成正向检查,反向检查与电路有效性检查均为 Lean 中经证明正确的计算,三项检查耗时约为 CPOG 已验证检查器的四分之一。

正文 · 原文

View PDF HTML (experimental)

Abstract:We present count-catcher, a tool that turns a CPOG certificate of a count by the exact model counter d4 into a Lean theorem that a CNF formula defined in Lean has exactly N models over V variables. With an encoding lemma, this theorem becomes a theorem about the number of combinatorial objects. A CPOG certificate consists of a Boolean circuit equivalent to the formula and a proof of equivalence. count-catcher checks in Lean that the formula implies the circuit (forward check) and the circuit implies the formula (reverse check). For the forward check, lrat-catcher streams a refutation through the LRAT checker of Lean's standard library. The reverse check and the validity check of the circuit are computations proved correct in Lean. Lean runs all three checks as compiled code, so the theorem depends on Lean's kernel, compiler and runtime, as does CPOG's verified checker. We combine the theorem with results from Mathlib, for instance with Burnside's lemma to count graphs up to isomorphism. We prove the number of Latin squares of order 8 as a weighted sum of hundreds of certified counts from about eight terabytes of certificates. We turn about half of the 2022 Model Counting Competition formulas into theorems, with the three checks taking about a quarter of the time of CPOG's verified checker. We found that CPOG's unverified checker reported wrong counts, and removed its verified checker's dependence on two unproved lemmas. End to end, a theorem costs about the same as a checked count.
Subjects: Logic in Computer Science (cs.LO); Artificial Intelligence (cs.AI)
Cite as: arXiv:2610.36196 [cs.LO]
  (or arXiv:2610.36196v1 [cs.LO] for this version)
  https://doi.org/10.48550/arXiv.2610.36196

arXiv-issued DOI via DataCite (pending registration)

Submission history

From: Johannes Klaus Fichte [view email]
[v1] Mon, 26 Oct 2026 19:34:36 UTC (55 KB)

来源:arXiv cs.AI · arxiv.org