lean4-htt/tests/lean/run/coe9.lean
2016-06-10 18:29:41 -07:00

27 lines
816 B
Text

import data.nat
open nat
constant List.{l} : Type.{l} → Type.{l}
constant vector.{l} : Type.{l} → nat → Type.{l}
constant matrix.{l} : Type.{l} → nat → nat → Type.{l}
constant length : Pi {A : Type}, List A → nat
constant List_to_vec {A : Type} (l : List A) : vector A (length l)
constant to_row {A : Type} {n : nat} : vector A n → matrix A 1 n
constant to_col {A : Type} {n : nat} : vector A n → matrix A n 1
constant to_List {A : Type} {n : nat} : vector A n → List A
attribute to_row [coercion]
attribute to_col [coercion]
attribute List_to_vec [coercion]
attribute to_List [coercion]
constant f {A : Type} {n : nat} (M : matrix A n 1) : nat
constant g {A : Type} {n : nat} (M : matrix A 1 n) : nat
constant v : vector nat 10
constant l : List nat
check f v
check g v
check f l
check g l