#[local]
Hint Resolve NoDupA_eqk_eqke NoDupA_rev elements_3w : map.

(* Specifications: *)
Lemma fold_Equal : forall m1 m2 i, Equal m1 m2 ->
eqA (fold f m1 i) (fold f m2 i).
Lemma fold_Equal2 : forall m1 m2 i j, Equal m1 m2 -> eqA i j ->
eqA (fold f m1 i) (fold f m2 j).
Lemma fold_Add : forall m1 m2 k e i, ~In k m1 -> Add k e m1 m2 ->
eqA (fold f m2 i) (f k e (fold f m1 i)).
Lemma fold_add : forall m k e i, ~In k m ->
eqA (fold f (add k e m) i) (f k e (fold f m i)).