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
Iris
Iris
Commits
1aac61c4
Commit
1aac61c4
authored
Sep 23, 2016
by
Robbert Krebbers
Browse files
Insert and singleton maps are non-empty.
parent
01904806
Changes
1
Hide whitespace changes
Inline
Side-by-side
prelude/fin_maps.v
View file @
1aac61c4
...
...
@@ -475,6 +475,10 @@ Proof.
Qed
.
Lemma
insert_empty
{
A
}
i
(
x
:
A
)
:
<[
i
:
=
x
]>
∅
=
{[
i
:
=
x
]}.
Proof
.
done
.
Qed
.
Lemma
insert_non_empty
{
A
}
(
m
:
M
A
)
i
x
:
<[
i
:
=
x
]>
m
≠
∅
.
Proof
.
intros
Hi
%(
f_equal
(!!
i
)).
by
rewrite
lookup_insert
,
lookup_empty
in
Hi
.
Qed
.
(** ** Properties of the singleton maps *)
Lemma
lookup_singleton_Some
{
A
}
i
j
(
x
y
:
A
)
:
...
...
@@ -510,6 +514,8 @@ Proof.
intros
.
apply
map_eq
;
intros
i'
.
by
destruct
(
decide
(
i
=
i'
))
as
[->|?]
;
rewrite
?lookup_alter
,
?lookup_singleton_ne
,
?lookup_alter_ne
by
done
.
Qed
.
Lemma
singleton_non_empty
{
A
}
i
(
x
:
A
)
:
{[
i
:
=
x
]}
≠
∅
.
Proof
.
apply
insert_non_empty
.
Qed
.
(** ** Properties of the map operations *)
Lemma
fmap_empty
{
A
B
}
(
f
:
A
→
B
)
:
f
<$>
∅
=
∅
.
...
...
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