diff --git a/coq-reloc.opam b/coq-reloc.opam index 2b486b8f5ce6d83dd0558a2b14811ba44b810f33..32782902f5de246e935f0e65fe6d72e6dbf079bf 100644 --- a/coq-reloc.opam +++ b/coq-reloc.opam @@ -6,7 +6,7 @@ bug-reports: "https://gitlab.mpi-sws.org/dfrumin/reloc/issues" dev-repo: "git+https://gitlab.mpi-sws.org/dfrumin/reloc.git" depends: [ - "coq-iris-heap-lang" { (= "dev.2022-01-17.2.ec624937") | (= "dev") } + "coq-iris-heap-lang" { (= "dev.2022-05-13.0.a1971471") | (= "dev") } "coq-autosubst" { = "dev" } ] diff --git a/theories/examples/folly_queue/refinement.v b/theories/examples/folly_queue/refinement.v index 432f59da6eb877d863b59a773dc5f8f32d0e761f..1be8f9fad4f2c9440e65b32a7228a39969325e96 100644 --- a/theories/examples/folly_queue/refinement.v +++ b/theories/examples/folly_queue/refinement.v @@ -84,7 +84,7 @@ Section queue_refinement. Definition make_map (m : gmap nat val) : gmapUR nat (agreeR valO) := to_agree <$> m. - Lemma dom_make_map (m : gmap nat val) : dom (gset nat) (make_map m) = dom _ m. + Lemma dom_make_map (m : gmap nat val) : dom (make_map m) = dom m. Proof. rewrite /make_map. rewrite dom_fmap_L. done. Qed. @@ -122,7 +122,7 @@ Section queue_refinement. Qed. Lemma dom_list_to_map {B : Type} (l : list (nat * B)) : - dom (gset nat) (list_to_map l : gmap nat B) = list_to_set l.*1. + dom (list_to_map l : gmap nat B) = list_to_set l.*1. Proof. induction l as [|?? IH]. - rewrite dom_empty_L. done. @@ -208,7 +208,7 @@ Section queue_refinement. Qed. Lemma map_list_elem_of γl m (pushTicket popTicket : nat) (v : val) : - dom (gset nat) m = set_seq 0 pushTicket → + dom m = set_seq 0 pushTicket → own γl (â— make_map m) -∗ own γl (â—¯ {[popTicket := to_agree v]}) -∗ ⌜popTicket ∈ set_seq (C:=gset nat) 0 pushTicketâŒ. @@ -599,7 +599,7 @@ Section queue_refinement. tokens_from γt (popTicket `max` pushTicket) ∗ (* Keeps track of which tokens we own. *) (* Some pop operations has decided on a [j] and a [K]. *) own γm (â— threads) ∗ - ⌜dom (gset _) threads ⊆ set_seq 0 popTicket⌠∗ + ⌜dom threads ⊆ set_seq 0 popTicket⌠∗ (* Every push operation must show this for i. *) ([∗ set] i ∈ (set_seq 0 pushTicket), push_i A γl γt γm i) ∗ (* When popTicket is greater than pushTicket the pop operation has left a @@ -615,9 +615,9 @@ Section queue_refinement. (* Decide j and K. *) Lemma thread_alloc (γm : gname) mt popTicket (id : ref_id) : - dom (gset nat) mt ⊆ set_seq 0 popTicket → + dom mt ⊆ set_seq 0 popTicket → own γm (â— mt) ==∗ - ⌜dom (gset nat) (<[ popTicket := to_agree id ]>mt) ⊆ set_seq 0 (popTicket + 1)⌠∗ + ⌜dom (<[ popTicket := to_agree id ]>mt) ⊆ set_seq 0 (popTicket + 1)⌠∗ own γm (â— (<[ popTicket := to_agree id ]>mt)) ∗ own γm (â—¯ ({[ popTicket := to_agree id ]})). Proof. diff --git a/theories/logic/spec_rules.v b/theories/logic/spec_rules.v index 6dd9138efe2223d1dd22f589f2295e8bc20b98e3..e4944d5ca758f785d5a18f6ad9103414556d97f4 100644 --- a/theories/logic/spec_rules.v +++ b/theories/logic/spec_rules.v @@ -138,7 +138,7 @@ Section rules. rewrite /spec_ctx tpool_mapsto_eq /tpool_mapsto_def /=. iDestruct "Hinv" as (Ï) "Hinv". iInv specN as (tp σ) ">[Hown %]" "Hclose". - destruct (exist_fresh (dom (gset loc) (heap σ))) as [l Hl%not_elem_of_dom]. + destruct (exist_fresh (dom (D:=gset _) (heap σ))) as [l Hl%not_elem_of_dom]. iDestruct (own_valid_2 with "Hown Hj") as %[[?%tpool_singleton_included' _]%prod_included ?]%auth_both_valid_discrete. iMod (own_update_2 with "Hown Hj") as "[Hown Hj]". diff --git a/theories/typing/types.v b/theories/typing/types.v index 01abeb40aa11cb2718aeae8df55305800527a0b6..5b8d9f099b742cff41b4a825b60b3acdc7b3a0b2 100644 --- a/theories/typing/types.v +++ b/theories/typing/types.v @@ -298,7 +298,7 @@ Proof. Qed. Local Lemma typed_is_closed_set Γ e Ï„ : - Γ ⊢ₜ e : Ï„ → is_closed_expr_set (dom stringset Γ) e + Γ ⊢ₜ e : Ï„ → is_closed_expr_set (dom Γ) e with typed_is_closed_val_set v Ï„ : ⊢ᵥ v : Ï„ → is_closed_val_set v. Proof. @@ -346,6 +346,6 @@ Proof. Qed. Theorem typed_is_closed Γ e Ï„ : - Γ ⊢ₜ e : Ï„ → is_closed_expr (dom stringset Γ) e. + Γ ⊢ₜ e : Ï„ → is_closed_expr (dom Γ) e. Proof. intros. eapply is_closed_expr_set_sound, typed_is_closed_set; eauto. Qed.