Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
I
iris
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Tej Chajed
iris
Commits
963f522b
Verified
Commit
963f522b
authored
6 years ago
by
Tej Chajed
Browse files
Options
Downloads
Patches
Plain Diff
Copyedit the proof mode documentation
parent
12db2bda
Branches
proofmode-doc-editing
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
ProofMode.md
+9
-9
9 additions, 9 deletions
ProofMode.md
with
9 additions
and
9 deletions
ProofMode.md
+
9
−
9
View file @
963f522b
...
...
@@ -3,9 +3,9 @@ Tactic overview
Many of the tactics below apply to more goals than described in this document
since the behavior of these tactics can be tuned via instances of the type
classes in the file
[
proofmode/classes
](
proofmode/classes.v
)
. Most notabl
e
, many
of the tactics can be applied when the to be introduced or to be eliminated
connective
appears under a later, an update modality, or in the conclusion of a
classes in the file
[
proofmode/classes
](
proofmode/classes.v
)
. Most notabl
y
, many
of the tactics can be applied when the
connective
to be introduced or to be eliminated
appears under a later, an update modality, or in the conclusion of a
weakest precondition.
Applying hypotheses and lemmas
...
...
@@ -92,7 +92,7 @@ Elimination of logical connectives
used for proving the premises of
`pm_trm`
, as well as for proving the
resulting goal.
Separatin
g
logic
specific tactics
Separati
o
n logic
-
specific tactics
---------------------------------
-
`iFrame (t1 .. tn) "selpat"`
: cancel the Coq terms (or Coq hypotheses)
...
...
@@ -106,10 +106,10 @@ Separating logic specific tactics
Notice that framing spatial hypotheses makes them disappear, but framing Coq
or intuitionistic hypotheses does not make them disappear.
This tactic
finish
es the goal i
n case
everything in the conclusion has been
This tactic
solv
es the goal i
f
everything in the conclusion has been
framed.
-
`iCombine "H1" "H2" as "pat"`
:
turn
s
`H1 : P1`
and
`H2 : P2`
into
`P1 ∗ P2`
,
on which
`iDetruct
...
as pat`
is called
.
-
`iCombine "H1" "H2" as "pat"`
:
combine
s
`H1 : P1`
and
`H2 : P2`
into
`
H:
P1 ∗ P2`
,
then calls
`iDe
s
truct
H
as pat`
on the combined hypothesis
.
Modalities
----------
...
...
@@ -322,12 +322,12 @@ The syntax for the arguments of these tactics, called _proof mode terms_, is:
(H $! t1 ... tn with "spat1 .. spatn")
Here,
`H`
can be
both
a hypothesis
, as well as
a Coq lemma whose conclusion is
Here,
`H`
can be
either
a hypothesis
or
a Coq lemma whose conclusion is
of the shape
`P ⊢ Q`
. In the above,
`t1 ... tn`
are arbitrary Coq terms used
for instantiation of universal quantifiers, and
`spat1 .. spatn`
are
specialization patterns to eliminate implications and wands.
Proof mode terms can be written down using the following short
hand
s
too:
Proof mode terms can be written down using the following shorthand
syntaxes,
too:
(H with "spat1 .. spatn")
(H $! t1 ... tn)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
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!
Save comment
Cancel
Please
register
or
sign in
to comment