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
Rice Wine
Iris
Commits
4eb6e55d
Commit
4eb6e55d
authored
Jan 16, 2018
by
Jacques-Henri Jourdan
Browse files
AddModal instances for except0 and later, to recover the old behavior
parent
1622b639
Changes
1
Hide whitespace changes
Inline
Side-by-side
theories/proofmode/class_instances.v
View file @
4eb6e55d
...
...
@@ -868,16 +868,16 @@ Proof.
intros
.
rewrite
/
ElimModal
(
except_0_intro
(
_
-
∗
_
)).
by
rewrite
-
except_0_sep
wand_elim_r
.
Qed
.
Global
Instance
elim_modal_timeless
_bupd
P
Q
:
Global
Instance
elim_modal_
later_
timeless
P
Q
:
Timeless
P
→
IsExcept0
Q
→
ElimModal
(
▷
P
)
P
Q
Q
.
Proof
.
intros
.
rewrite
/
ElimModal
(
except_0_intro
(
_
-
∗
_
))
(
timeless
P
).
by
rewrite
-
except_0_sep
wand_elim_r
.
Qed
.
Global
Instance
elim_modal_timeless
_bupd'
p
P
Q
:
Global
Instance
elim_modal_
later_if_
timeless
p
P
Q
:
Timeless
P
→
IsExcept0
Q
→
ElimModal
(
▷
?p
P
)
P
Q
Q
.
Proof
.
destruct
p
;
simpl
;
auto
using
elim_modal_timeless
_bupd
.
destruct
p
;
simpl
;
auto
using
elim_modal_
later_
timeless
.
intros
_
_
.
by
rewrite
/
ElimModal
wand_elim_r
.
Qed
.
...
...
@@ -896,6 +896,30 @@ Qed.
Global
Instance
add_modal_bupd
P
Q
:
AddModal
(|==>
P
)
P
(|==>
Q
).
Proof
.
by
rewrite
/
AddModal
bupd_frame_r
wand_elim_r
bupd_trans
.
Qed
.
(* High priority to add a ▷ rather than a ◇ when P is timeless. *)
Global
Instance
add_modal_later_except_0
P
Q
:
Timeless
P
→
AddModal
(
▷
P
)
P
(
◇
Q
)
|
0
.
Proof
.
intros
.
rewrite
/
AddModal
(
except_0_intro
(
_
-
∗
_
))
(
timeless
P
).
by
rewrite
-
except_0_sep
wand_elim_r
except_0_idemp
.
Qed
.
Global
Instance
add_modal_later
P
Q
:
Timeless
P
→
AddModal
(
▷
P
)
P
(
▷
Q
)
|
0
.
Proof
.
intros
.
rewrite
/
AddModal
(
except_0_intro
(
_
-
∗
_
))
(
timeless
P
).
by
rewrite
-
except_0_sep
wand_elim_r
except_0_later
.
Qed
.
Global
Instance
add_modal_except_0
P
Q
:
AddModal
(
◇
P
)
P
(
◇
Q
).
Proof
.
intros
.
rewrite
/
AddModal
(
except_0_intro
(
_
-
∗
_
)).
by
rewrite
-
except_0_sep
wand_elim_r
except_0_idemp
.
Qed
.
Global
Instance
add_modal_except_0_later
P
Q
:
AddModal
(
◇
P
)
P
(
▷
Q
).
Proof
.
intros
.
rewrite
/
AddModal
(
except_0_intro
(
_
-
∗
_
)).
by
rewrite
-
except_0_sep
wand_elim_r
except_0_later
.
Qed
.
(** IsExcept0 *)
Global
Instance
is_except_0_except_0
P
:
IsExcept0
(
◇
P
).
Proof
.
by
rewrite
/
IsExcept0
except_0_idemp
.
Qed
.
...
...
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