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
Rodolphe Lepigre
Iris
Commits
b0ed7748
Commit
b0ed7748
authored
May 29, 2016
by
Robbert Krebbers
Browse files
Add notation iPrePropG.
parent
f69e44a9
Changes
3
Hide whitespace changes
Inline
Side-by-side
program_logic/global_functor.v
View file @
b0ed7748
...
...
@@ -20,6 +20,7 @@ Definition gname := positive.
Definition
globalF
(
Σ
:
gFunctors
)
:
iFunctor
:
=
IFunctor
(
iprodURF
(
λ
i
,
gmapURF
gname
(
projT2
Σ
i
))).
Notation
iPropG
Λ
Σ
:
=
(
iProp
Λ
(
globalF
Σ
)).
Notation
iPrePropG
Λ
Σ
:
=
(
iPreProp
Λ
(
globalF
Σ
)).
Class
inG
(
Λ
:
language
)
(
Σ
:
gFunctors
)
(
A
:
cmraT
)
:
=
InG
{
inG_id
:
gid
Σ
;
...
...
@@ -114,7 +115,7 @@ their first argument to avoid loops. For example, the instances [authGF_inGF]
and [auth_identity] otherwise create a cycle that pops up arbitrarily. *)
Hint
Mode
inGF
+
+
-
:
typeclass_instances
.
Lemma
inGF_inG
`
{
inGF
Λ
Σ
F
}
:
inG
Λ
Σ
(
F
(
iPreProp
Λ
(
globalF
Σ
)
)).
Lemma
inGF_inG
`
{
inGF
Λ
Σ
F
}
:
inG
Λ
Σ
(
F
(
iPreProp
G
Λ
Σ
)).
Proof
.
exists
inGF_id
.
by
rewrite
-
inGF_prf
.
Qed
.
Instance
inGF_here
{
Λ
Σ
}
(
F
:
gFunctor
)
:
inGF
Λ
(
gFunctors
.
cons
F
Σ
)
F
.
Proof
.
by
exists
0
%
fin
.
Qed
.
...
...
program_logic/saved_one_shot.v
View file @
b0ed7748
...
...
@@ -3,7 +3,7 @@ From iris.program_logic Require Export ghost_ownership.
Import
uPred
.
Class
oneShotG
(
Λ
:
language
)
(
Σ
:
gFunctors
)
(
F
:
cFunctor
)
:
=
one_shot_inG
:
>
inG
Λ
Σ
(
one_shotR
$
agreeR
$
laterC
$
F
(
iPreProp
Λ
(
globalF
Σ
)
)).
one_shot_inG
:
>
inG
Λ
Σ
(
one_shotR
$
agreeR
$
laterC
$
F
(
iPreProp
G
Λ
Σ
)).
Definition
oneShotGF
(
F
:
cFunctor
)
:
gFunctor
:
=
GFunctor
(
one_shotRF
(
agreeRF
(
▶
F
))).
Instance
inGF_oneShotG
`
{
inGF
Λ
Σ
(
oneShotGF
F
)}
:
oneShotG
Λ
Σ
F
.
...
...
program_logic/saved_prop.v
View file @
b0ed7748
...
...
@@ -3,7 +3,7 @@ From iris.program_logic Require Export ghost_ownership.
Import
uPred
.
Class
savedPropG
(
Λ
:
language
)
(
Σ
:
gFunctors
)
(
F
:
cFunctor
)
:
=
saved_prop_inG
:
>
inG
Λ
Σ
(
agreeR
(
laterC
(
F
(
iPreProp
Λ
(
globalF
Σ
)
)))).
saved_prop_inG
:
>
inG
Λ
Σ
(
agreeR
(
laterC
(
F
(
iPreProp
G
Λ
Σ
)))).
Definition
savedPropGF
(
F
:
cFunctor
)
:
gFunctor
:
=
GFunctor
(
agreeRF
(
▶
F
)).
Instance
inGF_savedPropG
`
{
inGF
Λ
Σ
(
savedPropGF
F
)}
:
savedPropG
Λ
Σ
F
.
...
...
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