proposition: Lemma classXE p q : classX p q = setX (classCT p) (classCT q).
proof: Proof. Proof using. apply /setP => /= x; rewrite inE. apply /imsetP/andP => /= [[i _ ] | [/imsetP/=[i1 _ xi1] /imsetP/=[i2 _ xi2]]]. - rewrite prod_conjg /= => -> /=. by split; apply memJ_class; rewrite inE. - exists (i1, i2); first by rewrite inE; apply /andP; split; rewrite inE. by rewrite prod_conjg -xi1{xi1} -xi2{xi2}; case: x => /=. Qed.
imports: HB(structures) mathcomp(all_ssreflect) mathcomp(ssralg fingroup morphism perm gproduct) mathcomp(ssrnum matrix vector mxalgebra algC) mathcomp(classfun character mxrepresentation) tools ordcast partition sorted permcomp cycles cycletype permcent