Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Iris
Iris
Commits
00cc5b5a
Commit
00cc5b5a
authored
Feb 02, 2016
by
Ralf Jung
Browse files
Merge branch 'v2.0' of gitlab.mpi-sws.org:FP/iris-coq into v2.0
parents
5470da51
874df60b
Changes
1
Hide whitespace changes
Inline
Side-by-side
barrier/lifting.v
View file @
00cc5b5a
...
...
@@ -21,21 +21,14 @@ Lemma wp_alloc_pst E σ e v Q :
(
ownP
σ
★
▷
(
∀
l
,
■
(
σ
!!
l
=
None
)
∧
ownP
(<[
l
:
=
v
]>
σ
)
-
★
Q
(
LocV
l
)))
⊑
wp
E
(
Alloc
e
)
Q
.
Proof
.
intros
.
(* FIXME RJ: ssreflect rewrite does not work. *)
rewrite
<-(
wp_lift_atomic_step
(
Alloc
e
)
(
λ
v'
σ
'
,
∃
l
,
v'
=
LocV
l
∧
σ
'
=
<[
l
:
=
v
]>
σ
∧
σ
!!
l
=
None
)
σ
)=>
//
;
last
first
.
{
(* TODO RJ: Somehow automation used to kill all this...?? *)
intros
.
inv_step
.
eexists
;
split_ands
;
try
done
;
[].
eexists
;
done
.
}
intros
.
set
(
φ
v'
σ
'
:
=
∃
l
,
v'
=
LocV
l
∧
σ
'
=
<[
l
:
=
v
]>
σ
∧
σ
!!
l
=
None
).
rewrite
-(
wp_lift_atomic_step
(
Alloc
e
)
φ
σ
)
//
/
φ
;
last
by
intros
;
inv_step
;
eauto
10
.
apply
sep_mono
,
later_mono
;
first
done
.
apply
forall_intro
=>
e2
;
apply
forall_intro
=>
σ
2
.
apply
wand_intro_l
.
apply
forall_intro
=>
e2
;
apply
forall_intro
=>
σ
2
;
apply
wand_intro_l
.
rewrite
always_and_sep_l'
-
associative
-
always_and_sep_l'
.
apply
const_elim_l
=>-[
l
[->
[->
?]]].
rewrite
(
forall_elim
l
)
const_equiv
//.
by
rewrite
left_id
wand_elim_r
.
by
rewrite
(
forall_elim
l
)
const_equiv
//
left_id
wand_elim_r
.
Qed
.
Lemma
wp_load_pst
E
σ
l
v
Q
:
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment