(** * [mem] *)

Fixpoint mem (k : key) (s : t elt) {struct s} : bool :=
 match s with
  | nil => false
  | (k',_) :: l =>
     match X.compare k k' with
      | LT _ => false
      | EQ _ => true
      | GT _ => mem k l
     end
 end.

(* Specifications: *)
Lemma mem_1 : forall m (Hm:Sort m) x, In x m -> mem x m = true.
Lemma mem_2 : forall m (Hm:Sort m) x, mem x m = true -> In x m.