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
Simon Friis Vindum
Iris
Commits
58b72e34
Commit
58b72e34
authored
May 19, 2021
by
Ralf Jung
Browse files
rename big_sepL_sepL2 → big_sepL2_sepL (and similar for sepM)
parent
c9154d43
Changes
1
Hide whitespace changes
Inline
Side-by-side
iris/bi/big_op.v
View file @
58b72e34
...
...
@@ -743,19 +743,19 @@ Section sep_list2.
by
rewrite
IH
.
Qed
.
Lemma
big_sepL_sepL
2
(
Φ
1
:
nat
→
A
→
PROP
)
(
Φ
2
:
nat
→
B
→
PROP
)
l1
l2
:
Lemma
big_sepL
2
_sepL
(
Φ
1
:
nat
→
A
→
PROP
)
(
Φ
2
:
nat
→
B
→
PROP
)
l1
l2
:
length
l1
=
length
l2
→
([
∗
list
]
k
↦
y1
;
y2
∈
l1
;
l2
,
Φ
1
k
y1
∗
Φ
2
k
y2
)
⊣
⊢
([
∗
list
]
k
↦
y1
∈
l1
,
Φ
1
k
y1
)
∗
([
∗
list
]
k
↦
y2
∈
l2
,
Φ
2
k
y2
).
Proof
.
intros
.
rewrite
-
big_sepL_sep_zip
//
big_sepL2_alt
pure_True
//
left_id
//.
Qed
.
Lemma
big_sepL_sepL
2
_2
(
Φ
1
:
nat
→
A
→
PROP
)
(
Φ
2
:
nat
→
B
→
PROP
)
l1
l2
:
Lemma
big_sepL
2
_sepL_2
(
Φ
1
:
nat
→
A
→
PROP
)
(
Φ
2
:
nat
→
B
→
PROP
)
l1
l2
:
length
l1
=
length
l2
→
([
∗
list
]
k
↦
y1
∈
l1
,
Φ
1
k
y1
)
-
∗
([
∗
list
]
k
↦
y2
∈
l2
,
Φ
2
k
y2
)
-
∗
[
∗
list
]
k
↦
y1
;
y2
∈
l1
;
l2
,
Φ
1
k
y1
∗
Φ
2
k
y2
.
Proof
.
intros
.
apply
wand_intro_r
.
by
rewrite
big_sepL_sepL
2
.
Qed
.
Proof
.
intros
.
apply
wand_intro_r
.
by
rewrite
big_sepL
2
_sepL
.
Qed
.
Global
Instance
big_sepL2_nil_persistent
Φ
:
Persistent
([
∗
list
]
k
↦
y1
;
y2
∈
[]
;
[],
Φ
k
y1
y2
).
...
...
@@ -1715,19 +1715,19 @@ Section map2.
apply
big_sepM2_mono
.
eauto
.
Qed
.
Lemma
big_sepM_sepM
2
(
Φ
1
:
K
→
A
→
PROP
)
(
Φ
2
:
K
→
B
→
PROP
)
m1
m2
:
Lemma
big_sepM
2
_sepM
(
Φ
1
:
K
→
A
→
PROP
)
(
Φ
2
:
K
→
B
→
PROP
)
m1
m2
:
(
∀
k
,
is_Some
(
m1
!!
k
)
↔
is_Some
(
m2
!!
k
))
→
([
∗
map
]
k
↦
y1
;
y2
∈
m1
;
m2
,
Φ
1
k
y1
∗
Φ
2
k
y2
)
⊣
⊢
([
∗
map
]
k
↦
y1
∈
m1
,
Φ
1
k
y1
)
∗
([
∗
map
]
k
↦
y2
∈
m2
,
Φ
2
k
y2
).
Proof
.
intros
.
rewrite
-
big_sepM_sep_zip
//
big_sepM2_alt
pure_True
//
left_id
//.
Qed
.
Lemma
big_sepM_sepM
2
_2
(
Φ
1
:
K
→
A
→
PROP
)
(
Φ
2
:
K
→
B
→
PROP
)
m1
m2
:
Lemma
big_sepM
2
_sepM_2
(
Φ
1
:
K
→
A
→
PROP
)
(
Φ
2
:
K
→
B
→
PROP
)
m1
m2
:
(
∀
k
,
is_Some
(
m1
!!
k
)
↔
is_Some
(
m2
!!
k
))
→
([
∗
map
]
k
↦
y1
∈
m1
,
Φ
1
k
y1
)
-
∗
([
∗
map
]
k
↦
y2
∈
m2
,
Φ
2
k
y2
)
-
∗
[
∗
map
]
k
↦
y1
;
y2
∈
m1
;
m2
,
Φ
1
k
y1
∗
Φ
2
k
y2
.
Proof
.
intros
.
apply
wand_intro_r
.
by
rewrite
big_sepM_sepM
2
.
Qed
.
Proof
.
intros
.
apply
wand_intro_r
.
by
rewrite
big_sepM
2
_sepM
.
Qed
.
Global
Instance
big_sepM2_empty_persistent
Φ
:
Persistent
([
∗
map
]
k
↦
y1
;
y2
∈
∅
;
∅
,
Φ
k
y1
y2
).
...
...
Write
Preview
Supports
Markdown
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