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
Tej Chajed
iris
Commits
be8849c2
Commit
be8849c2
authored
Sep 20, 2017
by
Robbert Krebbers
Browse files
Get rid of wp_value.
The tactic was doing something weird and only once used.
parent
290a45af
Changes
2
Hide whitespace changes
Inline
Side-by-side
theories/heap_lang/lib/par.v
View file @
be8849c2
...
...
@@ -27,8 +27,8 @@ Lemma par_spec (Ψ1 Ψ2 : val → iProp Σ) e (f1 f2 : val) (Φ : val → iProp
(
▷
∀
v1
v2
,
Ψ
1
v1
∗
Ψ
2
v2
-
∗
▷
Φ
(
v1
,
v2
)%
V
)
-
∗
WP
par
e
{{
Φ
}}.
Proof
.
iIntros
(
?
)
"Hf1 Hf2 HΦ"
.
rewrite
/
par
.
wp_value
.
wp_let
.
wp_proj
.
iIntros
(
<-%
of_to_val
)
"Hf1 Hf2 HΦ"
.
rewrite
/
par
/=
.
wp_let
.
wp_proj
.
wp_apply
(
spawn_spec
parN
with
"Hf1"
)
;
try
wp_done
;
try
solve_ndisj
.
iIntros
(
l
)
"Hl"
.
wp_let
.
wp_proj
.
wp_bind
(
f2
_
).
iApply
(
wp_wand
with
"Hf2"
)
;
iIntros
(
v
)
"H2"
.
wp_let
.
...
...
theories/heap_lang/proofmode.v
View file @
be8849c2
...
...
@@ -24,14 +24,6 @@ Ltac wp_done :=
Ltac
wp_value_head
:
=
etrans
;
[|
eapply
wp_value
;
wp_done
]
;
simpl
.
Tactic
Notation
"wp_value"
:
=
iStartProof
;
lazymatch
goal
with
|
|-
_
⊢
wp
?E
?e
?Q
=>
reshape_expr
e
ltac
:
(
fun
K
e'
=>
wp_bind_core
K
;
wp_value_head
)
||
fail
"wp_value: cannot find value in"
e
|
_
=>
fail
"wp_value: not a wp"
end
.
Lemma
of_val_unlock
v
e
:
of_val
v
=
e
→
of_val
(
locked
v
)
=
e
.
Proof
.
by
unlock
.
Qed
.
...
...
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