Implicit Types (s : seq S) (t : forall x, seq (T x)).

(* Specifications: *)
Lemma allsigs_cat s1 s2 t : allsigs (s1 ++ s2) t = allsigs s1 t ++ allsigs s2 t.
Lemma allsigs_comp S (T : S -> Type) R R' (f : forall x, T x -> R) (g : R -> R') s t : allsigs (fun x y => g (f x y)) s t = map g (allsigs f s t).