Definition ad_inj (pf:ad -> ad) :=
forall a0 a1:ad, pf a0 = pf a1 -> a0 = a1.

Lemma alist_of_Map_semantics_1 :
forall (m:Map A) (pf:ad -> ad),
ad_inj pf ->
forall a:ad,
MapGet A m a =
alist_semantics
(MapFold1 alist anil aapp (fun (a0:ad) (y:A) => acons (a0, y) anil)
pf m) (pf a).