Skip to content
Snippets Groups Projects
Commit 6d6532db authored by Ralf Jung's avatar Ralf Jung
Browse files

some comments on lifetime ending

parent a4e89895
No related branches found
No related tags found
No related merge requests found
Pipeline #103158 passed
...@@ -129,7 +129,9 @@ Proof. ...@@ -129,7 +129,9 @@ Proof.
- iRight. iFrame "Hκ". iPureIntro. by apply lft_dead_in_insert. } - iRight. iFrame "Hκ". iPureIntro. by apply lft_dead_in_insert. }
iModIntro; iExists Λ. iModIntro; iExists Λ.
rewrite {1}/lft_tok big_sepMS_singleton. iSplit; first done. iFrame "HΛ". rewrite {1}/lft_tok big_sepMS_singleton. iSplit; first done. iFrame "HΛ".
clear I A . iIntros "!> HΛ". clear I A HPx HP.
(* From here on, we are proving that an atomic lifetime can be ended. *)
iIntros "!> HΛ".
iApply (step_fupd_mask_mono (lftN userE) _ ((lftN userE)∖↑mgmtN)); [solve_ndisj..|]. iApply (step_fupd_mask_mono (lftN userE) _ ((lftN userE)∖↑mgmtN)); [solve_ndisj..|].
iInv mgmtN as (A I) "(>HA & >HI & Hinv)" "Hclose". iInv mgmtN as (A I) "(>HA & >HI & Hinv)" "Hclose".
rewrite /lft_tok big_sepMS_singleton. rewrite /lft_tok big_sepMS_singleton.
...@@ -138,7 +140,7 @@ Proof. ...@@ -138,7 +140,7 @@ Proof.
iMod (own_update_2 with "HA HΛ") as "[HA HΛ]". iMod (own_update_2 with "HA HΛ") as "[HA HΛ]".
{ by eapply auth_update, singleton_local_update, { by eapply auth_update, singleton_local_update,
(exclusive_local_update _ (Cinr ())). } (exclusive_local_update _ (Cinr ())). }
iDestruct "HΛ" as "#HΛ". iModIntro; iNext. iDestruct "HΛ" as "#HΛ". iModIntro; iNext. (* This is THE step *)
pose (K := kill_set I Λ). pose (K := kill_set I Λ).
pose (K' := filter (lft_alive_in A) (dom I) K). pose (K' := filter (lft_alive_in A) (dom I) K).
destruct (proj1 (subseteq_disjoint_union_L (K K') (dom I))) as (K''&HI&HK''). destruct (proj1 (subseteq_disjoint_union_L (K K') (dom I))) as (K''&HI&HK'').
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment