CoFixpoint map (f: A->B) (s: infseq A): infseq B :=
  match s with
    | Cons x s => Cons (f x) (map f s)
  end.

(* Specifications: *)
Lemma map_Cons: forall (f:A->B) x s, map f (Cons x s) = Cons (f x) (map f s).