Notation "n .-tuple" := (tuple_of n)
  (at level 2, format "n .-tuple") : type_scope.Notation "[ 'tnth' t i ]" := (tnth t (@Ordinal (tsize t) i (erefl true)))
  (at level 0, t, i at level 8, format "[ 'tnth'  t  i ]") : form_scope.Definition in_tuple (s : seq T) := Tuple (eqxx (size s)).

Lemma tcastE m n (eq_mn : m = n) t i : tnth (tcast eq_mn t) i = tnth t (cast_ord (esym eq_mn) i).