Martin-Löf类型理论使用W类型来定义归纳结构,例如整数,列表等。但是,归纳结构的演算并不以相同的方式使用它们,归纳类型似乎更像是公理模式。
这两种方法是否等效(它们似乎是)?为什么有一个哲学之所以比一个更好的原因(对我来说,W型感觉更直观,因为W只是特殊结构的树)?从实现的角度来看,这更容易(归纳类型对我来说似乎更好,因为对于W类型有用,我们至少需要有限的类型和产品才能在系统核心中使用)
Martin-Löf类型理论使用W类型来定义归纳结构,例如整数,列表等。但是,归纳结构的演算并不以相同的方式使用它们,归纳类型似乎更像是公理模式。
这两种方法是否等效(它们似乎是)?为什么有一个哲学之所以比一个更好的原因(对我来说,W型感觉更直观,因为W只是特殊结构的树)?从实现的角度来看,这更容易(归纳类型对我来说似乎更好,因为对于W类型有用,我们至少需要有限的类型和产品才能在系统核心中使用)
Answers:
(我假设通过“公理模式”,您已经想到了Gimenez的工作)
从广义上讲,W型和Gimenez的公理模式是等效的。
但是,在内涵设置中,W类型不会走得太远:它们过于扩展(根据编码的定义),不适合编程。一些作者对此进行了讨论,尤其是: