Section DMergeDef.
Variable A : Type.
Definition DMerge :=
MapFold (Map A) (Map A) (M0 A) (MapMerge A) (fun (_:ad) (m:Map A) => m).

Lemma in_dom_DMerge_2 :
forall (m:Map (Map A)) (a:ad),
in_dom A a (DMerge m) = true ->
{b : ad &
{m0 : Map A | MapGet _ m b = Some m0 /\ in_dom A a m0 = true}}.