fact: Fixpoint ncprod_def n : finGroupType := if n is n'.+1 then xcprod G [set: ncprod_def n'] else subg_of 'Z(G).
imports: mathcomp(ssreflect ssrbool ssrfun eqtype ssrnat seq div) mathcomp(fintype bigop finset fingroup morphism perm) mathcomp(automorphism quotient action gproduct gfunctor) mathcomp(cyclic)