Definition F (A : Set) (f : ad -> A -> M) (r : ad * A) 
  (m : M) := let (a, y) := r in op (f a y) m.

Lemma myMapFold_as_fold_1 : forall (A : Set) (f : ad -> A -> M) (m : Map A) (pf : ad -> ad), R (MapFold1 _ M neutral op f pf m) (fold_right (fun (r : ad * A) (m : M) => let (a, y) := r in op (f a y) m) neutral (MapFold1 _ (alist A) (anil A) (aapp A) (fun (a : ad) (y : A) => acons _ (a, y) (anil _)) pf m)).