Skip to main content
QUICK REVIEW

[论文解读] Unguarded Recursion on Coinductive Resumptions

Sergey Goncharov, Lutz Schröder|arXiv (Cornell University)|May 5, 2014
Logic, programming, and type systems参考文献 30被引用 4
一句话总结

本论文证明,当基础单子 $T$ 为完全 Elgot 单子时,通过共自由余代数构造扩展基础单子 $T$ 的自由操作的共归纳广义恢复变换器 $T_{\angle}$,构成一个完全 Elgot 单子。关键贡献在于证明了在此框架中可实现无保护递归,从而在保留递归等式定律的同时,消除了递归定义中对保护性的需求。

ABSTRACT

We study a model of side-effecting processes obtained by starting from a monad modelling base effects and adjoining free operations using a cofree coalgebra construction; one thus arrives at what one may think of as types of non-wellfounded side-effecting trees, generalizing the infinite resumption monad. Correspondingly, the arising monad transformer has been termed the coinductive generalized resumption transformer. Monads of this kind have received some attention in the recent literature; in particular, it has been shown that they admit guarded iteration. Here, we show that they also admit unguarded iteration, i.e. form complete Elgot monads, provided that the underlying base effect supports unguarded iteration. Moreover, we provide a universal characterization of the coinductive resumption monad transformer in terms of coproducts of complete Elgot monads.

研究动机与目标

  • 为使用共归纳恢复的非良基、带副作用的递归定义提供语义基础。
  • 消除此前仅限于保护形式的递归定义中对保护性的约束。
  • 证明共归纳广义恢复变换器 $T_{\Sigma}$ 从完全 Elgot 基础单子 $T$ 继承了完全 Elgot 单子的结构。
  • 将 $T_{\Sigma}$ 的解算子表征为由基础单子的迭代结构唯一确定。
  • 以完全 Elgot 单子的 coproduct 表达方式,建立 $T_{\Sigma}$ 的普遍性质。

提出的方法

  • 将 $T_{\Sigma}X = \nu\gamma.\, T(X + \Sigma\gamma)$ 构造为终余代数,表示非良基的带副作用过程。
  • 利用 Uustalu 关于参数化单子上保护递归的结果,推导出保护方程的解。
  • 利用 $T$ 作为完全 Elgot 单子的解算子,通过提升与扩展,构造 $T_{\Sigma}$ 的无保护解。
  • 证明 $T_{\Sigma}$ 上的解算子满足完全 Elgot 单子的标准等式定律。
  • 通过重收缩构造,证明 $T_{\Sigma}$ 结构作为 $T$ 的迭代的扩展是唯一的。
  • 使用 Coq 进行形式化验证,以确认技术结果,特别是等式定律与解的构造。

实验结果

研究问题

  • RQ1在何种条件下,可在共归纳恢复单子中无误地建模无保护递归?
  • RQ2若基础单子 $T$ 为完全 Elgot 单子,共归纳广义恢复变换器 $T_{\Sigma}$ 是否可支持无保护迭代?
  • RQ3在 $T_{\Sigma}$ 上的无保护递归解算子是否由基础单子的迭代结构唯一确定?
  • RQ4$T_{\Sigma}$ 在完全 Elgot 单子的 coproduct 表达方式下的普遍表征是什么?
  • RQ5当范畴 $\mathbf{C}$ 允许存在初始完全 Elgot 单子 $\mathbb{L}$ 时,$T_{\Sigma}$ 的结构与 $\mathbb{L}$ 有何关系?

主要发现

  • 若基础单子 $T$ 为完全 Elgot 单子,则共归纳广义恢复变换器 $T_{\Sigma}$ 为完全 Elgot 单子。
  • $T_{\Sigma}$ 上的解算子满足完全 Elgot 单子的标准等式定律,从而支持有原则的无保护递归。
  • $T_{\Sigma}$ 作为完全 Elgot 单子的结构,由 $T$ 的迭代结构唯一确定。
  • 当基础范畴 $\mathbf{C}$ 允许存在初始完全 Elgot 单子 $\mathbb{L}$ 时,在 $\mathbf{C}$ 上的完全 Elgot 单子范畴中,有 $\mathbb{T}_{\Sigma} \cong \mathbb{T} + \mathbb{L}_{\Sigma}$。
  • 无保护解的构造依赖于通过 Uustalu 的参数化单子框架,从保护方程中提升解,避免了对理想化单子的需求。
  • 结果已在 Coq 中进行形式化验证,确认了解算子与等式定律的正确性。

更好的研究,从现在开始

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

无需绑定信用卡

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