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
Iris
Iris
Commits
1f4a4d60
Commit
1f4a4d60
authored
Jan 24, 2019
by
Ralf Jung
Browse files
more docs
parent
0c5631c4
Changes
1
Hide whitespace changes
Inline
Side-by-side
theories/heap_lang/proofmode.v
View file @
1f4a4d60
...
...
@@ -355,6 +355,9 @@ Proof.
Qed
.
End
heap
.
(** Evaluate [lem] to a hypothesis [H] that can be applied, and then run
[wp_bind K; tac H] for every possible evaluation context. [tac] can do
[iApplyHyp H] to actually apply the hypothesis. *)
Tactic
Notation
"wp_apply_core"
open_constr
(
lem
)
tactic
(
tac
)
:
=
wp_pures
;
iPoseProofCore
lem
as
false
true
(
fun
H
=>
...
...
@@ -375,10 +378,10 @@ 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: 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
(** 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
)
:
=
...
...
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