proposition: Lemma Forall_app_eq : forall P l1 l2, Forall P (l1 ++ l2) = (Forall P l1 /\ Forall P l2).
proof: Proof. Proof using. intros. extens. induction l1; rew_list. { autos*. } { iff M (M1&M2). { inverts* M. } { inverts* M1. } } Qed.
imports: Coq.Classes.Morphisms TLC(LibTactics LibLogic LibReflect LibOperation LibProd LibOption LibNat LibInt LibWf LibMonoid LibRelation)