Skip to content
Snippets Groups Projects
Commit 3c6ebc4b authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Merge branch 'ralf/map_zip_with_empty' into 'master'

add map_zip_with_empty lemmas

See merge request !430
parents 0231fed2 e56433ec
No related branches found
No related tags found
1 merge request!430add map_zip_with_empty lemmas
Pipeline #75409 passed
...@@ -1858,6 +1858,19 @@ Proof. rewrite map_lookup_zip_with_Some. destruct p. naive_solver. Qed. ...@@ -1858,6 +1858,19 @@ Proof. rewrite map_lookup_zip_with_Some. destruct p. naive_solver. Qed.
Lemma map_zip_with_empty {A B C} (f : A B C) : Lemma map_zip_with_empty {A B C} (f : A B C) :
map_zip_with f =@{M C} ∅. map_zip_with f =@{M C} ∅.
Proof. unfold map_zip_with. by rewrite merge_empty by done. Qed. Proof. unfold map_zip_with. by rewrite merge_empty by done. Qed.
Lemma map_zip_with_empty_l {A B C} (f : A B C) m2 :
map_zip_with f m2 =@{M C} ∅.
Proof.
unfold map_zip_with. apply map_eq; intros i.
rewrite lookup_merge, !lookup_empty. destruct (m2 !! i); done.
Qed.
Lemma map_zip_with_empty_r {A B C} (f : A B C) m1 :
map_zip_with f m1 =@{M C} ∅.
Proof.
unfold map_zip_with. apply map_eq; intros i.
rewrite lookup_merge, !lookup_empty. destruct (m1 !! i); done.
Qed.
Lemma map_insert_zip_with {A B C} (f : A B C) (m1 : M A) (m2 : M B) i y z : Lemma map_insert_zip_with {A B C} (f : A B C) (m1 : M A) (m2 : M B) i y z :
<[i:=f y z]>(map_zip_with f m1 m2) = map_zip_with f (<[i:=y]>m1) (<[i:=z]>m2). <[i:=f y z]>(map_zip_with f m1 m2) = map_zip_with f (<[i:=y]>m1) (<[i:=z]>m2).
Proof. unfold map_zip_with. by erewrite insert_merge by done. Qed. Proof. unfold map_zip_with. by erewrite insert_merge by done. Qed.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment