inductive Bla : Type u where | nil : Bla | cons : (α : Type u) → (a : α) → Bla → Bla -- Error inductive Foo : Type where | leaf | mk (α : Type) (a : α) -- Error | mk₂ inductive Foo' : Type u where | leaf | mk : Sort (max u v) → a → Foo' -- Error | mk₂ inductive Boo : Type u where | nil : Boo | cons : (α : Sort u) → (a : α) → Boo → Boo namespace Ex1 inductive Member : α → List α → Type u | head : Member a (a::as) | tail : Member a bs → Member a (b::bs) #check Member.head end Ex1 namespace Ex2 inductive Member : α → List α → Type | head : Member a (a::as) | tail : Member a bs → Member a (b::bs) end Ex2 namespace Ex3 inductive Member : α → List α → Type (max u v) | head : Member a (a::as) -- Error | tail : Member a bs → Member a (b::bs) end Ex3 namespace Ex4 inductive Member : α → List α → Type (u+1) | head : Member a (a::as) -- Error | tail : Member a bs → Member a (b::bs) end Ex4 namespace Ex5 inductive Member : α → List α → Type 1 | head : Member a (a::as) -- Error | tail : Member a bs → Member a (b::bs) end Ex5