Definition STadd (x : STelt) (s : STt) := cons x s.Fixpoint STexists_ (f : STelt -> bool) (s : STt) :=
    match s with
      | nil      => false
      | hd :: tl => f hd || STexists_ f tl
    end.Fixpoint STmem elt l :=
    match l with
      | nil      => false
      | hd :: tl => if eqST_dec hd elt then true else STmem elt tl
    end.

(* Specifications: *)
Lemma STempty_b : forall y : STelt, STmem y STempty = false.
Lemma STexists_mem_4 : forall f (s : STt), STexists_ f s = true -> exists x : STelt , STmem x s = true /\ f x = true.
Lemma STadd_iff : forall (s : STt) (x y : STelt), STmem y (STadd x s) = true <-> (eqST x y \/ STmem y s = true).