proposition: Lemma filter_all_true : forall {A} pred (seq: list A), (forall x, List.In x seq -> pred x = true) -> List.filter pred seq = seq.
proof: Proof. induction seq as [ | head tail IH ]; simpl; trivial. intros all_true. rewrite all_true by eauto. f_equal; intuition. Qed.
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.ZArith.ZArith Coq.Lists.List Coq.Lists.SetoidList Coq.Bool.Bool Fiat.Common Fiat.Common.List.Operations Fiat.Common.Equality Fiat.Common.List.FlattenList Fiat.Common.LogicFacts