(*****************)
(** ** Remove    *)
(*****************)
Fixpoint remove (x : A) (l : list A) : list A :=
match l with
| [] => []
| y::tl => if (eq_dec x y) then remove x tl else y :: remove x tl
end.

Lemma in_in_remove : forall l x y, x <> y -> In x l -> In x (remove y l).