fact: Definition prod_map {A B C : Type} (f : A -> B) (x : C * A) : C * B := match x with (a, b) => (a, f b) end.
imports: Coq.Lists.List Category.Lib Category.Theory.Coq.Functor Category.Theory.Coq.Applicative Category.Theory.Coq.Monad Category.Theory.Coq.Semigroup Category.Theory.Coq.Monoid