proposition: Lemma big_filter : forall r (P : pred I) F, \big[op/idx]_(i <- filter P r) F i === \big[op/idx]_(i <- r | P i) F i.
proof: Proof. by move=> r P F; elim: r; try reflexivity; move=> i r //=; case (P i); move=> Heq; rewrite <- Heq; reflexivity. Qed.
imports: ssreflect ssrbool ssrfun eqtype ssrnat seq div choice fintype finfun paths Setoid Morphisms OperationClasses bigops