lean2/tests/lean/ftree.lean
Leonardo de Moura 5312afa7ec feat(frontends/lean/inductive_cmd): improve resulting universe level inference for inductive datatypes
The new test contains examples that required explicit levels.
2014-11-12 10:52:32 -08:00

31 lines
682 B
Text

import data.list
namespace explicit
inductive ftree.{l₁ l₂} (A : Type.{l₁}) (B : Type.{l₂}) : Type.{max 1 l₁ l₂} :=
leafa : A → ftree A B,
leafb : B → ftree A B,
node : (A → ftree A B) → (B → ftree A B) → ftree A B
end explicit
namespace implicit
inductive ftree (A : Type) (B : Type) : Type :=
leafa : ftree A B,
node : (A → B → ftree A B) → (B → ftree A B) → ftree A B
set_option pp.universes true
check ftree
end implicit
namespace implicit2
inductive ftree (A : Type) (B : Type) : Type :=
leafa : A → ftree A B,
leafb : B → ftree A B,
node : (list A → ftree A B) → (B → ftree A B) → ftree A B
check ftree
end implicit2