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
Rice Wine
Iris
Commits
6da6e6b1
Commit
6da6e6b1
authored
Apr 19, 2016
by
Robbert Krebbers
Browse files
Make levels of viewshifts consistent with implication/wand.
parent
57485cae
Changes
2
Hide whitespace changes
Inline
Side-by-side
program_logic/pviewshifts.v
View file @
6da6e6b1
...
...
@@ -33,13 +33,13 @@ Arguments pvs {_ _} _ _ _%I.
Instance
:
Params
(@
pvs
)
4
.
Notation
"|={ E1 , E2 }=> Q"
:
=
(
pvs
E1
E2
Q
%
I
)
(
at
level
1
99
,
E1
,
E2
at
level
50
,
Q
at
level
200
,
(
at
level
99
,
E1
,
E2
at
level
50
,
Q
at
level
200
,
format
"|={ E1 , E2 }=> Q"
)
:
uPred_scope
.
Notation
"|={ E }=> Q"
:
=
(
pvs
E
E
Q
%
I
)
(
at
level
1
99
,
E
at
level
50
,
Q
at
level
200
,
(
at
level
99
,
E
at
level
50
,
Q
at
level
200
,
format
"|={ E }=> Q"
)
:
uPred_scope
.
Notation
"|==> Q"
:
=
(
pvs
⊤
⊤
Q
%
I
)
(
at
level
1
99
,
Q
at
level
200
,
format
"|==> Q"
)
:
uPred_scope
.
(
at
level
99
,
Q
at
level
200
,
format
"|==> Q"
)
:
uPred_scope
.
Section
pvs
.
Context
{
Λ
:
language
}
{
Σ
:
iFunctor
}.
...
...
program_logic/viewshifts.v
View file @
6da6e6b1
...
...
@@ -8,15 +8,30 @@ Definition vs {Λ Σ} (E1 E2 : coPset) (P Q : iProp Λ Σ) : iProp Λ Σ :=
Arguments
vs
{
_
_
}
_
_
_
%
I
_
%
I
.
Instance
:
Params
(@
vs
)
4
.
Notation
"P ={ E1 , E2 }=> Q"
:
=
(
vs
E1
E2
P
%
I
Q
%
I
)
(
at
level
1
99
,
E1
,
E2
at
level
50
,
(
at
level
99
,
E1
,
E2
at
level
50
,
Q
at
level
200
,
format
"P ={ E1 , E2 }=> Q"
)
:
uPred_scope
.
Notation
"P ={ E1 , E2 }=> Q"
:
=
(
True
⊢
vs
E1
E2
P
%
I
Q
%
I
)
(
at
level
1
99
,
E1
,
E2
at
level
50
,
Notation
"P ={ E1 , E2 }=> Q"
:
=
(
True
⊢
(
P
={
E1
,
E2
}=>
Q
)
%
I
)
(
at
level
99
,
E1
,
E2
at
level
50
,
Q
at
level
200
,
format
"P ={ E1 , E2 }=> Q"
)
:
C_scope
.
Notation
"P ={ E }=> Q"
:
=
(
vs
E
E
P
%
I
Q
%
I
)
(
at
level
199
,
E
at
level
50
,
format
"P ={ E }=> Q"
)
:
uPred_scope
.
Notation
"P ={ E }=> Q"
:
=
(
True
⊢
vs
E
E
P
%
I
Q
%
I
)
(
at
level
199
,
E
at
level
50
,
format
"P ={ E }=> Q"
)
:
C_scope
.
Notation
"P ={ E }=> Q"
:
=
(
P
={
E
,
E
}=>
Q
)%
I
(
at
level
99
,
E
at
level
50
,
Q
at
level
200
,
format
"P ={ E }=> Q"
)
:
uPred_scope
.
Notation
"P ={ E }=> Q"
:
=
(
True
⊢
(
P
={
E
}=>
Q
)%
I
)
(
at
level
99
,
E
at
level
50
,
Q
at
level
200
,
format
"P ={ E }=> Q"
)
:
C_scope
.
Notation
"P <={ E1 , E2 }=> Q"
:
=
((
P
={
E1
,
E2
}=>
Q
)
∧
(
Q
={
E2
,
E1
}=>
P
))%
I
(
at
level
99
,
E1
,
E2
at
level
50
,
Q
at
level
200
,
format
"P <={ E1 , E2 }=> Q"
)
:
uPred_scope
.
Notation
"P <={ E1 , E2 }=> Q"
:
=
(
True
⊢
(
P
<={
E1
,
E2
}=>
Q
)%
I
)
(
at
level
99
,
E1
,
E2
at
level
50
,
Q
at
level
200
,
format
"P <={ E1 , E2 }=> Q"
)
:
C_scope
.
Notation
"P <={ E }=> Q"
:
=
(
P
<={
E
,
E
}=>
Q
)%
I
(
at
level
99
,
E
at
level
50
,
Q
at
level
200
,
format
"P <={ E }=> Q"
)
:
uPred_scope
.
Notation
"P <={ E }=> Q"
:
=
(
True
⊢
(
P
<={
E
}=>
Q
)%
I
)
(
at
level
99
,
E
at
level
50
,
Q
at
level
200
,
format
"P <={ E }=> Q"
)
:
C_scope
.
Section
vs
.
Context
{
Λ
:
language
}
{
Σ
:
iFunctor
}.
...
...
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