The logic of bunched implications (BI) is a substructural logic that forms the backbone of separation logic, the much studied logic for reasoning about heap-manipulating programs. Although the proof theory and metatheory of BI are mathematically involved, the formalization of important metatheoretical results is still incipient. In this paper we present a self-contained formalized, in the Coq proof assistant, proof of a central metatheoretical property of BI: cut elimination for its sequent calculus. The presented proof is *semantic*, in the sense that is obtained by interpreting sequents in a particular "universal" model. This results in a more modular and elegant proof than a standard Gentzen-style cut elimination argument, which can be subtle and error-prone in manual proofs for BI. In particular, our semantic approach avoids unnecessary inversions on proof derivations, or the uses of cut reductions and the multi-cut rule. Besides modular, our approach is also robust: we demonstrate how our method scales, with minor modifications, to (i) an extension of BI with an arbitrary set of \emph{simple structural rules}, and (ii) an extension with an S4-like $\Box$ modality.
翻译:集中影响的逻辑( BI) 是构成分离逻辑支柱的亚结构逻辑, 是大量研究的关于堆肥管理程序推理逻辑的逻辑。 虽然 BI 的校对理论和元理论在数学上涉及, 但重要元理论结果的正规化仍然处于初始阶段。 在本文中, 我们用Coq 校对助理提出了一个自成一体的正式证明, 证明 BI 的核心元理论属性: 切除其序列微积分。 提供的证据是 semantitic *, 也就是通过解释特定“ 普遍” 模型中的序列获得的 。 这导致比标准的 Gentzen 式切除论更模块化和优雅的证明。 在为 BI 提供的手动证明中, 可能是微妙和容易出错的。 特别是, 我们的语义学方法避免了对证据衍生的不必要翻版, 或对裁量和多轨规则的使用。 除了模块外, 我们的方法也很稳健: 我们展示我们的方法尺度, 稍作修改后, 将B 4 规则扩展至 (i) 的( b) a simply) a rual slate) a rual slational slate slations (i) (i) (i) (i) (i) (i) (i) (i) (i) sem) (i) (i) (i) (i) (i) (i) (i) axxxxxxx) (prild) (prild) (x) (xxxxxxxxxxx) (x) (x) (x) (s) (x) (xxxxx) (s) (s) (rx) (x) (xxxxxxxxxxx) (xxxx) (s) (xx) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (x) (