proposition: Lemma cycle_type1 : cycle_type 1%g = colpartn #|T|.
proof: Proof. apply (colpartnP (x0 := 1)); rewrite /= /setpart_shape. set l := sort _ _; case: (ltnP 0 (size l)) => [|]; last by rewrite leqn0 => /nilP ->. rewrite -nth0 {}/l => /(mem_nth 1). rewrite mem_sort => /mapP[/= S]. rewrite mem_enum => /imsetP[x _ ->{S}] ->. have /eqP : (1%g : {perm T}) x = x by rewrite perm1. rewrite porbit_fix => /eqP ->. by rewrite cards1. Qed.
imports: mathcomp.ssreflect.ssreflect mathcomp(ssrfun ssrbool eqtype ssrnat seq choice fintype) mathcomp(tuple finfun finset path bigop) mathcomp(fingroup perm action) mathcomp(ssralg matrix mxalgebra algC classfun) partition tools sorted permcomp fibered_set cycles