Foundational Types
Some of Lean's types are not defined in any Lean source files (even the prelude) since they come from its foundational type theory. This page provides basic documentation for these types.
For a more in-depth explanation of Lean's type theory, refer to TPiL.
Sort u
Sort uis the type of types in Lean, and Sort u : Sort (u + 1).
Instances For
Type u
Type uis notation for Sort (u + 1).
Instances For
Prop
Propis notation for Sort 0.
Instances For
Pi types, (a : α) → β a
The type of dependent functions is known as a pi type. Non-dependent functions and implications are a special case.
Note that these can also be written with the alternative notations:
∀ a : α, β a, conventionally used whereβ a : Prop.(a : α) → β aα → γ, possible only ifβ a = γfor alla.
Lean also permits ASCII-only spellings of the three variants:
forall a : A, B a, for∀ a : α, β a(a : A) -> B a, for(a : α) → β aA -> B, forα → β
Note that despite not itself being a function, (→)is available as infix notation for
fun α β, α → β.