Skip to main content
QUICK REVIEW

[论文解读] Structural Resolution for Logic Programming

Patricia Johann, Ekaterina Komendantskaya|arXiv (Cornell University)|Jun 2, 2015
Logic, programming, and type systems参考文献 14被引用 5
一句话总结

本文提出了一种三级树演算($T^{3}C$),用于形式化逻辑编程中证明搜索的三个层次树结构——项树、重写树和推导树。它提出了结构化归结(structural resolution),一种新的操作语义,系统地捕捉了逻辑编程中的无穷性、非确定性与可观测性,为即使在非终止或共归纳设定下也能实现正确且完备的推导提供了基础。

ABSTRACT

We introduce a Three Tier Tree Calculus (3TC) that defines in a systematic way three tiers of tree structures underlying proof search in logic programming. We use 3TC to define a new -- structural -- version of resolution for logic programming.

研究动机与目标

  • 为解决传统 SLD 归结在处理非终止和共归纳逻辑程序时的局限性。
  • 形式化一种系统性操作语义,反映无穷结构与非确定性证明搜索策略。
  • 提供一种构造性、可观测的证明搜索方法,支持逻辑编程中的归纳与共归纳推理。
  • 通过通过结构化树转换建模证明搜索,弥合声明语义(如 Herbrand 模型)与操作行为之间的差距。
  • 为逻辑编程中的类型理论类比奠定基础,类似于交互式定理证明中使用的模式匹配与依赖类型。

提出的方法

  • 引入三级树演算($T^{3}C$),包含三个层次:项树(语法项)、重写树(匹配转换)和推导树(基于合一的转换)。
  • 通过操作 $\mathsf{Trans}(P, T, X) = T_X$ 定义树转换,建模重写树在与子句归结时的演化过程。
  • 使用重写树 $\mathsf{rew}(P, C, \sigma)$ 表示证明搜索的中间状态,参数化于子句 $C$ 和替换 $\sigma$。
  • 将推导树 $\mathsf{der}(P, C)$ 构造为从索引到重写树的函数,捕捉推导中所有可能的合一路径。
  • 采用分层树结构追踪证明搜索:项树(输入)、重写树(匹配)、推导树(合一序列)。
  • 提出 S-推导——一系列树转换——作为推导的新形式,通过显式建模结构与操作行为,推广了 SLD 归结。

实验结果

研究问题

  • RQ1如何发展一种形式化操作语义,以捕捉逻辑编程证明搜索中的无穷性与非确定性?
  • RQ2能否构建一种基于树的演算,系统地建模逻辑程序推导所依赖的三个层次结构?
  • RQ3如何使结构化归结相对于逻辑程序的归纳与共归纳语义均保持正确性与完备性?
  • RQ4结构化归结与现有操作方法(如 SLD 归结与共归纳逻辑编程)之间存在何种关系?
  • RQ5$T^{3}C$ 框架能否支持对共归纳逻辑程序中可生产性与有界性的半可判定检查,类似于交互式定理证明中的机制?

主要发现

  • 三级树演算($T^{3}C$)为逻辑程序证明搜索提供了形式化、分层的框架,涵盖三个层次:项树、重写树与推导树。
  • 基于 $T^{3}C$ 的结构化归结提供了一种新的操作语义,支持归纳与共归纳推理,克服了 SLD 归结在非终止情况下的局限性。
  • 该框架能够为共归纳程序(如 $P_2$)构建无限推导树,即使在 CoLP 因缺乏可合一环而失败时,也能生成如 $\mathtt{from(0,[0,[s(0),\ldots]])}$ 这类无限项。
  • S-推导相对于声明语义被证明是正确且完备的,目前正在进行共归纳正确性的形式化证明。
  • 该方法通过在推导树中追踪所有合一序列,支持归纳与共归纳的混合推理,避免了 CoLP 在环检测上的局限性。
  • 该方法为逻辑编程与类型理论、交互式定理证明之间的概念与形式化联系提供了基础,尤其体现在结构化模式匹配与可观测性原理方面。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。