(***********************************)
(** ** Sequence of natural numbers *)
(***********************************)

(* Specifications: *)
Lemma cons_seq : forall len start, start :: seq (S start) len = seq start (S len).
Lemma length_seq : forall len start, length (seq start len) = len.
Lemma seq_nth : forall len start n d,
n < len -> nth n (seq start len) d = start+n.
Lemma seq_shift : forall len start,
map S (seq start len) = seq (S start) len.
Lemma in_seq len start n :
In n (seq start len) <-> start <= n < start+len.
Lemma seq_NoDup len start : NoDup (seq start len).
Lemma seq_app : forall len1 len2 start,
seq start (len1 + len2) = seq start len1 ++ seq (start + len1) len2.
Lemma seq_S : forall len start, seq start (S len) = seq start len ++ [start + len].
Lemma skipn_seq n start len : skipn n (seq start len) = seq (start+n) (len-n).
Lemma nth_error_seq start len n :
nth_error (seq start len) n =
if Nat.ltb n len then Some (start + n) else None.