diff --git a/theories/fin_maps.v b/theories/fin_maps.v index de87feaf1eebeaefccd112930208bdc98244e2e6..fd55a8794e2b08210ff2b75b46b731a3816b3d4f 100644 --- a/theories/fin_maps.v +++ b/theories/fin_maps.v @@ -1234,9 +1234,15 @@ Proof. Qed. Lemma map_Forall_delete m i : map_Forall P m → map_Forall P (delete i m). Proof. intros Hm j x; rewrite lookup_delete_Some. naive_solver. Qed. -Lemma map_Forall_lookup m i x : - m !! i = Some x → map_Forall P m → P i x. -Proof. intros Hlk Hm. by apply Hm. Qed. +Lemma map_Forall_lookup m : + map_Forall P m ↔ ∀ i x, m !! i = Some x → P i x. +Proof. done. Qed. +Lemma map_Forall_lookup_1 m i x : + map_Forall P m → m !! i = Some x → P i x. +Proof. intros ?. by apply map_Forall_lookup. Qed. +Lemma map_Forall_lookup_2 m : + (∀ i x, m !! i = Some x → P i x) → map_Forall P m. +Proof. intros ?. by apply map_Forall_lookup. Qed. Lemma map_Forall_foldr_delete m is : map_Forall P m → map_Forall P (foldr delete m is). Proof. induction is; eauto using map_Forall_delete. Qed.