Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Pierre-Marie Pédrot
Iris
Commits
f530c3ec
Commit
f530c3ec
authored
Jan 24, 2019
by
Ralf Jung
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
explain the awp_apply tactics a bit
parent
97f7dfb3
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
3 deletions
+8
-3
theories/heap_lang/proofmode.v
theories/heap_lang/proofmode.v
+8
-3
No files found.
theories/heap_lang/proofmode.v
View file @
f530c3ec
...
...
@@ -375,11 +375,16 @@ Tactic Notation "wp_apply_core" open_constr(lem) tactic(tac) :=
end
).
Tactic
Notation
"wp_apply"
open_constr
(
lem
)
:
=
wp_apply_core
lem
(
fun
H
=>
iApplyHyp
H
;
try
iNext
;
try
wp_expr_simpl
).
(* Tactic tailored for atomic triples *)
(** Tactic tailored for atomic triples: the first, simple one just runs iAuIntro
on the goal, as atomic triples always have an atomic update as their premise.
The second one additionaly does some framing: it gets rid of `Hs` from the
context, which is intended to be the non-laterable assertions that iAuIntro
would choke on. You get them all back in the continuation of the atomic
operation. *)
Tactic
Notation
"awp_apply"
open_constr
(
lem
)
:
=
wp_apply_core
lem
(
fun
H
=>
iApplyHyp
H
;
iAuIntro
).
wp_apply_core
lem
(
fun
H
=>
iApplyHyp
H
;
last
iAuIntro
).
Tactic
Notation
"awp_apply"
open_constr
(
lem
)
"without"
constr
(
Hs
)
:
=
wp_apply_core
lem
(
fun
H
=>
iApply
wp_frame_wand_l
;
iSplitL
Hs
;
[
iAccu
|
iApplyHyp
H
;
iAuIntro
]).
wp_apply_core
lem
(
fun
H
=>
iApply
wp_frame_wand_l
;
iSplitL
Hs
;
[
iAccu
|
iApplyHyp
H
;
last
iAuIntro
]).
Tactic
Notation
"wp_alloc"
ident
(
l
)
"as"
constr
(
H
)
:
=
let
Htmp
:
=
iFresh
in
...
...
Write
Preview
Markdown
is supported
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