diff options
author | Jason Gross <jgross@mit.edu> | 2017-03-14 21:09:16 -0400 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2017-03-14 21:09:16 -0400 |
commit | b2e1bc62fc9d572c0a5cb57953b12c7a0ceace4b (patch) | |
tree | 336afcde264f58b060937de8d01e08f2595b7962 /src/Util/ListUtil.v | |
parent | 035b16234945468ce0b50562cb68bd21d27a08b3 (diff) |
Add skipn_skipn
Diffstat (limited to 'src/Util/ListUtil.v')
-rw-r--r-- | src/Util/ListUtil.v | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/Util/ListUtil.v b/src/Util/ListUtil.v index 4d6555778..eb807abda 100644 --- a/src/Util/ListUtil.v +++ b/src/Util/ListUtil.v @@ -765,6 +765,18 @@ Qed. Hint Rewrite @skipn_app : push_skipn. +Lemma skipn_skipn {A} n1 n2 (ls : list A) + : skipn n2 (skipn n1 ls) = skipn (n1 + n2) ls. +Proof. + revert n2 ls; induction n1, ls; + simpl; autorewrite with simpl_skipn; + boring. +Qed. + +Hint Rewrite @skipn_skipn : simpl_skipn. +Hint Rewrite <- @skipn_skipn : push_skipn. +Hint Rewrite @skipn_skipn : pull_skipn. + Lemma firstn_app_inleft : forall {A} n (xs ys : list A), (n <= length xs)%nat -> firstn n (xs ++ ys) = firstn n xs. Proof. @@ -1671,4 +1683,4 @@ Lemma map2_map {A B C A' B'} (f:A -> B -> C) (g:A' -> A) (h:B' -> B) (xs:list A' Proof. revert ys; induction xs; destruct ys; intros; try reflexivity; []. simpl. rewrite IHxs. reflexivity. -Qed.
\ No newline at end of file +Qed. |