intuition.
eapply list_pred_impl.
eapply list_pred_map_both.
eauto.
intuition.
destruct H0.
destruct H0.
intuition; subst.
trivial.
Qed.

(* Specifications: *)
Theorem addInAllLocations_pred :
forall (A B : Set) (R : A -> B -> Prop) (a : list A) (b : list B),
list_pred R a b ->
forall a1 a2,
R a1 a2 ->
list_pred (list_pred R) (addInAllLocations a1 a) (addInAllLocations a2 b).