diff --git a/iris.v b/iris.v
index 7445d4b8949e7f7275ee110ca3fe9ab38e6652bd..b92ac9c08dc5e3e72d6b6e8170b63ffef2d320e5 100644
--- a/iris.v
+++ b/iris.v
@@ -438,6 +438,7 @@ Module Iris (RL : PCM_T) (C : CORE_LANG).
 
     Definition mask_sing i := mask_set mask_emp i True.
 
+    (* TODO: Why do we even need the nonzero lemma about erase_state here? *)
     Lemma vsOpen i p :
       valid (vs (mask_sing i) mask_emp (inv i p) (â–¹ p)).
     Proof.
@@ -454,7 +455,7 @@ Module Iris (RL : PCM_T) (C : CORE_LANG).
           by (rewrite <- HE, assoc, <- (assoc (Some r)), (comm rf), assoc; reflexivity).
         apply ores_equiv_eq in HR; setoid_rewrite HR in HES; clear HR.
         destruct (Some r · Some ri) as [rri |] eqn: HR;
-          [| erewrite !pcm_op_zero in HES by apply _; now apply erase_state_nonzero in HES].
+          [| erewrite !pcm_op_zero in HES by apply _; now contradiction].
         exists w' rri (erase (fdRemove i rs)); split; [reflexivity |].
         split; [| split; [assumption |] ].
         + simpl; eapply HInv; [now auto with arith |].
@@ -517,8 +518,8 @@ Module Iris (RL : PCM_T) (C : CORE_LANG).
           exists rd; assumption.
       - destruct (rs i) as [rsi |] eqn: EQrsi; subst;
         [| erewrite pcm_op_unit in EQR by apply _; discriminate].
-        contradiction (erase_state_nonzero σ); clear - HE HES EQrsi EQR.
-        assert (HH : rf · (Some r · s) = 0); [clear HES | rewrite HH in HES; assumption].
+        clear - HE HES EQrsi EQR.
+        assert (HH : rf · (Some r · s) = 0); [clear HES | rewrite HH in HES; contradiction].
         eapply ores_equiv_eq; rewrite <- HE, erase_remove by eassumption.
         rewrite (assoc (Some r)), (comm (Some r)), EQR, comm.
         erewrite !pcm_op_zero by apply _; reflexivity.
@@ -633,7 +634,7 @@ Qed.
       destruct HG as [ [rdp rdl] EQr]; rewrite pcm_op_split in EQr; destruct EQr as [EQrp EQrl].
       erewrite comm, pcm_op_unit in EQrp by apply _; simpl in EQrp; subst rp'.
       destruct (Some (rdp, rl') · rf · s) as [t |] eqn: EQt;
-        [| destruct HE as [HES _]; setoid_rewrite EQt in HES; contradiction (erase_state_nonzero σ) ].
+        [| destruct HE as [HES _]; setoid_rewrite EQt in HES; contradiction].
       assert (EQt' : Some (rdp, rl') · rf · s == Some t) by (rewrite EQt; reflexivity).
       clear EQt; rename EQt' into EQt.
       destruct rf as [ [rfp rfl] |]; [| now erewrite (comm _ 0), !pcm_op_zero in EQt by apply _].