LEAN 赋型唯一性(Unique Typing)之 证明过程简介

         LEAN论文在证明赋型唯一性(Unique Typing )时,引入了 n-provability 的概念,通过证明在 n-provability 情况下的赋型唯一性,来证明系统的 赋型唯一性。同时,在证明在 n-provability 情况下的赋型唯一性时,引入了 κ 简化(κ reduction)的概念,以及 Church-Rosser 推论(Church-Rosser theorem)。

        其证明过程如下引用所示:

       其中,

        最终要证明的是:

        需要通过对表达式e 计算(Computation / Normalization)过程中的,赋型规则与定义上相等规则的切换次序作为归纳步骤(Inductive Step),进行归纳证明(Induction on the number of alternatives between the judgments Γ ⊢ e:α and Γ ⊢ α ≡ β )。

        这是因为,表达式e 的计算过程中,e 的表达式形态变换是根据定义上相等规则进行的,其对应的类型形态也随之根据对应的定义上相等规则来变换,同时对形变后的e根据赋型规则进行赋型。

        这样,赋型规则与定义上相等规则的切换使用就覆盖整个表达式 e 的计算过程。由此,证明了,e 的计算过程中,其类型的变换都是定义上相等的,即赋型唯一性(Unique Typing)。

        此时,赋型唯一性就可以说成,如果 表达式 e 经过多次形变后,有 Γ ⊢ₙ e:α 和 Γ ⊢ₙ e:β,那么,最终两个类型,α 和 β,在定义上相等(Defintional Equal),记 Γ ⊢ₙ₊₁ α ≡ β。此时,LEAN中需要给定 n-provability  ⊢ₙ 是 定义上反向的(Definitional Inversion)。这是,因为 在证明唯一性的过程,使用的定义上相等规则需要保持其唯一性,即 前提有结论 的同时,结论有前提,也就是说,只存在唯一的规则,能得出该结论。从而使得整个类型系统的运作,其赋型的唯一性。

        定义上反向(Definitional Inversion)为:

        然后通过证明,第0步和第 n+1步的定义上反向的,从而归纳证明整个 n-provability  ⊢ₙ 是 定义上反向的(Definitional Inversion),即整个表达式e 的形变过程中,特定的定义上相等的规则,是定义上反向的(Definitional Inversion)。

        在证明 第 n+1步的定义上反向时,需要表达式 e 形变的过程,只使用了 K 简化规则(K Reduction),即 β δ ζ ι 简化。

        同时,要有,当表达式 e 在形变的过程中,有不同路径进行,最终会形变成同一个定义上相等的表达式。


       

到此,上述就是,LEAN给出的赋型唯一性的证明步骤。其中,详细的证明过程可查看原文。后面,会有相关文章对上述引入的概念及相关证明,进行梳理及注解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值