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
Tej Chajed
stdpp
Commits
c1c25def
Commit
c1c25def
authored
Nov 11, 2018
by
Robbert Krebbers
Browse files
More results about filter on map.
- Interaction with delete - Make name about map interacting with insert consistent.
parent
1f91278f
Changes
1
Hide whitespace changes
Inline
Side-by-side
theories/fin_maps.v
View file @
c1c25def
...
...
@@ -1064,8 +1064,8 @@ Section map_Filter.
rewrite
!
map_filter_lookup_Some
.
naive_solver
.
Qed
.
Lemma
map_filter_
lookup_
insert
m
i
x
:
P
(
i
,
x
)
→
<[
i
:
=
x
]>
(
filter
P
m
)
=
filter
P
(<[
i
:
=
x
]>
m
).
Lemma
map_filter_insert
m
i
x
:
P
(
i
,
x
)
→
filter
P
(<[
i
:
=
x
]>
m
)
=
<[
i
:
=
x
]>
(
filter
P
m
).
Proof
.
intros
HP
.
apply
map_eq
.
intros
j
.
apply
option_eq
;
intros
y
.
destruct
(
decide
(
j
=
i
))
as
[->|?].
...
...
@@ -1074,6 +1074,15 @@ Section map_Filter.
naive_solver
.
Qed
.
Lemma
map_filter_delete
m
i
:
filter
P
(
delete
i
m
)
=
delete
i
(
filter
P
m
).
Proof
.
apply
map_eq
.
intros
j
.
apply
option_eq
;
intros
y
.
destruct
(
decide
(
j
=
i
))
as
[->|?].
-
rewrite
map_filter_lookup_Some
,
!
lookup_delete
.
naive_solver
.
-
rewrite
lookup_delete_ne
,
!
map_filter_lookup_Some
,
lookup_delete_ne
by
done
.
naive_solver
.
Qed
.
Lemma
map_filter_empty
:
filter
P
(
∅
:
M
A
)
=
∅
.
Proof
.
apply
map_fold_empty
.
Qed
.
End
map_Filter
.
...
...
Write
Preview
Supports
Markdown
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