31 lines
717 B
Text
31 lines
717 B
Text
inductive List (T : Type*) : Type* | nil {} : List | cons : T → List → List
|
|
|
|
namespace explicit
|
|
|
|
inductive {u₁ u₂} ftree (A : Type u₁) (B : Type u₂) : Type (max 1 u₁ u₂)
|
|
| leafa : A → ftree
|
|
| leafb : B → ftree
|
|
| node : (A → ftree) → (B → ftree) → ftree
|
|
|
|
end explicit
|
|
|
|
namespace implicit
|
|
|
|
inductive ftree (A : Type) (B : Type) : Type
|
|
| leafa : ftree
|
|
| node : (A → B → ftree) → (B → ftree) → ftree
|
|
|
|
set_option pp.universes true
|
|
check ftree
|
|
end implicit
|
|
|
|
|
|
namespace implicit2
|
|
|
|
inductive ftree (A : Type) (B : Type) : Type
|
|
| leafa : A → ftree
|
|
| leafb : B → ftree
|
|
| node : (List A → ftree) → (B → ftree) → ftree
|
|
set_option pp.universes true
|
|
check ftree
|
|
end implicit2
|