为什么 Leans `Propositions 得到特殊对待?

Why do Leans `Prop`ositions get special treatment?

自从我开始阅读交互式精益教程以来,一个问题一直困扰着我:Type 中单独的 Prop 层次结构的目的是什么?

据我现在的理解,我们有以下宇宙层次结构:

Type (n+1)
  |   \
  |   Sort (n+1)
  |     |
Type n  | (?)
  |   \ |
 ...  Sort n
  |     |
Type 0 ... (?)
  |   \ |
 nat  Prop
  |     |
  0   p ∧ q
        |
     ⟨hp, hq⟩
  1. 标有 ? 的边缘是实际存在的还是我只是编造的(可能)?
  2. 从 swift 对 Agda 和 Idris 的调查来看,他们似乎没有区分 Sort nType n。为什么精益要区分它们?

Prop 的奇怪之处在于它一方面像归纳类型(例如,它是封闭的,这意味着 p ∧ nat 没有意义),但在另一方面却像一种归纳类型一样使用另一方面(例如,通过为 p 构造证明 value 来显示要居住的 type p : Prop)。我怀疑这与区别有关,但我无法表达清楚。有一些基础论文可以阅读吗?

nat-i​​ndexed universe 只有一个层次结构 Sort u。来自 Chapter 3 of Theorem Proving in Lean:

In fact, the type Prop is syntactic sugar for Sort 0, the very bottom of the type hierarchy described in the last chapter. Moreover, Type u is also just syntactic sugar for Sort (u+1).

Extended Calculus of Constructions 中引入了拥有一个谓语底层宇宙 Prop 和一个谓语层次结构 Type u 在它之上的想法。精益将 Sort 作为一个单一的广义层次结构引入,这样定义就可以覆盖所有使用 Sort u 的宇宙,而不需要为 PropType u.

单独定义

相比之下,Idris 和 Agda 中的底层宇宙并没有做任何特别的事情,因此它们对整个层次结构使用一个名称。