(* Decidability laws for lists *)

Instance list_eq_dec X :  
  eq_dec X -> eq_dec (list X).Instance list_in_dec (X : Type) (x : X) (A : list X) :  
  eq_dec X -> dec (x el A).

(* Specifications: *)
Lemma list_sigma_forall X A (p : X -> Prop) (p_dec : forall x, dec (p x)) : {x | x el A /\ p x} + {forall x, x el A -> ~ p x}.