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
b3c56843
Commit
b3c56843
authored
Dec 15, 2015
by
Robbert Krebbers
Browse files
Comments on valid timeless.
parent
19802e32
Changes
2
Hide whitespace changes
Inline
Side-by-side
modures/cmra.v
View file @
b3c56843
...
...
@@ -83,7 +83,9 @@ Definition cmra_update `{Op A, ValidN A} (x y : A) := ∀ z n,
Infix
"⇝"
:
=
cmra_update
(
at
level
70
).
Instance
:
Params
(@
cmra_update
)
3
.
(** Timeless elements *)
(** Timeless validity *)
(* Not sure whether this is useful, see the rule [uPred_valid_elim_timeless]
in logic.v *)
Class
ValidTimeless
`
{
Valid
A
,
ValidN
A
}
(
x
:
A
)
:
=
valid_timeless
:
validN
1
x
→
valid
x
.
Arguments
valid_timeless
{
_
_
_
}
_
{
_
}
_
.
...
...
@@ -128,7 +130,7 @@ Qed.
Lemma
cmra_unit_valid
x
n
:
✓
{
n
}
x
→
✓
{
n
}
(
unit
x
).
Proof
.
rewrite
<-(
cmra_unit_l
x
)
at
1
;
apply
cmra_valid_op_l
.
Qed
.
(* Timeless *)
(*
* *
Timeless *)
Lemma
cmra_timeless_included_l
`
{!
CMRAExtend
A
}
x
y
:
Timeless
x
→
✓
{
1
}
y
→
x
≼
{
1
}
y
→
x
≼
y
.
Proof
.
...
...
modures/logic.v
View file @
b3c56843
...
...
@@ -694,7 +694,7 @@ Proof.
Qed
.
Lemma
uPred_valid_intro
(
a
:
M
)
:
✓
a
→
True
%
I
⊆
(
✓
a
)%
I
.
Proof
.
by
intros
?
x
n
?
_;
simpl
;
apply
cmra_valid_validN
.
Qed
.
Lemma
uPred_valid_elim_timess
(
a
:
M
)
:
Lemma
uPred_valid_elim_time
le
ss
(
a
:
M
)
:
ValidTimeless
a
→
¬
✓
a
→
(
✓
a
)%
I
⊆
False
%
I
.
Proof
.
intros
?
Hvalid
x
[|
n
]
??
;
[
done
|
apply
Hvalid
].
...
...
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