End Repeat.
Notation repeat := repeat.

(* Specifications: *)
Lemma repeat_to_concat A n (a:A) :
repeat a n = concat (repeat [a] n).
Lemma map_repeat A B (a:A) n (f : A -> B):
map f (repeat a n) = repeat (f a) n.
Lemma map_const (A B : Type) (b : B) (l : list A) :
map (fun _ => b) l = repeat b (length l).
Lemma fst_list_prod [A B] l l' : map fst (@list_prod A B l l') =
flat_map (fun a => repeat a (length l')) l.