diff --git a/heap_lang/heap.v b/heap_lang/heap.v
index 7573f9c6acba0216cab16a2063d87b93f5f0fb4a..2bf1994a949ff44ca6dcc9e87d63e0778d0a6681 100644
--- a/heap_lang/heap.v
+++ b/heap_lang/heap.v
@@ -109,12 +109,12 @@ Section heap.
 
   (** Weakest precondition *)
   Lemma wp_alloc N E e v P Φ :
-    to_val e = Some v → nclose N ⊆ E →
-    P ⊑ heap_ctx N →
+    to_val e = Some v →
+    P ⊑ heap_ctx N → nclose N ⊆ E →
     P ⊑ (▷ ∀ l, l ↦ v -★ Φ (LocV l)) →
     P ⊑ || Alloc e @ E {{ Φ }}.
   Proof.
-    rewrite /heap_ctx /heap_inv heap_mapsto_eq=> ?? Hctx HP.
+    rewrite /heap_ctx /heap_inv heap_mapsto_eq=> ??? HP.
     trans (|={E}=> auth_own heap_name ∅ ★ P)%I.
     { by rewrite -pvs_frame_r -(auth_empty _ E) left_id. }
     apply wp_strip_pvs, (auth_fsa heap_inv (wp_fsa (Alloc e)))
@@ -135,12 +135,11 @@ Section heap.
   Qed.
 
   Lemma wp_load N E l v P Φ :
-    nclose N ⊆ E →
-    P ⊑ heap_ctx N →
+    P ⊑ heap_ctx N → nclose N ⊆ E →
     P ⊑ (▷ l ↦ v ★ ▷ (l ↦ v -★ Φ v)) →
     P ⊑ || Load (Loc l) @ E {{ Φ }}.
   Proof.
-    rewrite /heap_ctx /heap_inv heap_mapsto_eq=>HN ? HPΦ.
+    rewrite /heap_ctx /heap_inv heap_mapsto_eq=> ?? HPΦ.
     apply (auth_fsa' heap_inv (wp_fsa _) id)
       with N heap_name {[ l := Excl v ]}; simpl; eauto with I.
     rewrite HPΦ{HPΦ}; apply sep_mono_r, forall_intro=> h; apply wand_intro_l.
@@ -153,12 +152,12 @@ Section heap.
   Qed.
 
   Lemma wp_store N E l v' e v P Φ :
-    to_val e = Some v → nclose N ⊆ E → 
-    P ⊑ heap_ctx N →
+    to_val e = Some v →
+    P ⊑ heap_ctx N → nclose N ⊆ E →
     P ⊑ (▷ l ↦ v' ★ ▷ (l ↦ v -★ Φ (LitV LitUnit))) →
     P ⊑ || Store (Loc l) e @ E {{ Φ }}.
   Proof.
-    rewrite /heap_ctx /heap_inv heap_mapsto_eq=>? HN ? HPΦ.
+    rewrite /heap_ctx /heap_inv heap_mapsto_eq=> ??? HPΦ.
     apply (auth_fsa' heap_inv (wp_fsa _) (alter (λ _, Excl v) l))
       with N heap_name {[ l := Excl v' ]}; simpl; eauto with I.
     rewrite HPΦ{HPΦ}; apply sep_mono_r, forall_intro=> h; apply wand_intro_l.
@@ -173,12 +172,11 @@ Section heap.
 
   Lemma wp_cas_fail N E l v' e1 v1 e2 v2 P Φ :
     to_val e1 = Some v1 → to_val e2 = Some v2 → v' ≠ v1 →
-    nclose N ⊆ E →
-    P ⊑ heap_ctx N →
+    P ⊑ heap_ctx N → nclose N ⊆ E →
     P ⊑ (▷ l ↦ v' ★ ▷ (l ↦ v' -★ Φ (LitV (LitBool false)))) →
     P ⊑ || Cas (Loc l) e1 e2 @ E {{ Φ }}.
   Proof.
-    rewrite /heap_ctx /heap_inv heap_mapsto_eq=>??? HN ? HPΦ.
+    rewrite /heap_ctx /heap_inv heap_mapsto_eq=>????? HPΦ.
     apply (auth_fsa' heap_inv (wp_fsa _) id)
       with N heap_name {[ l := Excl v' ]}; simpl; eauto 10 with I.
     rewrite HPΦ{HPΦ}; apply sep_mono_r, forall_intro=> h; apply wand_intro_l.
@@ -192,12 +190,11 @@ Section heap.
 
   Lemma wp_cas_suc N E l e1 v1 e2 v2 P Φ :
     to_val e1 = Some v1 → to_val e2 = Some v2 →
-    nclose N ⊆ E →
-    P ⊑ heap_ctx N →
+    P ⊑ heap_ctx N → nclose N ⊆ E →
     P ⊑ (▷ l ↦ v1 ★ ▷ (l ↦ v2 -★ Φ (LitV (LitBool true)))) →
     P ⊑ || Cas (Loc l) e1 e2 @ E {{ Φ }}.
   Proof.
-    rewrite /heap_ctx /heap_inv heap_mapsto_eq=> ?? HN ? HPΦ.
+    rewrite /heap_ctx /heap_inv heap_mapsto_eq=> ???? HPΦ.
     apply (auth_fsa' heap_inv (wp_fsa _) (alter (λ _, Excl v2) l))
       with N heap_name {[ l := Excl v1 ]}; simpl; eauto 10 with I.
     rewrite HPΦ{HPΦ}; apply sep_mono_r, forall_intro=> h; apply wand_intro_l.