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
Jonas Kastberg
iris
Commits
5d74ded9
Commit
5d74ded9
authored
Nov 15, 2017
by
Robbert Krebbers
Browse files
Use `Φ` and `Ψ` for predicates in saved_prop as we do everywhere.
parent
ec0816bf
Changes
1
Hide whitespace changes
Inline
Side-by-side
theories/base_logic/lib/saved_prop.v
View file @
5d74ded9
...
...
@@ -81,23 +81,23 @@ Qed.
Notation
savedPredG
Σ
A
:
=
(
savedAnythingG
Σ
(
constCF
A
-
n
>
▶
∙
)).
Notation
savedPred
Σ
A
:
=
(
savedAnything
Σ
(
constCF
A
-
n
>
▶
∙
)).
Definition
saved_pred_own
`
{
savedPredG
Σ
A
}
(
γ
:
gname
)
(
f
:
A
-
n
>
iProp
Σ
)
:
=
saved_anything_own
(
F
:
=
A
-
n
>
▶
∙
)
γ
(
CofeMor
Next
◎
f
).
Definition
saved_pred_own
`
{
savedPredG
Σ
A
}
(
γ
:
gname
)
(
Φ
:
A
-
n
>
iProp
Σ
)
:
=
saved_anything_own
(
F
:
=
A
-
n
>
▶
∙
)
γ
(
CofeMor
Next
◎
Φ
).
Lemma
saved_pred_alloc_strong
`
{
savedPredG
Σ
A
}
(
G
:
gset
gname
)
(
f
:
A
-
n
>
iProp
Σ
)
:
(|==>
∃
γ
,
⌜γ
∉
G
⌝
∧
saved_pred_own
γ
f
)%
I
.
Lemma
saved_pred_alloc_strong
`
{
savedPredG
Σ
A
}
(
G
:
gset
gname
)
(
Φ
:
A
-
n
>
iProp
Σ
)
:
(|==>
∃
γ
,
⌜γ
∉
G
⌝
∧
saved_pred_own
γ
Φ
)%
I
.
Proof
.
iApply
saved_anything_alloc_strong
.
Qed
.
Lemma
saved_pred_alloc
`
{
savedPredG
Σ
A
}
(
f
:
A
-
n
>
iProp
Σ
)
:
(|==>
∃
γ
,
saved_pred_own
γ
f
)%
I
.
Lemma
saved_pred_alloc
`
{
savedPredG
Σ
A
}
(
Φ
:
A
-
n
>
iProp
Σ
)
:
(|==>
∃
γ
,
saved_pred_own
γ
Φ
)%
I
.
Proof
.
iApply
saved_anything_alloc
.
Qed
.
(* We put the `x` on the outside to make this lemma easier to apply. *)
Lemma
saved_pred_agree
`
{
savedPredG
Σ
A
}
γ
f
g
x
:
saved_pred_own
γ
f
-
∗
saved_pred_own
γ
g
-
∗
▷
(
f
x
≡
g
x
).
Lemma
saved_pred_agree
`
{
savedPredG
Σ
A
}
γ
Φ
Ψ
x
:
saved_pred_own
γ
Φ
-
∗
saved_pred_own
γ
Ψ
-
∗
▷
(
Φ
x
≡
Ψ
x
).
Proof
.
iIntros
"H
x
H
y
"
.
unfold
saved_pred_own
.
iApply
later_equivI
.
iDestruct
(
ofe_morC_equivI
(
CofeMor
Next
◎
f
)
(
CofeMor
Next
◎
g
))
as
"[FE _]"
.
iIntros
"H
Φ
H
Ψ
"
.
unfold
saved_pred_own
.
iApply
later_equivI
.
iDestruct
(
ofe_morC_equivI
(
CofeMor
Next
◎
Φ
)
(
CofeMor
Next
◎
Ψ
))
as
"[FE _]"
.
simpl
.
iApply
(
"FE"
with
"[-]"
).
iApply
(
saved_anything_agree
with
"H
x
H
y
"
).
iApply
(
saved_anything_agree
with
"H
Φ
H
Ψ
"
).
Qed
.
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