Polymorphism 出乎意料的宇宙水平

Polymorphism 出乎意料的宇宙水平,polymorphism,agda,Polymorphism,Agda,这里的定义与Data.List中的定义类似。All: open import Data.Vec data All {α π} {A : Set α} (P : A -> Set π) : ∀ {n} -> Vec A n -> Set π where []ₐ : All P [] _∷ₐ_ : ∀ {n x} {xs : Vec A n} -> P x -> All P xs -> All P (x ∷ xs) 为什么All位于Setπ Agda

这里的定义与
Data.List中的定义类似。All

open import Data.Vec

data All {α π} {A : Set α} (P : A -> Set π) : ∀ {n} -> Vec A n -> Set π where
  []ₐ  : All P []
  _∷ₐ_ : ∀ {n x} {xs : Vec A n} -> P x -> All P xs -> All P (x ∷ xs)
为什么
All
位于
Setπ


Agda 2.4.3版。

Agda 2.4.2.4和Agda 2.4.2.5(维护分支)在
所有
都位于
集合π
时报告预期错误,但Agda 2.4.3(主分支)接受该错误


请在中报告此问题。

这实际上是宇宙检查之前强制发生的结果。”x'不需要存储在构造函数中,所以它不计入宇宙级别。所以这不是一个bug@Saizan,你能给出一些实际的规则或指向一篇描述它们的论文吗?Edwin Brady的论文描述了强迫,我不认为有关于这如何影响宇宙的文章