induction ls; intuition; simpl in *.
intuition.
remember (split ls) as z.
destruct z.
simpl in *.
intuition.
subst.
econstructor; intuition.
edestruct IHls; eauto.
Qed.

(* Specifications: *)
Theorem in_fst_split_if :
forall (A B : Type)(ls : list (A * B)) a b,
In (a, b) ls ->
In a (fst (split ls)).