proposition: Lemma filter_rev : forall l P, filter P (rev l) = rev (filter P l).
proof: Proof. Proof using. intros. induction l. - rewrite !rev_nil, filter_nil. auto. - rewrite rev_cons, filter_cons, filter_last, IHl. case_if~; rew_listx~. Qed.
imports: Coq.Classes.Morphisms TLC(LibTactics LibLogic LibReflect LibOperation LibProd LibOption LibNat LibInt LibWf LibMonoid LibRelation)