(* Proof of lem_paire_prop2                                                *)
elim (lem_paire_propertie a b a c); intros.
elim H0; intros; [ idtac | idtac | auto with zfc ]; elim H2; intros;
[ auto with zfc | rewrite <- H3; rewrite H4; reflexivity ].
rewrite H; reflexivity.
Qed.
(* End of proof of lem_paire_prop2                                         *)

(***************************************************************************)
(* {a} = {b,c} <==> (a=b) /\ (a=c)                                         *)
(***************************************************************************)
Lemma lem_sing_eq_paire :
forall a b c : E, singleton a = paire b c <-> a = b /\ a = c.