proposition: Lemma setIrelS z: (alls z symmetricp) -> symmetricp (intersection z).
proof: Proof. move=> alls; case: (emptyset_dichot z). move ->; rewrite setI_0 => a b; case; case. move=>nez x y /(setIrel_P nez) rxy; apply/(setIrel_P nez) => r rz. apply: ((alls _ rz) _ _ (rxy _ rz)). Qed.
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat)