Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Jonas Kastberg
iris
Commits
2638b55d
Commit
2638b55d
authored
Apr 03, 2020
by
Robbert Krebbers
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Make `Excl_included` and `Excl_includedN` bi-implications.
parent
5ea9eab2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
10 additions
and
6 deletions
+10
-6
theories/algebra/excl.v
theories/algebra/excl.v
+8
-4
theories/program_logic/ownp.v
theories/program_logic/ownp.v
+2
-2
No files found.
theories/algebra/excl.v
View file @
2638b55d
...
...
@@ -118,10 +118,14 @@ Proof. by destruct mx. Qed.
Lemma
excl_validN_inv_r
n
mx
a
:
✓
{
n
}
(
mx
⋅
Excl'
a
)
→
mx
=
None
.
Proof
.
by
destruct
mx
.
Qed
.
Lemma
Excl_includedN
n
a
b
:
Excl'
a
≼
{
n
}
Excl'
b
→
a
≡
{
n
}
≡
b
.
Proof
.
by
intros
[[
c
|]
Hb
%(
inj
Some
)]
;
inversion_clear
Hb
.
Qed
.
Lemma
Excl_included
a
b
:
Excl'
a
≼
Excl'
b
→
a
≡
b
.
Proof
.
by
intros
[[
c
|]
Hb
%(
inj
Some
)]
;
inversion_clear
Hb
.
Qed
.
Lemma
Excl_includedN
n
a
b
:
Excl'
a
≼
{
n
}
Excl'
b
↔
a
≡
{
n
}
≡
b
.
Proof
.
split
;
[|
by
intros
->].
by
intros
[[
c
|]
Hb
%(
inj
Some
)]
;
inversion_clear
Hb
.
Qed
.
Lemma
Excl_included
a
b
:
Excl'
a
≼
Excl'
b
↔
a
≡
b
.
Proof
.
split
;
[|
by
intros
->].
by
intros
[[
c
|]
Hb
%(
inj
Some
)]
;
inversion_clear
Hb
.
Qed
.
End
excl
.
Arguments
exclO
:
clear
implicits
.
...
...
theories/program_logic/ownp.v
View file @
2638b55d
...
...
@@ -90,8 +90,8 @@ Section lifting.
Lemma
ownP_eq
σ
1
σ
2
κ
s
n
:
state_interp
σ
1
κ
s
n
-
∗
ownP
σ
2
-
∗
⌜σ
1
=
σ
2
⌝
.
Proof
.
iIntros
"Hσ● Hσ◯"
.
rewrite
/
ownP
.
iDestruct
(
own_valid_2
with
"Hσ● Hσ◯"
)
as
%[
Hps
_
]%
auth_both_valid
.
by
pose
proof
(
leibniz_equiv
_
_
(
Excl_included
_
_
Hps
))
as
->
.
by
iDestruct
(
own_valid_2
with
"Hσ● Hσ◯"
)
as
%[->%
Excl_included
_
]%
auth_both_valid
.
Qed
.
Lemma
ownP_state_twice
σ
1
σ
2
:
ownP
σ
1
∗
ownP
σ
2
⊢
False
.
Proof
.
rewrite
/
ownP
-
own_op
own_valid
.
by
iIntros
(?).
Qed
.
...
...
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