induction lsa; intuition; simpl in *.
destruct lsb;
simpl in *;
intuition.
right.
eauto.
Qed.

Theorem NoDup_gen_zip_fst :
forall (A B : Set)(ea : A -> A -> Prop)(lsa : list A)(lsb : list B),
NoDup_gen ea lsa ->
NoDup_gen (fun a b => ea (fst a) (fst b)) (zip lsa lsb).