Section EqDec.
Variable T : Type.
Variable EqDec_T : EquivDec.EqDec _ (@eq T).
Global Instance EqDec_list : EquivDec.EqDec _ (@eq (list T)).
End EqDec.

Lemma list_rev_ind
: forall T (P : list T -> Prop),
P nil ->
(forall l ls, P ls -> P (ls ++ l :: nil)) ->
forall ls, P ls.