From c53cefcd99018ab27d3f16156d0f4e3828995b23 Mon Sep 17 00:00:00 2001 From: Robbert Krebbers <mail@robbertkrebbers.nl> Date: Fri, 27 Oct 2017 16:59:04 +0200 Subject: [PATCH] Simplify `gmap_uncurry_non_empty` as suggested by JH in !9. --- theories/gmap.v | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/theories/gmap.v b/theories/gmap.v index bda9e138..f64b294c 100644 --- a/theories/gmap.v +++ b/theories/gmap.v @@ -190,11 +190,9 @@ Section curry_uncurry. Lemma gmap_uncurry_non_empty (m : gmap (K1 * K2) A) i x : gmap_uncurry m !! i = Some x → x ≠∅. Proof. - intros Hm ->. revert m Hm. - apply (map_fold_ind (λ mr _, mr !! i = Some ∅ → False)); [done|]. - intros [i' j] x m mr ??. destruct (decide (i = i')) as [->|]. - - rewrite lookup_partial_alter. intros [= []%insert_non_empty]. - - by rewrite lookup_partial_alter_ne by done. + intros Hm ->. eapply eq_None_not_Some; [|by eexists]. + eapply lookup_gmap_uncurry_None; intros j. + by rewrite <-lookup_gmap_uncurry, Hm. Qed. Lemma gmap_uncurry_curry_non_empty (m : gmap K1 (gmap K2 A)) : -- GitLab