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

(* Specialized induction rules *)
Lemma list_ind_singleton
: forall {T : Type} (P : list T -> Prop)
(Hnil : P nil)
(Hsingle : forall t, P (t :: nil))
(Hcons : forall t u us, P (u :: us) -> P (t :: u :: us)),
forall ls, P ls.