intros.
red in |- *; red in H; intro; generalize (H i); clear H; intro.
inversion_clear H.
left.
inversion_clear H0.
inversion_clear H.
exists x0.
exists x.
apply Sym; auto with algebra.
right.
inversion_clear H0; split; trivial.
Qed.
Hint Immediate seq_equal_symm: algebra.

Lemma seq_equal_trans :
forall (A : Setoid) (n m l : Nat) (v : seq n A) (w : seq m A) (u : seq l A),
seq_equal v w -> seq_equal w u -> seq_equal v u.