blob: 6963027cb4a1bf7c3513e62711d7ef2f23c47fb0 [file] [edit]
inductive Vector' (α : Type u) : Nat → Type u
| nil : Vector' α 0
| cons : α → Vector' α n → Vector' α (n+1)
deriving Repr
infix:67 " :: " => Vector'.cons
def tabulate (f : Fin n → α) : Vector' α n :=
match n with
| 0 => Vector'.nil
| n+1 => f 0 :: tabulate (f ∘ Fin.succ)
#eval tabulate fun i : Fin 5 => i