End IrrClass.
Arguments cfReg {gT} B%g.
Prenex Implicits cfIirr irrK.
Arguments irrP {gT G xi}.
Arguments irr_reprP {gT G xi}.
Arguments irr_inj {gT G} [x1 x2].
Section IsChar.
Variable gT : finGroupType.
Definition character {G : {set gT}} :=
[qualify a phi : 'CF(G) | [forall i, coord (irr G) i phi \in Cnat]].
Fact character_key G : pred_key (@character G). Proof. by []. Qed.
Canonical character_keyed G := KeyedQualifier (character_key G).
Variable G : {group gT}.
Implicit Types (phi chi xi : 'CF(G)) (i : Iirr G).

Lemma char_sum_irrP {phi} :
reflect (exists n, phi = \sum_i (n i)%:R *: 'chi_i) (phi \is a character).