LEAN 类型理论之注解(Annotations of LEAN Type Theory)-- 可达类型(Accessibility Type)

        可达类型(Accessibility Type)表达了,对于一个定义在某一类型α关系 r,类型α 中的元素a 的可达性(Accessibility),即其它元素,能通过该关系r,直接或间接地接触到元素 a。 如果,类型里的每个元素都是关系 r 可达的(Accessible),那么该关系则是正确定义的(Well-founded)。

        其定义为

072092407b2245419ede97a3d72f8e41.png

        即,给定 类型α 与 关系 r: α → α → ℙ,有可达类型(Accessibility Type)

accᵣ: α → ℙ

        即,给定一个类型α的元素a,判断该元素a 的可达性(Accessibility)。

        其构建函数

intro: ∀x:α.(∀y:α.ryx → Ay) → Ax

        即,表达了,类型 α 中的任一元素 a,具备可达性(Accessibility)的充分条件,是,所有 与元素 a 满足关系 r 的 元素都具备可达性。那么,如果不存在跟元素 a 有关系 r 的元素,元素 a 即 可达。

        如果,类型里的每个元素都是关系r可达的(Accessible),那么该关系则是正确定义的(Well-founded)。

        LEAN 语言定义:

inductive Acc {α : Sort u} (r : α → α → Prop) : α → Prop where
  | intro (x : α) (h : (y : α) → r y x → Acc r y) : Acc r x

        另外,因可达类型的构建函数的非递归参数只出现在其目标类型中,所以,可达类型的使用函数是 Large Elimination,即其使用函数的目标类型(Target Type)可以指向任意类型宇宙(Universes)。

        给定下图的可达性类型(其中,关系 r 由 < 表示):

9e22961d98cd4717950d9d6274ab991a.png

有(inv, short for inverse, the inverse function of intro):

        

5ad6a00dac664c5d9e942cd79f8a5843.png

invₓ : acc x → ∀y:α. ( y < x → acc y)

acc x : ℙ

即,给定了 类型为 acc x 的值 a,亦 a 为 acc x (x 在关系 < 上 是可达的) 的证明,那么,有 对于任意元素y,只要存在 y < x 的关系,y 也是可达的。

        也就是,给了 acc x 的证明,可以提取出其论据,(∀y:α. y < x → acc y)。        

其中,对于 可达性类型 acc 的使用规则,rec,有:

        1. 动机函数(Motive): C :=  λz:α. (y<z → acc y)

                实际上 C 应该作用于 acc x 的值,由于 acc x : ℙ,由此其值为其证明,又因在LEAN类型理论中,证明不区分性(proof irrelevance),是其值除了证明 acc x 外,并不包含任何信息,所以,有

C := (λ u: Unit -> λz:α. (y<z → acc y) ) unit ≡ λz:α. (y<z → acc y)

        2. 次要函数组(minors)(因只有一个构建函数): 

 (λz:α. λh:(∀w.w<z → acc w). λ_. h y) x

                其中有:

                        构建函数的输入参数:λz:α. λh:(∀w.w<z → acc w).

                        前值、前果:λ_.

                        函数体:h y

                另,x 为 acc x 中的 x,表示类型α中元素x,是可达的(accessible)。

        3. 作用对象(major):a,acc x : ℙ 的证明(proof)

然后对比,acc x 构建函数 intro 的输入类型,及 invₓ 的输出类型:

74322904c58a457585043a30e74c25b7.png

63ec2c33b83c47efa922edb5b39d0ffd.png

因证明不区分性(proof irrelevance),有:

e9d7dbfc04f344458e011ac0b2c6ae0b.png

即,当有了 a 作用 acc x的证明时,可以得出 acc x的论据,从而用以证明 acc x。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

KeithTsui

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值