Commit 995f46d3 authored by Robbert Krebbers's avatar Robbert Krebbers

Strengthen big_sepM_insert_override and use it.

parent 5b2fdd53
......@@ -180,9 +180,9 @@ Section gmap.
f_equiv; apply reflexive_eq, list_fmap_ext. by intros []. done.
Qed.
Lemma big_sepM_insert_override (Φ : K uPred M) m i x :
Lemma big_sepM_insert_override (Φ : K uPred M) m i x y :
m !! i = Some x
([ map] k_ <[i:=x]> m, Φ k) ([ map] k_ m, Φ k).
([ map] k_ <[i:=y]> m, Φ k) ([ map] k_ m, Φ k).
Proof.
intros. rewrite -insert_delete big_sepM_insert ?lookup_delete //.
by rewrite -big_sepM_delete.
......
......@@ -144,7 +144,7 @@ Proof.
as "[Hγ Hγ']"; first by iFrame "Hγ".
iPvsIntro; iNext; iSplitL "Hγ HQ"; first (iExists true; by iFrame "Hγ HQ").
iExists Φ; iSplit.
- by rewrite -insert_delete big_sepM_insert ?lookup_delete // big_sepM_delete.
- by rewrite big_sepM_insert_override.
- rewrite -insert_delete big_sepM_insert ?lookup_delete //.
iFrame "Hγ'". by repeat iSplit.
Qed.
......@@ -165,7 +165,7 @@ Proof.
as "[Hγ Hγ']"; first by iFrame "Hγ".
iPvsIntro; iNext; iSplitL "Hγ"; first (iExists false; by repeat iSplit).
iExists Φ; iSplit.
- by rewrite -insert_delete big_sepM_insert ?lookup_delete // big_sepM_delete.
- by rewrite big_sepM_insert_override.
- rewrite -insert_delete big_sepM_insert ?lookup_delete //.
iFrame "Hγ'". by repeat iSplit.
Qed.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment