Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
coq-stdpp
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
David Swasey
coq-stdpp
Commits
953a4d67
Commit
953a4d67
authored
May 31, 2016
by
Robbert Krebbers
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Some properties about set disjointness.
parent
ef34a1da
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
0 deletions
+19
-0
theories/collections.v
theories/collections.v
+19
-0
No files found.
theories/collections.v
View file @
953a4d67
...
...
@@ -41,6 +41,25 @@ Section simple_collection.
Lemma
elem_of_disjoint
X
Y
:
X
⊥
Y
↔
∀
x
,
x
∈
X
→
x
∈
Y
→
False
.
Proof
.
done
.
Qed
.
Global
Instance
disjoint_sym
:
Symmetric
(@
disjoint
C
_
).
Proof
.
intros
??.
rewrite
!
elem_of_disjoint
;
naive_solver
.
Qed
.
Lemma
disjoint_empty_l
Y
:
∅
⊥
Y
.
Proof
.
rewrite
elem_of_disjoint
;
intros
x
;
by
rewrite
elem_of_empty
.
Qed
.
Lemma
disjoint_empty_r
X
:
X
⊥
∅
.
Proof
.
rewrite
(
symmetry_iff
_
)
;
apply
disjoint_empty_l
.
Qed
.
Lemma
disjoint_singleton_l
x
Y
:
{[
x
]}
⊥
Y
↔
x
∉
Y
.
Proof
.
rewrite
elem_of_disjoint
;
setoid_rewrite
elem_of_singleton
;
naive_solver
.
Qed
.
Lemma
disjoint_singleton_r
y
X
:
X
⊥
{[
y
]}
↔
y
∉
X
.
Proof
.
rewrite
(
symmetry_iff
(
⊥
)).
apply
disjoint_singleton_l
.
Qed
.
Lemma
disjoint_union_l
X1
X2
Y
:
X1
∪
X2
⊥
Y
↔
X1
⊥
Y
∧
X2
⊥
Y
.
Proof
.
rewrite
!
elem_of_disjoint
;
setoid_rewrite
elem_of_union
;
naive_solver
.
Qed
.
Lemma
disjoint_union_r
X
Y1
Y2
:
X
⊥
Y1
∪
Y2
↔
X
⊥
Y1
∧
X
⊥
Y2
.
Proof
.
rewrite
!(
symmetry_iff
(
⊥
)
X
).
apply
disjoint_union_l
.
Qed
.
Lemma
collection_positive_l
X
Y
:
X
∪
Y
≡
∅
→
X
≡
∅
.
Proof
.
rewrite
!
elem_of_equiv_empty
.
setoid_rewrite
elem_of_union
.
naive_solver
.
...
...
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