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
Iris
Iris
Commits
581983b4
Commit
581983b4
authored
Mar 03, 2019
by
Robbert Krebbers
Browse files
Merge branch 'laterN' into 'master'
Allow swapping later^n and forall See merge request
iris/iris!221
parents
b2ae031f
6ae844ab
Pipeline
#15177
passed with stage
in 12 minutes and 5 seconds
Changes
2
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
tests/proofmode.v
View file @
581983b4
...
...
@@ -380,6 +380,11 @@ Proof.
iSpecialize
(
"Hφ"
with
"[% //] HP"
).
done
.
Qed
.
Lemma
demo_laterN_forall
{
A
}
(
Φ
Ψ
:
A
→
PROP
)
n
:
(
∀
x
,
▷
^
n
Φ
x
)
-
∗
▷
^
n
(
∀
x
,
Φ
x
).
Proof
.
iIntros
"H"
(
w
).
iApply
(
"H"
$!
w
).
Qed
.
Lemma
test_iNext_laterN_later
P
n
:
▷
▷
^
n
P
-
∗
▷
^
n
▷
P
.
Proof
.
iIntros
"H"
.
iNext
.
by
iNext
.
Qed
.
Lemma
test_iNext_later_laterN
P
n
:
▷
^
n
▷
P
-
∗
▷
▷
^
n
P
.
...
...
theories/proofmode/class_instances_sbi.v
View file @
581983b4
...
...
@@ -301,6 +301,11 @@ Proof. rewrite /IntoExist=> HP. by rewrite HP plainly_exist. Qed.
Global
Instance
into_forall_later
{
A
}
P
(
Φ
:
A
→
PROP
)
:
IntoForall
P
Φ
→
IntoForall
(
▷
P
)
(
λ
a
,
▷
(
Φ
a
))%
I
.
Proof
.
rewrite
/
IntoForall
=>
HP
.
by
rewrite
HP
later_forall
.
Qed
.
Global
Instance
into_forall_laterN
{
A
}
P
(
Φ
:
A
→
PROP
)
n
:
IntoForall
P
Φ
→
IntoForall
(
▷
^
n
P
)
(
λ
a
,
▷
^
n
(
Φ
a
))%
I
.
Proof
.
rewrite
/
IntoForall
=>
HP
.
by
rewrite
HP
laterN_forall
.
Qed
.
Global
Instance
into_forall_except_0
{
A
}
P
(
Φ
:
A
→
PROP
)
:
IntoForall
P
Φ
→
IntoForall
(
◇
P
)
(
λ
a
,
◇
(
Φ
a
))%
I
.
Proof
.
rewrite
/
IntoForall
=>
HP
.
by
rewrite
HP
except_0_forall
.
Qed
.
...
...
@@ -313,6 +318,11 @@ Proof. rewrite /IntoForall=> HP. by rewrite HP plainly_forall. Qed.
Global
Instance
from_forall_later
{
A
}
P
(
Φ
:
A
→
PROP
)
:
FromForall
P
Φ
→
FromForall
(
▷
P
)%
I
(
λ
a
,
▷
(
Φ
a
))%
I
.
Proof
.
rewrite
/
FromForall
=>
<-.
by
rewrite
later_forall
.
Qed
.
Global
Instance
from_forall_laterN
{
A
}
P
(
Φ
:
A
→
PROP
)
n
:
FromForall
P
Φ
→
FromForall
(
▷
^
n
P
)%
I
(
λ
a
,
▷
^
n
(
Φ
a
))%
I
.
Proof
.
rewrite
/
FromForall
=>
<-.
by
rewrite
laterN_forall
.
Qed
.
Global
Instance
from_forall_except_0
{
A
}
P
(
Φ
:
A
→
PROP
)
:
FromForall
P
Φ
→
FromForall
(
◇
P
)%
I
(
λ
a
,
◇
(
Φ
a
))%
I
.
Proof
.
rewrite
/
FromForall
=>
<-.
by
rewrite
except_0_forall
.
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