simple induction n.
intros A v m.
case m.
intros.
apply Trans with (head v;; empty_seq A); auto with algebra.
intros.
inversion H.
inversion H1.
intros.
apply Trans with (head v;; omit (Seqtl v) (Build_finiteT (lt_S_n _ _ HS)));
auto with algebra.
change
(head v;; omit (Seqtl v) (Build_finiteT (lt_S_n m (S (S n0)) HS)) ='
head v;; omit (Seqtl v) (Build_finiteT H0) in seq (S (S n0)) A)
in |- *.
apply cons_comp; auto with algebra.
Qed.
Hint Resolve omit_tlelt: algebra.
(** - The above also holds for seqs of length (S n), but since the types become non-convertible then, we have to do a cast_seq or use seq_equal. *)

(* Specifications: *)
Lemma omit_tlelt' :
forall (n : Nat) (A : Setoid) (v : seq (S n) A) (m : Nat)
(HS : S m < S n) (H : m < n) (Heq : S (pred n) = n),
omit v (Build_finiteT HS) ='
cast_seq (head v;; omit (Seqtl v) (Build_finiteT H)) Heq in _.