Skip to content
GitLab
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
2bea47fc
Commit
2bea47fc
authored
Apr 23, 2022
by
Robbert Krebbers
Browse files
`iRevert` of a pure hypotheses generates a wand instead of implication.
parent
a3bed7ea
Changes
2
Hide whitespace changes
Inline
Side-by-side
iris/proofmode/coq_tactics.v
View file @
2bea47fc
...
...
@@ -170,8 +170,14 @@ Proof.
rewrite
-
persistent_and_affinely_sep_l
.
apply
pure_elim_l
=>
?.
by
rewrite
HQ
.
Qed
.
Lemma
tac_pure_revert
Δ
φ
Q
:
envs_entails
Δ
(
⌜φ⌝
→
Q
)
→
(
φ
→
envs_entails
Δ
Q
).
Proof
.
rewrite
envs_entails_eq
.
intros
H
Δ
?.
by
rewrite
H
Δ
pure_True
//
left_id
.
Qed
.
Lemma
tac_pure_revert
Δ
φ
P
Q
:
FromAffinely
P
⌜
φ
⌝
→
envs_entails
Δ
(
P
-
∗
Q
)
→
(
φ
→
envs_entails
Δ
Q
).
Proof
.
rewrite
/
FromAffinely
envs_entails_eq
.
intros
<-
->
?.
by
rewrite
pure_True
//
affinely_True_emp
affinely_emp
left_id
.
Qed
.
(** * Intuitionistic *)
Lemma
tac_intuitionistic
Δ
i
j
p
P
P'
Q
:
...
...
iris/proofmode/ltac_tactics.v
View file @
2bea47fc
...
...
@@ -651,7 +651,10 @@ Local Tactic Notation "iForallRevert" ident(x) :=
first
[
let
A
:
=
type
of
x
in
idtac
|
fail
1
"iRevert:"
x
"not in scope"
]
;
let
A
:
=
type
of
x
in
lazymatch
type
of
A
with
|
Prop
=>
revert
x
;
first
[
apply
tac_pure_revert
|
err
x
]
|
Prop
=>
revert
x
;
first
[
eapply
tac_pure_revert
;
[
iSolveTC
(* [FromAffinely], should never fail *)
|]
|
err
x
]
|
_
=>
revert
x
;
first
[
apply
tac_forall_revert
|
err
x
]
end
.
...
...
Write
Preview
Supports
Markdown
0%
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!
Cancel
Please
register
or
sign in
to comment