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

bump std++; fix uses of default

parent 497bd8a8
No related branches found
No related tags found
No related merge requests found
...@@ -11,5 +11,5 @@ install: [make "install"] ...@@ -11,5 +11,5 @@ install: [make "install"]
remove: ["rm" "-rf" "%{lib}%/coq/user-contrib/iris"] remove: ["rm" "-rf" "%{lib}%/coq/user-contrib/iris"]
depends: [ depends: [
"coq" { (>= "8.7.0" & < "8.9~") | (= "dev") } "coq" { (>= "8.7.0" & < "8.9~") | (= "dev") }
"coq-stdpp" { (= "dev.2018-05-23.0.a8f65af5") | (= "dev") } "coq-stdpp" { (= "dev.2018-05-24.0.de797b31") | (= "dev") }
] ]
...@@ -68,7 +68,7 @@ Lemma wp_lift_atomic_head_step {s E Φ} e1 : ...@@ -68,7 +68,7 @@ Lemma wp_lift_atomic_head_step {s E Φ} e1 :
head_reducible e1 σ1 head_reducible e1 σ1
e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗ e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗
state_interp σ2 state_interp σ2
default False (to_val e2) Φ [ list] ef efs, WP ef @ s; {{ _, True }}) from_option Φ False (to_val e2) [ list] ef efs, WP ef @ s; {{ _, True }})
WP e1 @ s; E {{ Φ }}. WP e1 @ s; E {{ Φ }}.
Proof. Proof.
iIntros (?) "H". iApply wp_lift_atomic_step; eauto. iIntros (?) "H". iApply wp_lift_atomic_step; eauto.
...@@ -82,7 +82,7 @@ Lemma wp_lift_atomic_head_step_no_fork {s E Φ} e1 : ...@@ -82,7 +82,7 @@ Lemma wp_lift_atomic_head_step_no_fork {s E Φ} e1 :
( σ1, state_interp σ1 ={E}=∗ ( σ1, state_interp σ1 ={E}=∗
head_reducible e1 σ1 head_reducible e1 σ1
e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗ e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗
efs = [] state_interp σ2 default False (to_val e2) Φ) efs = [] state_interp σ2 from_option Φ False (to_val e2))
WP e1 @ s; E {{ Φ }}. WP e1 @ s; E {{ Φ }}.
Proof. Proof.
iIntros (?) "H". iApply wp_lift_atomic_head_step; eauto. iIntros (?) "H". iApply wp_lift_atomic_head_step; eauto.
......
...@@ -72,7 +72,7 @@ Lemma wp_lift_atomic_step {s E Φ} e1 : ...@@ -72,7 +72,7 @@ Lemma wp_lift_atomic_step {s E Φ} e1 :
if s is NotStuck then reducible e1 σ1 else True if s is NotStuck then reducible e1 σ1 else True
e2 σ2 efs, prim_step e1 σ1 e2 σ2 efs ={E}=∗ e2 σ2 efs, prim_step e1 σ1 e2 σ2 efs ={E}=∗
state_interp σ2 state_interp σ2
default False (to_val e2) Φ [ list] ef efs, WP ef @ s; {{ _, True }}) from_option Φ False (to_val e2) [ list] ef efs, WP ef @ s; {{ _, True }})
WP e1 @ s; E {{ Φ }}. WP e1 @ s; E {{ Φ }}.
Proof. Proof.
iIntros (?) "H". iApply (wp_lift_step s E _ e1)=>//; iIntros (σ1) "Hσ1". iIntros (?) "H". iApply (wp_lift_step s E _ e1)=>//; iIntros (σ1) "Hσ1".
......
...@@ -138,7 +138,7 @@ Section lifting. ...@@ -138,7 +138,7 @@ Section lifting.
Lemma ownP_lift_atomic_step {s E Φ} e1 σ1 : Lemma ownP_lift_atomic_step {s E Φ} e1 σ1 :
(if s is NotStuck then reducible e1 σ1 else to_val e1 = None) (if s is NotStuck then reducible e1 σ1 else to_val e1 = None)
( ownP σ1 e2 σ2 efs, prim_step e1 σ1 e2 σ2 efs -∗ ownP σ2 -∗ ( ownP σ1 e2 σ2 efs, prim_step e1 σ1 e2 σ2 efs -∗ ownP σ2 -∗
default False (to_val e2) Φ [ list] ef efs, WP ef @ s; {{ _, True }}) from_option Φ False (to_val e2) [ list] ef efs, WP ef @ s; {{ _, True }})
WP e1 @ s; E {{ Φ }}. WP e1 @ s; E {{ Φ }}.
Proof. Proof.
iIntros (?) "[Hσ H]"; iApply ownP_lift_step. iIntros (?) "[Hσ H]"; iApply ownP_lift_step.
...@@ -240,7 +240,7 @@ Section ectx_lifting. ...@@ -240,7 +240,7 @@ Section ectx_lifting.
head_reducible e1 σ1 head_reducible e1 σ1
ownP σ1 ( e2 σ2 efs, ownP σ1 ( e2 σ2 efs,
head_step e1 σ1 e2 σ2 efs -∗ ownP σ2 -∗ head_step e1 σ1 e2 σ2 efs -∗ ownP σ2 -∗
default False (to_val e2) Φ [ list] ef efs, WP ef @ s; {{ _, True }}) from_option Φ False (to_val e2) [ list] ef efs, WP ef @ s; {{ _, True }})
WP e1 @ s; E {{ Φ }}. WP e1 @ s; E {{ Φ }}.
Proof. Proof.
iIntros (?) "[? H]". iApply ownP_lift_atomic_step; eauto. iIntros (?) "[? H]". iApply ownP_lift_atomic_step; eauto.
......
...@@ -43,7 +43,7 @@ Lemma twp_lift_atomic_head_step {s E Φ} e1 : ...@@ -43,7 +43,7 @@ Lemma twp_lift_atomic_head_step {s E Φ} e1 :
head_reducible e1 σ1 head_reducible e1 σ1
e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗ e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗
state_interp σ2 state_interp σ2
default False (to_val e2) Φ [ list] ef efs, WP ef @ s; [{ _, True }]) from_option Φ False (to_val e2) [ list] ef efs, WP ef @ s; [{ _, True }])
WP e1 @ s; E [{ Φ }]. WP e1 @ s; E [{ Φ }].
Proof. Proof.
iIntros (?) "H". iApply twp_lift_atomic_step; eauto. iIntros (?) "H". iApply twp_lift_atomic_step; eauto.
...@@ -56,7 +56,7 @@ Lemma twp_lift_atomic_head_step_no_fork {s E Φ} e1 : ...@@ -56,7 +56,7 @@ Lemma twp_lift_atomic_head_step_no_fork {s E Φ} e1 :
( σ1, state_interp σ1 ={E}=∗ ( σ1, state_interp σ1 ={E}=∗
head_reducible e1 σ1 head_reducible e1 σ1
e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗ e2 σ2 efs, head_step e1 σ1 e2 σ2 efs ={E}=∗
efs = [] state_interp σ2 default False (to_val e2) Φ) efs = [] state_interp σ2 from_option Φ False (to_val e2))
WP e1 @ s; E [{ Φ }]. WP e1 @ s; E [{ Φ }].
Proof. Proof.
iIntros (?) "H". iApply twp_lift_atomic_head_step; eauto. iIntros (?) "H". iApply twp_lift_atomic_head_step; eauto.
......
...@@ -45,7 +45,7 @@ Lemma twp_lift_atomic_step {s E Φ} e1 : ...@@ -45,7 +45,7 @@ Lemma twp_lift_atomic_step {s E Φ} e1 :
if s is NotStuck then reducible e1 σ1 else True if s is NotStuck then reducible e1 σ1 else True
e2 σ2 efs, prim_step e1 σ1 e2 σ2 efs ={E}=∗ e2 σ2 efs, prim_step e1 σ1 e2 σ2 efs ={E}=∗
state_interp σ2 state_interp σ2
default False (to_val e2) Φ [ list] ef efs, WP ef @ s; [{ _, True }]) from_option Φ False (to_val e2) [ list] ef efs, WP ef @ s; [{ _, True }])
WP e1 @ s; E [{ Φ }]. WP e1 @ s; E [{ Φ }].
Proof. Proof.
iIntros (?) "H". iApply (twp_lift_step _ E _ e1)=>//; iIntros (σ1) "Hσ1". iIntros (?) "H". iApply (twp_lift_step _ E _ e1)=>//; iIntros (σ1) "Hσ1".
......
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