End BindsProperties.
Section BindsProperties2.
Variables A B C D : Type.
Variables f       : A -> C.
Variables g       : B -> D.
Variables x y     : X.t.
Variables a a'    : A.
Variables b b'    : B.
Variables E F G   : list (asn A B).

(* Specifications: *)
Lemma binds_cons_uniq_1 :
uniq (VarAsn _ y a' :: E) ->
binds x a (VarAsn _ y a' :: E) ->
(x = y /\ a = a' /\ ~ In x (dom E)) \/ (binds x a E /\ x <> y).
Lemma binds_cons_uniq_iff :
uniq (VarAsn _ y a' :: E) ->
(binds x a (VarAsn _ y a' :: E) <->
(x = y /\ a = a' /\ ~ In x (dom E)) \/
(binds x a E /\ x <> y)).