Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Marianna Rapoport
iris-coq
Commits
6cd508b1
Commit
6cd508b1
authored
Feb 23, 2016
by
Ralf Jung
Browse files
now that we have sealing, ecancel works even in barrier.v
parent
4ed33744
Changes
1
Hide whitespace changes
Inline
Side-by-side
barrier/barrier.v
View file @
6cd508b1
...
...
@@ -284,7 +284,8 @@ Section proof.
rewrite
/
recv
/
send
.
rewrite
-(
exist_intro
γ
)
-(
exist_intro
P
).
rewrite
-(
exist_intro
P
)
-(
exist_intro
i
)
-(
exist_intro
γ
).
(* This is even more annoying than usually, since rewrite sometimes unfolds stuff... *)
rewrite
[
barrier_ctx
_
_
_
]
lock
!
assoc
[(
_
★
locked
_
)%
I
]
comm
!
assoc
-
lock
.
rewrite
[
barrier_ctx
_
_
_
]
lock
!
assoc
[(
_
★
locked
(
barrier_ctx
_
_
_
))%
I
]
comm
!
assoc
-
lock
.
rewrite
-
always_sep_dup
.
(* TODO: This is cancelling below a pvs. *)
rewrite
[
barrier_ctx
_
_
_
]
lock
always_and_sep_l
-!
assoc
assoc
-
lock
.
...
...
@@ -418,8 +419,8 @@ Section proof.
rewrite
-(
waiting_split
_
_
_
Q
R1
R2
)
;
[|
done
..].
rewrite
{
1
}[
saved_prop_own
i1
_
]
always_sep_dup
.
rewrite
{
1
}[
saved_prop_own
i2
_
]
always_sep_dup
.
cancel
[
saved_prop_own
i1
R1
;
saved_prop_own
i2
R2
;
l
↦
'
0
;
waiting
P
I
;
Q
-
★
R1
★
R2
;
saved_prop_own
i
Q
]%
I
.
e
cancel
[
l
↦
_;
saved_prop_own
i1
_
;
saved_prop_own
i2
_;
waiting
_
_
;
_
-
★
_
;
saved_prop_own
i
_
]%
I
.
apply
wand_intro_l
.
rewrite
!
assoc
.
eapply
pvs_wand_r
.
rewrite
/
recv
.
rewrite
-(
exist_intro
γ
)
-(
exist_intro
P
)
-(
exist_intro
R1
)
-(
exist_intro
i1
).
rewrite
-(
exist_intro
γ
)
-(
exist_intro
P
)
-(
exist_intro
R2
)
-(
exist_intro
i2
).
...
...
@@ -446,8 +447,8 @@ Section proof.
rewrite
-(
ress_split
_
_
_
Q
R1
R2
)
;
[|
done
..].
rewrite
{
1
}[
saved_prop_own
i1
_
]
always_sep_dup
.
rewrite
{
1
}[
saved_prop_own
i2
_
]
always_sep_dup
.
cancel
[
saved_prop_own
i1
R1
;
saved_prop_own
i2
R2
;
l
↦
'
1
;
Q
-
★
R1
★
R2
;
saved_prop_own
i
Q
;
ress
I
]%
I
.
e
cancel
[
l
↦
_;
saved_prop_own
i1
_
;
saved_prop_own
i2
_;
ress
_
;
_
-
★
_
;
saved_prop_own
i
_
]%
I
.
apply
wand_intro_l
.
rewrite
!
assoc
.
eapply
pvs_wand_r
.
rewrite
/
recv
.
rewrite
-(
exist_intro
γ
)
-(
exist_intro
P
)
-(
exist_intro
R1
)
-(
exist_intro
i1
).
rewrite
-(
exist_intro
γ
)
-(
exist_intro
P
)
-(
exist_intro
R2
)
-(
exist_intro
i2
).
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a 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