import Int. print let b := true, a : Int := b in a variable vector : Type -> Nat -> Type variable const {A : Type} (n : Nat) (a : A) : vector A n check let a := 10, v1 := const a true, v2 := v1 in v2 print let a := 10, v1 : vector Bool a := const a true, v2 : vector Bool a := v1 in v2 check let a := 10, v1 : vector Bool a := const a true, v2 : vector Bool a := v1 in v2 check let a := 10, v1 : vector Bool a := const a true, v2 : vector Int a := v1 in v2 variable foo : (vector Bool 10) -> (vector Int 10) coercion foo check let a := 10, v1 : vector Bool a := const a true, v2 : vector Int a := v1 in v2 set_option pp::coercion true print let a := 10, v1 : vector Bool a := const a true, v2 : vector Int a := v1 in v2