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
Rice Wine
Iris
Commits
4d1ef598
Commit
4d1ef598
authored
Jan 10, 2018
by
Robbert Krebbers
Browse files
Clean up basic defs on `stuckness`.
parent
8bccbcc9
Changes
1
Hide whitespace changes
Inline
Side-by-side
theories/program_logic/weakestpre.v
View file @
4d1ef598
...
...
@@ -13,16 +13,14 @@ Notation irisG Λ Σ := (irisG' (state Λ) Σ).
Inductive
stuckness
:
=
NotStuck
|
MaybeStuck
.
Definition
stuckness_le
(
s1
s2
:
stuckness
)
:
bool
:
=
Definition
stuckness_le
b
(
s1
s2
:
stuckness
)
:
bool
:
=
match
s1
,
s2
with
|
MaybeStuck
,
NotStuck
=>
false
|
_
,
_
=>
true
end
.
Instance
:
PreOrder
stuckness_le
.
Proof
.
split
;
first
by
case
.
move
=>
s1
s2
s3
.
by
case
:
s1
;
case
:
s2
;
case
:
s3
.
Qed
.
Instance
:
SqSubsetEq
stuckness
:
=
stuckness_le
.
Instance
stuckness_le
:
SqSubsetEq
stuckness
:
=
stuckness_leb
.
Instance
stuckness_le_po
:
PreOrder
stuckness_le
.
Proof
.
split
;
by
repeat
intros
[].
Qed
.
Definition
stuckness_to_atomicity
(
s
:
stuckness
)
:
atomicity
:
=
if
s
is
MaybeStuck
then
StronglyAtomic
else
WeaklyAtomic
.
...
...
@@ -45,7 +43,7 @@ Proof.
repeat
(
f_contractive
||
f_equiv
)
;
apply
Hwp
.
Qed
.
Definition
wp_def
`
{
irisG
Λ
Σ
}
s
:
Definition
wp_def
`
{
irisG
Λ
Σ
}
(
s
:
stuckness
)
:
coPset
→
expr
Λ
→
(
val
Λ
→
iProp
Σ
)
→
iProp
Σ
:
=
fixpoint
(
wp_pre
s
).
Definition
wp_aux
:
seal
(@
wp_def
).
by
eexists
.
Qed
.
Definition
wp
:
=
unseal
wp_aux
.
...
...
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