proposition: Lemma fold_one : forall m f x, Monoid m -> fold m f (x::nil) = f x.
proof: Proof. Proof using. intros. rewrite fold_cons, fold_nil. rewrite~ monoid_neutral_r. Qed.
imports: Coq.Classes.Morphisms TLC(LibTactics LibLogic LibReflect LibOperation LibProd LibOption LibNat LibInt LibWf LibMonoid LibRelation)