Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
Iris
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Pierre-Marie Pédrot
Iris
Commits
1f4a4d60
Commit
1f4a4d60
authored
Jan 24, 2019
by
Ralf Jung
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
more docs
parent
0c5631c4
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
4 deletions
+7
-4
theories/heap_lang/proofmode.v
theories/heap_lang/proofmode.v
+7
-4
No files found.
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
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