Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Iris
Iris
Commits
803d4b3d
Commit
803d4b3d
authored
Mar 19, 2018
by
Ralf Jung
Browse files
update iIntoEmpValid docs
parent
42655ec9
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
6 deletions
+14
-6
theories/proofmode/tactics.v
theories/proofmode/tactics.v
+14
-6
No files found.
theories/proofmode/tactics.v
View file @
803d4b3d
...
...
@@ -666,15 +666,23 @@ Tactic Notation "iSpecialize" open_constr(t) "as" "#" :=
iSpecializeCore
t
as
true
.
(** * Pose proof *)
(* The tactic [iIntoEmpValid] tactic solves a goal [
uPred
_valid Q]. The
argument
s
[t]
is
a Coq term whose type is of the following shape:
(* The tactic [iIntoEmpValid] tactic solves a goal [
bi_emp
_valid Q]. The
argument [t]
must be
a Coq term whose type is of the following shape:
- [∀ (x_1 : A_1) .. (x_n : A_n), uPred_valid Q]
- [∀ (x_1 : A_1) .. (x_n : A_n), P1 ⊢ P2], in which case [Q] becomes [P1 -∗ P2]
- [∀ (x_1 : A_1) .. (x_n : A_n), P1 ⊣⊢ P2], in which case [Q] becomes [P1 ↔ P2]
[∀ (x_1 : A_1) .. (x_n : A_n), φ]
and so that we have an instance `AsValid φ Q`.
Examples of such [φ]s are
- [bi_emp_valid P], in which case [Q] should be [P]
- [P1 ⊢ P2], in which case [Q] should be [P1 -∗ P2]
- [P1 ⊣⊢ P2], in which case [Q] should be [P1 ↔ P2]
The tactic instantiates each dependent argument [x_i] with an evar and generates
a goal [P] for non-dependent arguments [x_i : P]. *)
a goal [R] for each non-dependent argument [x_i : R]. For example, if the
original goal was [Q] and [t] has type [∀ x, P x → Q], then it generates an evar
[?x] for [x] and a subgoal [P ?x]. *)
Tactic
Notation
"iIntoEmpValid"
open_constr
(
t
)
:
=
let
rec
go
t
:
=
(* We try two reduction tactics for the type of t before trying to
...
...
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