Commit d0830956 authored by Zhen Zhang's avatar Zhen Zhang

Fix always

parent 9ce6b20e
9c5a95d3b271f4e0d0c657964dfa386070d0b322
a0fc612e5c81bbff25f63938b50f448ecc056c68
......@@ -405,7 +405,7 @@ Section proof.
iFrame "Hh Hm". iIntros (γ s) "#Hss".
wp_let. iVsIntro. iApply "HΦ". rewrite /synced.
iAlways.
iIntros (f). wp_let. iVsIntro. iAlways.
iIntros (f). wp_let. iVsIntro.
iIntros (P Q x) "#Hf".
iIntros "!# Hp". wp_let.
wp_bind (install _ _ _).
......
......@@ -3,6 +3,7 @@ From iris.heap_lang Require Export lang.
From iris.heap_lang Require Import proofmode notation.
From iris.algebra Require Import auth frac gmap dec_agree upred_big_op.
From iris.prelude Require Import countable.
From iris.program_logic Require Import auth.
Import uPred.
Section lemmas.
......@@ -59,10 +60,10 @@ Section heap_extra.
iIntros (?) "(#Hh & Hp1 & Hp2)".
iCombine "Hp1" "Hp2" as "Hp".
iDestruct (heap_mapsto_op_1 with "Hp") as "[_ Hp]".
rewrite heap_mapsto_eq. iDestruct (own_valid with "Hp") as %H'.
rewrite heap_mapsto_eq. iDestruct (auth_own_valid with "Hp") as %H'.
apply singleton_valid in H'. by destruct H' as [H' _].
Qed.
End heap_extra.
Section big_op_later.
......@@ -106,4 +107,3 @@ Section pair.
rewrite pair_op frac_op' dec_agree_idemp. by iFrame.
Qed.
End pair.
......@@ -28,7 +28,7 @@ Section syncer.
iSplitR "HR HΦ"; first done.
iFrame "HR".
iIntros (lk γ) "#Hl". wp_let. iApply "HΦ". iIntros "!#".
iIntros (f). wp_let. iVsIntro. iAlways.
iIntros (f). wp_let. iVsIntro.
iIntros (P Q x) "#Hf !# HP".
wp_let. wp_bind (acquire _).
iApply acquire_spec. iSplit; first done.
......
......@@ -6,7 +6,7 @@ Section sync.
Context `{!heapG Σ} (N : namespace).
Definition synced R (f' f: val) :=
( P Q (x: val), ({{ R P x }} f x {{ v, R Q x v }}) ({{ P x }} f' x {{ v, Q x v }}))%I.
( P Q (x: val), ({{ R P x }} f x {{ v, R Q x v }}) ({{ P x }} f' x {{ v, Q x v }}))%I.
Definition is_syncer (R: iProp Σ) (s: val) :=
( (f : val), WP s f {{ f', synced R f' f }})%I.
......
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