Library mathcomp.character.inertia
- -
-(* (c) Copyright 2006-2016 Microsoft Corporation and Inria.
- Distributed under the terms of CeCILL-B. *)
- -
-Set Implicit Arguments.
- -
-Import GroupScope GRing.Theory Num.Theory.
-Local Open Scope ring_scope.
- -
-
-
-- Distributed under the terms of CeCILL-B. *)
- -
-Set Implicit Arguments.
- -
-Import GroupScope GRing.Theory Num.Theory.
-Local Open Scope ring_scope.
- -
-
- This file contains the definitions and properties of inertia groups:
- (phi ^ y)%CF == the y-conjugate of phi : 'CF(G), i.e., the class
- function mapping x ^ y to phi x provided y normalises G.
- We take (phi ^ y)%CF = phi when y \notin 'N(G).
- (phi ^: G)%CF == the sequence of all distinct conjugates of phi : 'CF(H)
- by all y in G.
- 'I[phi] == the inertia group of phi : CF(H), i.e., the set of y
- such that (phi ^ y)%CF = phi AND H :^ y = y.
- 'I_G[phi] == the inertia group of phi in G, i.e., G :&: 'I[phi].
- conjg_Iirr i y == the index j : Iirr G such that ('chi_i ^ y)%CF = 'chi_j.
- cfclass_Iirr G i == the image of G under conjg_Iirr i, i.e., the set of j
- such that 'chi_j \in ('chi_i ^: G)%CF.
- mul_Iirr i j == the index k such that 'chi_j * 'chi_i = 'chi[G]_k,
- or 0 if 'chi_j * 'chi_i is reducible.
- mul_mod_Iirr i j := mul_Iirr i (mod_Iirr j), for j : Iirr (G / H).
-
-
-
-
-Reserved Notation "''I[' phi ]"
- (at level 8, format "''I[' phi ]").
-Reserved Notation "''I_' G [ phi ]"
- (at level 8, G at level 2, format "''I_' G [ phi ]").
- -
-Section ConjDef.
- -
-Variables (gT : finGroupType) (B : {set gT}) (y : gT) (phi : 'CF(B)).
- -
-Fact cfConjg_subproof :
- is_class_fun G [ffun x ⇒ phi (if y \in 'N(G) then x ^ y^-1 else x)].
-Definition cfConjg := Cfun 1 cfConjg_subproof.
- -
-End ConjDef.
- -
-Notation "f ^ y" := (cfConjg y f) : cfun_scope.
- -
-Section Conj.
- -
-Variables (gT : finGroupType) (G : {group gT}).
-Implicit Type phi : 'CF(G).
- -
-Lemma cfConjgE phi y x : y \in 'N(G) → (phi ^ y)%CF x = phi (x ^ y^-1)%g.
- -
-Lemma cfConjgEJ phi y x : y \in 'N(G) → (phi ^ y)%CF (x ^ y) = phi x.
- -
-Lemma cfConjgEout phi y : y \notin 'N(G) → (phi ^ y = phi)%CF.
- -
-Lemma cfConjgEin phi y (nGy : y \in 'N(G)) :
- (phi ^ y)%CF = cfIsom (norm_conj_isom nGy) phi.
- -
-Lemma cfConjgMnorm phi :
- {in 'N(G) &, ∀ y z, phi ^ (y × z) = (phi ^ y) ^ z}%CF.
- -
-Lemma cfConjg_id phi y : y \in G → (phi ^ y)%CF = phi.
- -
-
-
--Reserved Notation "''I[' phi ]"
- (at level 8, format "''I[' phi ]").
-Reserved Notation "''I_' G [ phi ]"
- (at level 8, G at level 2, format "''I_' G [ phi ]").
- -
-Section ConjDef.
- -
-Variables (gT : finGroupType) (B : {set gT}) (y : gT) (phi : 'CF(B)).
- -
-Fact cfConjg_subproof :
- is_class_fun G [ffun x ⇒ phi (if y \in 'N(G) then x ^ y^-1 else x)].
-Definition cfConjg := Cfun 1 cfConjg_subproof.
- -
-End ConjDef.
- -
-Notation "f ^ y" := (cfConjg y f) : cfun_scope.
- -
-Section Conj.
- -
-Variables (gT : finGroupType) (G : {group gT}).
-Implicit Type phi : 'CF(G).
- -
-Lemma cfConjgE phi y x : y \in 'N(G) → (phi ^ y)%CF x = phi (x ^ y^-1)%g.
- -
-Lemma cfConjgEJ phi y x : y \in 'N(G) → (phi ^ y)%CF (x ^ y) = phi x.
- -
-Lemma cfConjgEout phi y : y \notin 'N(G) → (phi ^ y = phi)%CF.
- -
-Lemma cfConjgEin phi y (nGy : y \in 'N(G)) :
- (phi ^ y)%CF = cfIsom (norm_conj_isom nGy) phi.
- -
-Lemma cfConjgMnorm phi :
- {in 'N(G) &, ∀ y z, phi ^ (y × z) = (phi ^ y) ^ z}%CF.
- -
-Lemma cfConjg_id phi y : y \in G → (phi ^ y)%CF = phi.
- -
-
- Isaacs' 6.1.b
-
-
-Lemma cfConjgM L phi :
- G <| L → {in L &, ∀ y z, phi ^ (y × z) = (phi ^ y) ^ z}%CF.
- -
-Lemma cfConjgJ1 phi : (phi ^ 1)%CF = phi.
- -
-Lemma cfConjgK y : cancel (cfConjg y) (cfConjg y^-1 : 'CF(G) → 'CF(G)).
- -
-Lemma cfConjgKV y : cancel (cfConjg y^-1) (cfConjg y : 'CF(G) → 'CF(G)).
- -
-Lemma cfConjg1 phi y : (phi ^ y)%CF 1%g = phi 1%g.
- -
-Fact cfConjg_is_linear y : linear (cfConjg y : 'CF(G) → 'CF(G)).
- Canonical cfConjg_additive y := Additive (cfConjg_is_linear y).
-Canonical cfConjg_linear y := AddLinear (cfConjg_is_linear y).
- -
-Lemma cfConjg_cfuniJ A y : y \in 'N(G) → ('1_A ^ y)%CF = '1_(A :^ y) :> 'CF(G).
- -
-Lemma cfConjg_cfuni A y : y \in 'N(A) → ('1_A ^ y)%CF = '1_A :> 'CF(G).
- -
-Lemma cfConjg_cfun1 y : (1 ^ y)%CF = 1 :> 'CF(G).
- -
-Fact cfConjg_is_multiplicative y : multiplicative (cfConjg y : _ → 'CF(G)).
-Canonical cfConjg_rmorphism y := AddRMorphism (cfConjg_is_multiplicative y).
-Canonical cfConjg_lrmorphism y := [lrmorphism of cfConjg y].
- -
-Lemma cfConjg_eq1 phi y : ((phi ^ y)%CF == 1) = (phi == 1).
- -
-Lemma cfAutConjg phi u y : cfAut u (phi ^ y) = (cfAut u phi ^ y)%CF.
- -
-Lemma conj_cfConjg phi y : (phi ^ y)^*%CF = (phi^* ^ y)%CF.
- -
-Lemma cfker_conjg phi y : y \in 'N(G) → cfker (phi ^ y) = cfker phi :^ y.
- -
-Lemma cfDetConjg phi y : cfDet (phi ^ y) = (cfDet phi ^ y)%CF.
- -
-End Conj.
- -
-Section Inertia.
- -
-Variable gT : finGroupType.
- -
-Definition inertia (B : {set gT}) (phi : 'CF(B)) :=
- [set y in 'N(B) | (phi ^ y)%CF == phi].
- -
- -
-Fact group_set_inertia (H : {group gT}) phi : group_set 'I[phi : 'CF(H)].
-Canonical inertia_group H phi := Group (@group_set_inertia H phi).
- -
- -
-Variables G H : {group gT}.
-Implicit Type phi : 'CF(H).
- -
-Lemma inertiaJ phi y : y \in 'I[phi] → (phi ^ y)%CF = phi.
- -
-Lemma inertia_valJ phi x y : y \in 'I[phi] → phi (x ^ y)%g = phi x.
- -
-
-
-- G <| L → {in L &, ∀ y z, phi ^ (y × z) = (phi ^ y) ^ z}%CF.
- -
-Lemma cfConjgJ1 phi : (phi ^ 1)%CF = phi.
- -
-Lemma cfConjgK y : cancel (cfConjg y) (cfConjg y^-1 : 'CF(G) → 'CF(G)).
- -
-Lemma cfConjgKV y : cancel (cfConjg y^-1) (cfConjg y : 'CF(G) → 'CF(G)).
- -
-Lemma cfConjg1 phi y : (phi ^ y)%CF 1%g = phi 1%g.
- -
-Fact cfConjg_is_linear y : linear (cfConjg y : 'CF(G) → 'CF(G)).
- Canonical cfConjg_additive y := Additive (cfConjg_is_linear y).
-Canonical cfConjg_linear y := AddLinear (cfConjg_is_linear y).
- -
-Lemma cfConjg_cfuniJ A y : y \in 'N(G) → ('1_A ^ y)%CF = '1_(A :^ y) :> 'CF(G).
- -
-Lemma cfConjg_cfuni A y : y \in 'N(A) → ('1_A ^ y)%CF = '1_A :> 'CF(G).
- -
-Lemma cfConjg_cfun1 y : (1 ^ y)%CF = 1 :> 'CF(G).
- -
-Fact cfConjg_is_multiplicative y : multiplicative (cfConjg y : _ → 'CF(G)).
-Canonical cfConjg_rmorphism y := AddRMorphism (cfConjg_is_multiplicative y).
-Canonical cfConjg_lrmorphism y := [lrmorphism of cfConjg y].
- -
-Lemma cfConjg_eq1 phi y : ((phi ^ y)%CF == 1) = (phi == 1).
- -
-Lemma cfAutConjg phi u y : cfAut u (phi ^ y) = (cfAut u phi ^ y)%CF.
- -
-Lemma conj_cfConjg phi y : (phi ^ y)^*%CF = (phi^* ^ y)%CF.
- -
-Lemma cfker_conjg phi y : y \in 'N(G) → cfker (phi ^ y) = cfker phi :^ y.
- -
-Lemma cfDetConjg phi y : cfDet (phi ^ y) = (cfDet phi ^ y)%CF.
- -
-End Conj.
- -
-Section Inertia.
- -
-Variable gT : finGroupType.
- -
-Definition inertia (B : {set gT}) (phi : 'CF(B)) :=
- [set y in 'N(B) | (phi ^ y)%CF == phi].
- -
- -
-Fact group_set_inertia (H : {group gT}) phi : group_set 'I[phi : 'CF(H)].
-Canonical inertia_group H phi := Group (@group_set_inertia H phi).
- -
- -
-Variables G H : {group gT}.
-Implicit Type phi : 'CF(H).
- -
-Lemma inertiaJ phi y : y \in 'I[phi] → (phi ^ y)%CF = phi.
- -
-Lemma inertia_valJ phi x y : y \in 'I[phi] → phi (x ^ y)%g = phi x.
- -
-
- To disambiguate basic inclucion lemma names we capitalize Inertia for
- lemmas concerning the localized inertia group 'I_G[phi].
-
-
-Lemma Inertia_sub phi : 'I_G[phi] \subset G.
- -
-Lemma norm_inertia phi : 'I[phi] \subset 'N(H).
- -
-Lemma sub_inertia phi : H \subset 'I[phi].
- -
-Lemma normal_inertia phi : H <| 'I[phi].
- -
-Lemma sub_Inertia phi : H \subset G → H \subset 'I_G[phi].
- -
-Lemma norm_Inertia phi : 'I_G[phi] \subset 'N(H).
- -
-Lemma normal_Inertia phi : H \subset G → H <| 'I_G[phi].
- -
-Lemma cfConjg_eqE phi :
- H <| G →
- {in G &, ∀ y z, (phi ^ y == phi ^ z)%CF = (z \in 'I_G[phi] :* y)}.
- -
-Lemma cent_sub_inertia phi : 'C(H) \subset 'I[phi].
- -
-Lemma cent_sub_Inertia phi : 'C_G(H) \subset 'I_G[phi].
- -
-Lemma center_sub_Inertia phi : H \subset G → 'Z(G) \subset 'I_G[phi].
- -
-Lemma conjg_inertia phi y : y \in 'N(H) → 'I[phi] :^ y = 'I[phi ^ y].
- -
-Lemma inertia0 : 'I[0 : 'CF(H)] = 'N(H).
- -
-Lemma inertia_add phi psi : 'I[phi] :&: 'I[psi] \subset 'I[phi + psi].
- -
-Lemma inertia_sum I r (P : pred I) (Phi : I → 'CF(H)) :
- 'N(H) :&: \bigcap_(i <- r | P i) 'I[Phi i]
- \subset 'I[\sum_(i <- r | P i) Phi i].
- -
-Lemma inertia_scale a phi : 'I[phi] \subset 'I[a *: phi].
- -
-Lemma inertia_scale_nz a phi : a != 0 → 'I[a *: phi] = 'I[phi].
- -
-Lemma inertia_opp phi : 'I[- phi] = 'I[phi].
- -
-Lemma inertia1 : 'I[1 : 'CF(H)] = 'N(H).
- -
-Lemma Inertia1 : H <| G → 'I_G[1 : 'CF(H)] = G.
- -
-Lemma inertia_mul phi psi : 'I[phi] :&: 'I[psi] \subset 'I[phi × psi].
- -
-Lemma inertia_prod I r (P : pred I) (Phi : I → 'CF(H)) :
- 'N(H) :&: \bigcap_(i <- r | P i) 'I[Phi i]
- \subset 'I[\prod_(i <- r | P i) Phi i].
- -
-Lemma inertia_injective (chi : 'CF(H)) :
- {in H &, injective chi} → 'I[chi] = 'C(H).
- -
-Lemma inertia_irr_prime p i :
- #|H| = p → prime p → i != 0 → 'I['chi[H]_i] = 'C(H).
- -
-Lemma inertia_irr0 : 'I['chi[H]_0] = 'N(H).
- -
-
-
-- -
-Lemma norm_inertia phi : 'I[phi] \subset 'N(H).
- -
-Lemma sub_inertia phi : H \subset 'I[phi].
- -
-Lemma normal_inertia phi : H <| 'I[phi].
- -
-Lemma sub_Inertia phi : H \subset G → H \subset 'I_G[phi].
- -
-Lemma norm_Inertia phi : 'I_G[phi] \subset 'N(H).
- -
-Lemma normal_Inertia phi : H \subset G → H <| 'I_G[phi].
- -
-Lemma cfConjg_eqE phi :
- H <| G →
- {in G &, ∀ y z, (phi ^ y == phi ^ z)%CF = (z \in 'I_G[phi] :* y)}.
- -
-Lemma cent_sub_inertia phi : 'C(H) \subset 'I[phi].
- -
-Lemma cent_sub_Inertia phi : 'C_G(H) \subset 'I_G[phi].
- -
-Lemma center_sub_Inertia phi : H \subset G → 'Z(G) \subset 'I_G[phi].
- -
-Lemma conjg_inertia phi y : y \in 'N(H) → 'I[phi] :^ y = 'I[phi ^ y].
- -
-Lemma inertia0 : 'I[0 : 'CF(H)] = 'N(H).
- -
-Lemma inertia_add phi psi : 'I[phi] :&: 'I[psi] \subset 'I[phi + psi].
- -
-Lemma inertia_sum I r (P : pred I) (Phi : I → 'CF(H)) :
- 'N(H) :&: \bigcap_(i <- r | P i) 'I[Phi i]
- \subset 'I[\sum_(i <- r | P i) Phi i].
- -
-Lemma inertia_scale a phi : 'I[phi] \subset 'I[a *: phi].
- -
-Lemma inertia_scale_nz a phi : a != 0 → 'I[a *: phi] = 'I[phi].
- -
-Lemma inertia_opp phi : 'I[- phi] = 'I[phi].
- -
-Lemma inertia1 : 'I[1 : 'CF(H)] = 'N(H).
- -
-Lemma Inertia1 : H <| G → 'I_G[1 : 'CF(H)] = G.
- -
-Lemma inertia_mul phi psi : 'I[phi] :&: 'I[psi] \subset 'I[phi × psi].
- -
-Lemma inertia_prod I r (P : pred I) (Phi : I → 'CF(H)) :
- 'N(H) :&: \bigcap_(i <- r | P i) 'I[Phi i]
- \subset 'I[\prod_(i <- r | P i) Phi i].
- -
-Lemma inertia_injective (chi : 'CF(H)) :
- {in H &, injective chi} → 'I[chi] = 'C(H).
- -
-Lemma inertia_irr_prime p i :
- #|H| = p → prime p → i != 0 → 'I['chi[H]_i] = 'C(H).
- -
-Lemma inertia_irr0 : 'I['chi[H]_0] = 'N(H).
- -
-
- Isaacs' 6.1.c
-
-
-
-
- Isaacs' 6.1.d
-
-
-Lemma cfdot_Res_conjg psi phi y :
- y \in G → '['Res[H, G] psi, phi ^ y] = '['Res[H] psi, phi].
- -
-
-
-- y \in G → '['Res[H, G] psi, phi ^ y] = '['Res[H] psi, phi].
- -
-
- Isaac's 6.1.e
-
-
-Lemma cfConjg_char (chi : 'CF(H)) y :
- chi \is a character → (chi ^ y)%CF \is a character.
- -
-Lemma cfConjg_lin_char (chi : 'CF(H)) y :
- chi \is a linear_char → (chi ^ y)%CF \is a linear_char.
- -
-Lemma cfConjg_irr y chi : chi \in irr H → (chi ^ y)%CF \in irr H.
- -
-Definition conjg_Iirr i y := cfIirr ('chi[H]_i ^ y)%CF.
- -
-Lemma conjg_IirrE i y : 'chi_(conjg_Iirr i y) = ('chi_i ^ y)%CF.
- -
-Lemma conjg_IirrK y : cancel (conjg_Iirr^~ y) (conjg_Iirr^~ y^-1%g).
- -
-Lemma conjg_IirrKV y : cancel (conjg_Iirr^~ y^-1%g) (conjg_Iirr^~ y).
- -
-Lemma conjg_Iirr_inj y : injective (conjg_Iirr^~ y).
- -
-Lemma conjg_Iirr_eq0 i y : (conjg_Iirr i y == 0) = (i == 0).
- -
-Lemma conjg_Iirr0 x : conjg_Iirr 0 x = 0.
- -
-Lemma cfdot_irr_conjg i y :
- H <| G → y \in G → '['chi_i, 'chi_i ^ y]_H = (y \in 'I_G['chi_i])%:R.
- -
-Definition cfclass (A : {set gT}) (phi : 'CF(A)) (B : {set gT}) :=
- [seq (phi ^ repr Tx)%CF | Tx in rcosets 'I_B[phi] B].
- -
- -
-Lemma size_cfclass i : size ('chi[H]_i ^: G)%CF = #|G : 'I_G['chi_i]|.
- -
-Lemma cfclassP (A : {group gT}) phi psi :
- reflect (exists2 y, y \in A & psi = phi ^ y)%CF (psi \in phi ^: A)%CF.
- -
-Lemma cfclassInorm phi : (phi ^: 'N_G(H) =i phi ^: G)%CF.
- -
-Lemma cfclass_refl phi : phi \in (phi ^: G)%CF.
- -
-Lemma cfclass_transr phi psi :
- (psi \in phi ^: G)%CF → (phi ^: G =i psi ^: G)%CF.
- -
-Lemma cfclass_sym phi psi : (psi \in phi ^: G)%CF = (phi \in psi ^: G)%CF.
- -
-Lemma cfclass_uniq phi : H <| G → uniq (phi ^: G)%CF.
- -
-Lemma cfclass_invariant phi : G \subset 'I[phi] → (phi ^: G)%CF = phi.
- -
-Lemma cfclass1 : H <| G → (1 ^: G)%CF = [:: 1 : 'CF(H)].
- -
-Definition cfclass_Iirr (A : {set gT}) i := conjg_Iirr i @: A.
- -
-Lemma cfclass_IirrE i j :
- (j \in cfclass_Iirr G i) = ('chi_j \in 'chi_i ^: G)%CF.
- -
-Lemma eq_cfclass_IirrE i j :
- (cfclass_Iirr G j == cfclass_Iirr G i) = (j \in cfclass_Iirr G i).
- -
-Lemma im_cfclass_Iirr i :
- H <| G → perm_eq [seq 'chi_j | j in cfclass_Iirr G i] ('chi_i ^: G)%CF.
- -
-Lemma card_cfclass_Iirr i : H <| G → #|cfclass_Iirr G i| = #|G : 'I_G['chi_i]|.
- -
-Lemma reindex_cfclass R idx (op : Monoid.com_law idx) (F : 'CF(H) → R) i :
- H <| G →
- \big[op/idx]_(chi <- ('chi_i ^: G)%CF) F chi
- = \big[op/idx]_(j | 'chi_j \in ('chi_i ^: G)%CF) F 'chi_j.
- -
-Lemma cfResInd j:
- H <| G →
- 'Res[H] ('Ind[G] 'chi_j) = #|H|%:R^-1 *: (\sum_(y in G) 'chi_j ^ y)%CF.
- -
-
-
-- chi \is a character → (chi ^ y)%CF \is a character.
- -
-Lemma cfConjg_lin_char (chi : 'CF(H)) y :
- chi \is a linear_char → (chi ^ y)%CF \is a linear_char.
- -
-Lemma cfConjg_irr y chi : chi \in irr H → (chi ^ y)%CF \in irr H.
- -
-Definition conjg_Iirr i y := cfIirr ('chi[H]_i ^ y)%CF.
- -
-Lemma conjg_IirrE i y : 'chi_(conjg_Iirr i y) = ('chi_i ^ y)%CF.
- -
-Lemma conjg_IirrK y : cancel (conjg_Iirr^~ y) (conjg_Iirr^~ y^-1%g).
- -
-Lemma conjg_IirrKV y : cancel (conjg_Iirr^~ y^-1%g) (conjg_Iirr^~ y).
- -
-Lemma conjg_Iirr_inj y : injective (conjg_Iirr^~ y).
- -
-Lemma conjg_Iirr_eq0 i y : (conjg_Iirr i y == 0) = (i == 0).
- -
-Lemma conjg_Iirr0 x : conjg_Iirr 0 x = 0.
- -
-Lemma cfdot_irr_conjg i y :
- H <| G → y \in G → '['chi_i, 'chi_i ^ y]_H = (y \in 'I_G['chi_i])%:R.
- -
-Definition cfclass (A : {set gT}) (phi : 'CF(A)) (B : {set gT}) :=
- [seq (phi ^ repr Tx)%CF | Tx in rcosets 'I_B[phi] B].
- -
- -
-Lemma size_cfclass i : size ('chi[H]_i ^: G)%CF = #|G : 'I_G['chi_i]|.
- -
-Lemma cfclassP (A : {group gT}) phi psi :
- reflect (exists2 y, y \in A & psi = phi ^ y)%CF (psi \in phi ^: A)%CF.
- -
-Lemma cfclassInorm phi : (phi ^: 'N_G(H) =i phi ^: G)%CF.
- -
-Lemma cfclass_refl phi : phi \in (phi ^: G)%CF.
- -
-Lemma cfclass_transr phi psi :
- (psi \in phi ^: G)%CF → (phi ^: G =i psi ^: G)%CF.
- -
-Lemma cfclass_sym phi psi : (psi \in phi ^: G)%CF = (phi \in psi ^: G)%CF.
- -
-Lemma cfclass_uniq phi : H <| G → uniq (phi ^: G)%CF.
- -
-Lemma cfclass_invariant phi : G \subset 'I[phi] → (phi ^: G)%CF = phi.
- -
-Lemma cfclass1 : H <| G → (1 ^: G)%CF = [:: 1 : 'CF(H)].
- -
-Definition cfclass_Iirr (A : {set gT}) i := conjg_Iirr i @: A.
- -
-Lemma cfclass_IirrE i j :
- (j \in cfclass_Iirr G i) = ('chi_j \in 'chi_i ^: G)%CF.
- -
-Lemma eq_cfclass_IirrE i j :
- (cfclass_Iirr G j == cfclass_Iirr G i) = (j \in cfclass_Iirr G i).
- -
-Lemma im_cfclass_Iirr i :
- H <| G → perm_eq [seq 'chi_j | j in cfclass_Iirr G i] ('chi_i ^: G)%CF.
- -
-Lemma card_cfclass_Iirr i : H <| G → #|cfclass_Iirr G i| = #|G : 'I_G['chi_i]|.
- -
-Lemma reindex_cfclass R idx (op : Monoid.com_law idx) (F : 'CF(H) → R) i :
- H <| G →
- \big[op/idx]_(chi <- ('chi_i ^: G)%CF) F chi
- = \big[op/idx]_(j | 'chi_j \in ('chi_i ^: G)%CF) F 'chi_j.
- -
-Lemma cfResInd j:
- H <| G →
- 'Res[H] ('Ind[G] 'chi_j) = #|H|%:R^-1 *: (\sum_(y in G) 'chi_j ^ y)%CF.
- -
-
- This is Isaacs, Theorem (6.2)
-
-
-Lemma Clifford_Res_sum_cfclass i j :
- H <| G → j \in irr_constt ('Res[H, G] 'chi_i) →
- 'Res[H] 'chi_i =
- '['Res[H] 'chi_i, 'chi_j] *: (\sum_(chi <- ('chi_j ^: G)%CF) chi).
- -
-Lemma cfRes_Ind_invariant psi :
- H <| G → G \subset 'I[psi] → 'Res ('Ind[G, H] psi) = #|G : H|%:R *: psi.
- -
-
-
-- H <| G → j \in irr_constt ('Res[H, G] 'chi_i) →
- 'Res[H] 'chi_i =
- '['Res[H] 'chi_i, 'chi_j] *: (\sum_(chi <- ('chi_j ^: G)%CF) chi).
- -
-Lemma cfRes_Ind_invariant psi :
- H <| G → G \subset 'I[psi] → 'Res ('Ind[G, H] psi) = #|G : H|%:R *: psi.
- -
-
- This is Isaacs, Corollary (6.7).
-
-
-Corollary constt0_Res_cfker i :
- H <| G → 0 \in irr_constt ('Res[H] 'chi[G]_i) → H \subset cfker 'chi[G]_i.
- -
-
-
-- H <| G → 0 \in irr_constt ('Res[H] 'chi[G]_i) → H \subset cfker 'chi[G]_i.
- -
-
- This is Isaacs, Lemma (6.8).
-
-
-Lemma dvdn_constt_Res1_irr1 i j :
- H <| G → j \in irr_constt ('Res[H, G] 'chi_i) →
- ∃ n, 'chi_i 1%g = n%:R × 'chi_j 1%g.
- -
-Lemma cfclass_Ind phi psi :
- H <| G → psi \in (phi ^: G)%CF → 'Ind[G] phi = 'Ind[G] psi.
- -
-End Inertia.
- -
- -
-Notation "''I[' phi ] " := (inertia phi) : group_scope.
-Notation "''I[' phi ] " := (inertia_group phi) : Group_scope.
-Notation "''I_' G [ phi ] " := (G%g :&: 'I[phi]) : group_scope.
-Notation "''I_' G [ phi ] " := (G :&: 'I[phi])%G : Group_scope.
-Notation "phi ^: G" := (cfclass phi G) : cfun_scope.
- -
-Section ConjRestrict.
- -
-Variables (gT : finGroupType) (G H K : {group gT}).
- -
-Lemma cfConjgRes_norm phi y :
- y \in 'N(K) → y \in 'N(H) → ('Res[K, H] phi ^ y)%CF = 'Res (phi ^ y)%CF.
- -
-Lemma cfConjgRes phi y :
- H <| G → K <| G → y \in G → ('Res[K, H] phi ^ y)%CF = 'Res (phi ^ y)%CF.
- -
-Lemma sub_inertia_Res phi :
- G \subset 'N(K) → 'I_G[phi] \subset 'I_G['Res[K, H] phi].
- -
-Lemma cfConjgInd_norm phi y :
- y \in 'N(K) → y \in 'N(H) → ('Ind[H, K] phi ^ y)%CF = 'Ind (phi ^ y)%CF.
- -
-Lemma cfConjgInd phi y :
- H <| G → K <| G → y \in G → ('Ind[H, K] phi ^ y)%CF = 'Ind (phi ^ y)%CF.
- -
-Lemma sub_inertia_Ind phi :
- G \subset 'N(H) → 'I_G[phi] \subset 'I_G['Ind[H, K] phi].
- -
-End ConjRestrict.
- -
-Section MoreInertia.
- -
-Variables (gT : finGroupType) (G H : {group gT}) (i : Iirr H).
-Let T := 'I_G['chi_i].
- -
-Lemma inertia_id : 'I_T['chi_i] = T.
- -
-Lemma cfclass_inertia : ('chi[H]_i ^: T)%CF = [:: 'chi_i].
- -
-End MoreInertia.
- -
-Section ConjMorph.
- -
-Variables (aT rT : finGroupType) (D G H : {group aT}) (f : {morphism D >-> rT}).
- -
-Lemma cfConjgMorph (phi : 'CF(f @* H)) y :
- y \in D → y \in 'N(H) → (cfMorph phi ^ y)%CF = cfMorph (phi ^ f y).
- -
-Lemma inertia_morph_pre (phi : 'CF(f @* H)) :
- H <| G → G \subset D → 'I_G[cfMorph phi] = G :&: f @*^-1 'I_(f @* G)[phi].
- -
-Lemma inertia_morph_im (phi : 'CF(f @* H)) :
- H <| G → G \subset D → f @* 'I_G[cfMorph phi] = 'I_(f @* G)[phi].
- -
-Variables (R S : {group rT}).
-Variables (g : {morphism G >-> rT}) (h : {morphism H >-> rT}).
-Hypotheses (isoG : isom G R g) (isoH : isom H S h).
-Hypotheses (eq_hg : {in H, h =1 g}) (sHG : H \subset G).
- -
-
-
-- H <| G → j \in irr_constt ('Res[H, G] 'chi_i) →
- ∃ n, 'chi_i 1%g = n%:R × 'chi_j 1%g.
- -
-Lemma cfclass_Ind phi psi :
- H <| G → psi \in (phi ^: G)%CF → 'Ind[G] phi = 'Ind[G] psi.
- -
-End Inertia.
- -
- -
-Notation "''I[' phi ] " := (inertia phi) : group_scope.
-Notation "''I[' phi ] " := (inertia_group phi) : Group_scope.
-Notation "''I_' G [ phi ] " := (G%g :&: 'I[phi]) : group_scope.
-Notation "''I_' G [ phi ] " := (G :&: 'I[phi])%G : Group_scope.
-Notation "phi ^: G" := (cfclass phi G) : cfun_scope.
- -
-Section ConjRestrict.
- -
-Variables (gT : finGroupType) (G H K : {group gT}).
- -
-Lemma cfConjgRes_norm phi y :
- y \in 'N(K) → y \in 'N(H) → ('Res[K, H] phi ^ y)%CF = 'Res (phi ^ y)%CF.
- -
-Lemma cfConjgRes phi y :
- H <| G → K <| G → y \in G → ('Res[K, H] phi ^ y)%CF = 'Res (phi ^ y)%CF.
- -
-Lemma sub_inertia_Res phi :
- G \subset 'N(K) → 'I_G[phi] \subset 'I_G['Res[K, H] phi].
- -
-Lemma cfConjgInd_norm phi y :
- y \in 'N(K) → y \in 'N(H) → ('Ind[H, K] phi ^ y)%CF = 'Ind (phi ^ y)%CF.
- -
-Lemma cfConjgInd phi y :
- H <| G → K <| G → y \in G → ('Ind[H, K] phi ^ y)%CF = 'Ind (phi ^ y)%CF.
- -
-Lemma sub_inertia_Ind phi :
- G \subset 'N(H) → 'I_G[phi] \subset 'I_G['Ind[H, K] phi].
- -
-End ConjRestrict.
- -
-Section MoreInertia.
- -
-Variables (gT : finGroupType) (G H : {group gT}) (i : Iirr H).
-Let T := 'I_G['chi_i].
- -
-Lemma inertia_id : 'I_T['chi_i] = T.
- -
-Lemma cfclass_inertia : ('chi[H]_i ^: T)%CF = [:: 'chi_i].
- -
-End MoreInertia.
- -
-Section ConjMorph.
- -
-Variables (aT rT : finGroupType) (D G H : {group aT}) (f : {morphism D >-> rT}).
- -
-Lemma cfConjgMorph (phi : 'CF(f @* H)) y :
- y \in D → y \in 'N(H) → (cfMorph phi ^ y)%CF = cfMorph (phi ^ f y).
- -
-Lemma inertia_morph_pre (phi : 'CF(f @* H)) :
- H <| G → G \subset D → 'I_G[cfMorph phi] = G :&: f @*^-1 'I_(f @* G)[phi].
- -
-Lemma inertia_morph_im (phi : 'CF(f @* H)) :
- H <| G → G \subset D → f @* 'I_G[cfMorph phi] = 'I_(f @* G)[phi].
- -
-Variables (R S : {group rT}).
-Variables (g : {morphism G >-> rT}) (h : {morphism H >-> rT}).
-Hypotheses (isoG : isom G R g) (isoH : isom H S h).
-Hypotheses (eq_hg : {in H, h =1 g}) (sHG : H \subset G).
- -
-
- This does not depend on the (isoG : isom G R g) assumption.
-
-
-Lemma cfConjgIsom phi y :
- y \in G → y \in 'N(H) → (cfIsom isoH phi ^ g y)%CF = cfIsom isoH (phi ^ y).
- -
-Lemma inertia_isom phi : 'I_R[cfIsom isoH phi] = g @* 'I_G[phi].
- -
-End ConjMorph.
- -
-Section ConjQuotient.
- -
-Variables gT : finGroupType.
-Implicit Types G H K : {group gT}.
- -
-Lemma cfConjgMod_norm H K (phi : 'CF(H / K)) y :
- y \in 'N(K) → y \in 'N(H) → ((phi %% K) ^ y)%CF = (phi ^ coset K y %% K)%CF.
- -
-Lemma cfConjgMod G H K (phi : 'CF(H / K)) y :
- H <| G → K <| G → y \in G →
- ((phi %% K) ^ y)%CF = (phi ^ coset K y %% K)%CF.
- -
-Lemma cfConjgQuo_norm H K (phi : 'CF(H)) y :
- y \in 'N(K) → y \in 'N(H) → ((phi / K) ^ coset K y)%CF = (phi ^ y / K)%CF.
- -
-Lemma cfConjgQuo G H K (phi : 'CF(H)) y :
- H <| G → K <| G → y \in G →
- ((phi / K) ^ coset K y)%CF = (phi ^ y / K)%CF.
- -
-Lemma inertia_mod_pre G H K (phi : 'CF(H / K)) :
- H <| G → K <| G → 'I_G[phi %% K] = G :&: coset K @*^-1 'I_(G / K)[phi].
- -
-Lemma inertia_mod_quo G H K (phi : 'CF(H / K)) :
- H <| G → K <| G → ('I_G[phi %% K] / K)%g = 'I_(G / K)[phi].
- -
-Lemma inertia_quo G H K (phi : 'CF(H)) :
- H <| G → K <| G → K \subset cfker phi →
- 'I_(G / K)[phi / K] = ('I_G[phi] / K)%g.
- -
-End ConjQuotient.
- -
-Section InertiaSdprod.
- -
-Variables (gT : finGroupType) (K H G : {group gT}).
- -
-Hypothesis defG : K ><| H = G.
- -
-Lemma cfConjgSdprod phi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfSdprod defG phi ^ y = cfSdprod defG (phi ^ y))%CF.
- -
-Lemma inertia_sdprod (L : {group gT}) phi :
- L \subset 'N(K) → L \subset 'N(H) → 'I_L[cfSdprod defG phi] = 'I_L[phi].
- -
-End InertiaSdprod.
- -
-Section InertiaDprod.
- -
-Variables (gT : finGroupType) (G K H : {group gT}).
-Implicit Type L : {group gT}.
-Hypothesis KxH : K \x H = G.
- -
-Lemma cfConjgDprodl phi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfDprodl KxH phi ^ y = cfDprodl KxH (phi ^ y))%CF.
- -
-Lemma cfConjgDprodr psi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfDprodr KxH psi ^ y = cfDprodr KxH (psi ^ y))%CF.
- -
-Lemma cfConjgDprod phi psi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfDprod KxH phi psi ^ y = cfDprod KxH (phi ^ y) (psi ^ y))%CF.
- -
-Lemma inertia_dprodl L phi :
- L \subset 'N(K) → L \subset 'N(H) → 'I_L[cfDprodl KxH phi] = 'I_L[phi].
- -
-Lemma inertia_dprodr L psi :
- L \subset 'N(K) → L \subset 'N(H) → 'I_L[cfDprodr KxH psi] = 'I_L[psi].
- -
-Lemma inertia_dprod L (phi : 'CF(K)) (psi : 'CF(H)) :
- L \subset 'N(K) → L \subset 'N(H) → phi 1%g != 0 → psi 1%g != 0 →
- 'I_L[cfDprod KxH phi psi] = 'I_L[phi] :&: 'I_L[psi].
- -
-Lemma inertia_dprod_irr L i j :
- L \subset 'N(K) → L \subset 'N(H) →
- 'I_L[cfDprod KxH 'chi_i 'chi_j] = 'I_L['chi_i] :&: 'I_L['chi_j].
- -
-End InertiaDprod.
- -
-Section InertiaBigdprod.
- -
-Variables (gT : finGroupType) (I : finType) (P : pred I).
-Variables (A : I → {group gT}) (G : {group gT}).
-Implicit Type L : {group gT}.
-Hypothesis defG : \big[dprod/1%g]_(i | P i) A i = G.
- -
-Section ConjBig.
- -
-Variable y : gT.
-Hypothesis nAy: ∀ i, P i → y \in 'N(A i).
- -
-Lemma cfConjgBigdprodi i (phi : 'CF(A i)) :
- (cfBigdprodi defG phi ^ y = cfBigdprodi defG (phi ^ y))%CF.
- -
-Lemma cfConjgBigdprod phi :
- (cfBigdprod defG phi ^ y = cfBigdprod defG (fun i ⇒ phi i ^ y))%CF.
- -
-End ConjBig.
- -
-Section InertiaBig.
- -
-Variable L : {group gT}.
-Hypothesis nAL : ∀ i, P i → L \subset 'N(A i).
- -
-Lemma inertia_bigdprodi i (phi : 'CF(A i)) :
- P i → 'I_L[cfBigdprodi defG phi] = 'I_L[phi].
- -
-Lemma inertia_bigdprod phi (Phi := cfBigdprod defG phi) :
- Phi 1%g != 0 → 'I_L[Phi] = L :&: \bigcap_(i | P i) 'I_L[phi i].
- -
-Lemma inertia_bigdprod_irr Iphi (phi := fun i ⇒ 'chi_(Iphi i)) :
- 'I_L[cfBigdprod defG phi] = L :&: \bigcap_(i | P i) 'I_L[phi i].
- -
-End InertiaBig.
- -
-End InertiaBigdprod.
- -
-Section ConsttInertiaBijection.
- -
-Variables (gT : finGroupType) (H G : {group gT}) (t : Iirr H).
-Hypothesis nsHG : H <| G.
- -
- -
-Let calA := irr_constt ('Ind[T] theta).
-Let calB := irr_constt ('Ind[G] theta).
- -
-
-
-- y \in G → y \in 'N(H) → (cfIsom isoH phi ^ g y)%CF = cfIsom isoH (phi ^ y).
- -
-Lemma inertia_isom phi : 'I_R[cfIsom isoH phi] = g @* 'I_G[phi].
- -
-End ConjMorph.
- -
-Section ConjQuotient.
- -
-Variables gT : finGroupType.
-Implicit Types G H K : {group gT}.
- -
-Lemma cfConjgMod_norm H K (phi : 'CF(H / K)) y :
- y \in 'N(K) → y \in 'N(H) → ((phi %% K) ^ y)%CF = (phi ^ coset K y %% K)%CF.
- -
-Lemma cfConjgMod G H K (phi : 'CF(H / K)) y :
- H <| G → K <| G → y \in G →
- ((phi %% K) ^ y)%CF = (phi ^ coset K y %% K)%CF.
- -
-Lemma cfConjgQuo_norm H K (phi : 'CF(H)) y :
- y \in 'N(K) → y \in 'N(H) → ((phi / K) ^ coset K y)%CF = (phi ^ y / K)%CF.
- -
-Lemma cfConjgQuo G H K (phi : 'CF(H)) y :
- H <| G → K <| G → y \in G →
- ((phi / K) ^ coset K y)%CF = (phi ^ y / K)%CF.
- -
-Lemma inertia_mod_pre G H K (phi : 'CF(H / K)) :
- H <| G → K <| G → 'I_G[phi %% K] = G :&: coset K @*^-1 'I_(G / K)[phi].
- -
-Lemma inertia_mod_quo G H K (phi : 'CF(H / K)) :
- H <| G → K <| G → ('I_G[phi %% K] / K)%g = 'I_(G / K)[phi].
- -
-Lemma inertia_quo G H K (phi : 'CF(H)) :
- H <| G → K <| G → K \subset cfker phi →
- 'I_(G / K)[phi / K] = ('I_G[phi] / K)%g.
- -
-End ConjQuotient.
- -
-Section InertiaSdprod.
- -
-Variables (gT : finGroupType) (K H G : {group gT}).
- -
-Hypothesis defG : K ><| H = G.
- -
-Lemma cfConjgSdprod phi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfSdprod defG phi ^ y = cfSdprod defG (phi ^ y))%CF.
- -
-Lemma inertia_sdprod (L : {group gT}) phi :
- L \subset 'N(K) → L \subset 'N(H) → 'I_L[cfSdprod defG phi] = 'I_L[phi].
- -
-End InertiaSdprod.
- -
-Section InertiaDprod.
- -
-Variables (gT : finGroupType) (G K H : {group gT}).
-Implicit Type L : {group gT}.
-Hypothesis KxH : K \x H = G.
- -
-Lemma cfConjgDprodl phi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfDprodl KxH phi ^ y = cfDprodl KxH (phi ^ y))%CF.
- -
-Lemma cfConjgDprodr psi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfDprodr KxH psi ^ y = cfDprodr KxH (psi ^ y))%CF.
- -
-Lemma cfConjgDprod phi psi y :
- y \in 'N(K) → y \in 'N(H) →
- (cfDprod KxH phi psi ^ y = cfDprod KxH (phi ^ y) (psi ^ y))%CF.
- -
-Lemma inertia_dprodl L phi :
- L \subset 'N(K) → L \subset 'N(H) → 'I_L[cfDprodl KxH phi] = 'I_L[phi].
- -
-Lemma inertia_dprodr L psi :
- L \subset 'N(K) → L \subset 'N(H) → 'I_L[cfDprodr KxH psi] = 'I_L[psi].
- -
-Lemma inertia_dprod L (phi : 'CF(K)) (psi : 'CF(H)) :
- L \subset 'N(K) → L \subset 'N(H) → phi 1%g != 0 → psi 1%g != 0 →
- 'I_L[cfDprod KxH phi psi] = 'I_L[phi] :&: 'I_L[psi].
- -
-Lemma inertia_dprod_irr L i j :
- L \subset 'N(K) → L \subset 'N(H) →
- 'I_L[cfDprod KxH 'chi_i 'chi_j] = 'I_L['chi_i] :&: 'I_L['chi_j].
- -
-End InertiaDprod.
- -
-Section InertiaBigdprod.
- -
-Variables (gT : finGroupType) (I : finType) (P : pred I).
-Variables (A : I → {group gT}) (G : {group gT}).
-Implicit Type L : {group gT}.
-Hypothesis defG : \big[dprod/1%g]_(i | P i) A i = G.
- -
-Section ConjBig.
- -
-Variable y : gT.
-Hypothesis nAy: ∀ i, P i → y \in 'N(A i).
- -
-Lemma cfConjgBigdprodi i (phi : 'CF(A i)) :
- (cfBigdprodi defG phi ^ y = cfBigdprodi defG (phi ^ y))%CF.
- -
-Lemma cfConjgBigdprod phi :
- (cfBigdprod defG phi ^ y = cfBigdprod defG (fun i ⇒ phi i ^ y))%CF.
- -
-End ConjBig.
- -
-Section InertiaBig.
- -
-Variable L : {group gT}.
-Hypothesis nAL : ∀ i, P i → L \subset 'N(A i).
- -
-Lemma inertia_bigdprodi i (phi : 'CF(A i)) :
- P i → 'I_L[cfBigdprodi defG phi] = 'I_L[phi].
- -
-Lemma inertia_bigdprod phi (Phi := cfBigdprod defG phi) :
- Phi 1%g != 0 → 'I_L[Phi] = L :&: \bigcap_(i | P i) 'I_L[phi i].
- -
-Lemma inertia_bigdprod_irr Iphi (phi := fun i ⇒ 'chi_(Iphi i)) :
- 'I_L[cfBigdprod defG phi] = L :&: \bigcap_(i | P i) 'I_L[phi i].
- -
-End InertiaBig.
- -
-End InertiaBigdprod.
- -
-Section ConsttInertiaBijection.
- -
-Variables (gT : finGroupType) (H G : {group gT}) (t : Iirr H).
-Hypothesis nsHG : H <| G.
- -
- -
-Let calA := irr_constt ('Ind[T] theta).
-Let calB := irr_constt ('Ind[G] theta).
- -
-
- This is Isaacs, Theorem (6.11).
-
-
-Theorem constt_Inertia_bijection :
- [/\ (*a*) {in calA, ∀ s, 'Ind[G] 'chi_s \in irr G},
- (*b*) {in calA &, injective (Ind_Iirr G)},
- Ind_Iirr G @: calA =i calB,
- (*c*) {in calA, ∀ s (psi := 'chi_s) (chi := 'Ind[G] psi),
- [predI irr_constt ('Res chi) & calA] =i pred1 s}
- & (*d*) {in calA, ∀ s (psi := 'chi_s) (chi := 'Ind[G] psi),
- '['Res psi, theta] = '['Res chi, theta]}].
- -
-End ConsttInertiaBijection.
- -
-Section ExtendInvariantIrr.
- -
-Variable gT : finGroupType.
-Implicit Types G H K L M N : {group gT}.
- -
-Section ConsttIndExtendible.
- -
-Variables (G N : {group gT}) (t : Iirr N) (c : Iirr G).
-Let theta := 'chi_t.
-Let chi := 'chi_c.
- -
-Definition mul_Iirr b := cfIirr ('chi_b × chi).
-Definition mul_mod_Iirr (b : Iirr (G / N)) := mul_Iirr (mod_Iirr b).
- -
-Hypotheses (nsNG : N <| G) (cNt : 'Res[N] chi = theta).
-Let sNG : N \subset G.
-Let nNG : G \subset 'N(N).
- -
-Lemma extendible_irr_invariant : G \subset 'I[theta].
-Let IGtheta := extendible_irr_invariant.
- -
-
-
-- [/\ (*a*) {in calA, ∀ s, 'Ind[G] 'chi_s \in irr G},
- (*b*) {in calA &, injective (Ind_Iirr G)},
- Ind_Iirr G @: calA =i calB,
- (*c*) {in calA, ∀ s (psi := 'chi_s) (chi := 'Ind[G] psi),
- [predI irr_constt ('Res chi) & calA] =i pred1 s}
- & (*d*) {in calA, ∀ s (psi := 'chi_s) (chi := 'Ind[G] psi),
- '['Res psi, theta] = '['Res chi, theta]}].
- -
-End ConsttInertiaBijection.
- -
-Section ExtendInvariantIrr.
- -
-Variable gT : finGroupType.
-Implicit Types G H K L M N : {group gT}.
- -
-Section ConsttIndExtendible.
- -
-Variables (G N : {group gT}) (t : Iirr N) (c : Iirr G).
-Let theta := 'chi_t.
-Let chi := 'chi_c.
- -
-Definition mul_Iirr b := cfIirr ('chi_b × chi).
-Definition mul_mod_Iirr (b : Iirr (G / N)) := mul_Iirr (mod_Iirr b).
- -
-Hypotheses (nsNG : N <| G) (cNt : 'Res[N] chi = theta).
-Let sNG : N \subset G.
-Let nNG : G \subset 'N(N).
- -
-Lemma extendible_irr_invariant : G \subset 'I[theta].
-Let IGtheta := extendible_irr_invariant.
- -
-
- This is Isaacs, Theorem (6.16)
-
-
-Theorem constt_Ind_mul_ext f (phi := 'chi_f) (psi := phi × theta) :
- G \subset 'I[phi] → psi \in irr N →
- let calS := irr_constt ('Ind phi) in
- [/\ {in calS, ∀ b, 'chi_b × chi \in irr G},
- {in calS &, injective mul_Iirr},
- irr_constt ('Ind psi) =i [seq mul_Iirr b | b in calS]
- & 'Ind psi = \sum_(b in calS) '['Ind phi, 'chi_b] *: 'chi_(mul_Iirr b)].
- -
-
-
-- G \subset 'I[phi] → psi \in irr N →
- let calS := irr_constt ('Ind phi) in
- [/\ {in calS, ∀ b, 'chi_b × chi \in irr G},
- {in calS &, injective mul_Iirr},
- irr_constt ('Ind psi) =i [seq mul_Iirr b | b in calS]
- & 'Ind psi = \sum_(b in calS) '['Ind phi, 'chi_b] *: 'chi_(mul_Iirr b)].
- -
-
- This is Isaacs, Corollary (6.17) (due to Gallagher).
-
-
-Corollary constt_Ind_ext :
- [/\ ∀ b : Iirr (G / N), 'chi_(mod_Iirr b) × chi \in irr G,
- injective mul_mod_Iirr,
- irr_constt ('Ind theta) =i codom mul_mod_Iirr
- & 'Ind theta = \sum_b 'chi_b 1%g *: 'chi_(mul_mod_Iirr b)].
- -
-End ConsttIndExtendible.
- -
-
-
-- [/\ ∀ b : Iirr (G / N), 'chi_(mod_Iirr b) × chi \in irr G,
- injective mul_mod_Iirr,
- irr_constt ('Ind theta) =i codom mul_mod_Iirr
- & 'Ind theta = \sum_b 'chi_b 1%g *: 'chi_(mul_mod_Iirr b)].
- -
-End ConsttIndExtendible.
- -
-
- This is Isaacs, Theorem (6.19).
-
-
-Theorem invariant_chief_irr_cases G K L s (theta := 'chi[K]_s) :
- chief_factor G L K → abelian (K / L) → G \subset 'I[theta] →
- let t := #|K : L| in
- [\/ 'Res[L] theta \in irr L,
- exists2 e, ∃ p, 'Res[L] theta = e%:R *: 'chi_p & (e ^ 2)%N = t
- | exists2 p, injective p & 'Res[L] theta = \sum_(i < t) 'chi_(p i)].
- -
-
-
-- chief_factor G L K → abelian (K / L) → G \subset 'I[theta] →
- let t := #|K : L| in
- [\/ 'Res[L] theta \in irr L,
- exists2 e, ∃ p, 'Res[L] theta = e%:R *: 'chi_p & (e ^ 2)%N = t
- | exists2 p, injective p & 'Res[L] theta = \sum_(i < t) 'chi_(p i)].
- -
-
- This is Isaacs, Corollary (6.19).
-
-
-Corollary cfRes_prime_irr_cases G N s p (chi := 'chi[G]_s) :
- N <| G → #|G : N| = p → prime p →
- [\/ 'Res[N] chi \in irr N
- | exists2 c, injective c & 'Res[N] chi = \sum_(i < p) 'chi_(c i)].
- -
-
-
-- N <| G → #|G : N| = p → prime p →
- [\/ 'Res[N] chi \in irr N
- | exists2 c, injective c & 'Res[N] chi = \sum_(i < p) 'chi_(c i)].
- -
-
- This is Isaacs, Corollary (6.20).
-
-
-Corollary prime_invariant_irr_extendible G N s p :
- N <| G → #|G : N| = p → prime p → G \subset 'I['chi_s] →
- {t | 'Res[N, G] 'chi_t = 'chi_s}.
- -
-
-
-- N <| G → #|G : N| = p → prime p → G \subset 'I['chi_s] →
- {t | 'Res[N, G] 'chi_t = 'chi_s}.
- -
-
- This is Isaacs, Lemma (6.24).
-
-
-Lemma extend_to_cfdet G N s c0 u :
- let theta := 'chi_s in let lambda := cfDet theta in let mu := 'chi_u in
- N <| G → coprime #|G : N| (truncC (theta 1%g)) →
- 'Res[N, G] 'chi_c0 = theta → 'Res[N, G] mu = lambda →
- exists2 c, 'Res 'chi_c = theta ∧ cfDet 'chi_c = mu
- & ∀ c1, 'Res 'chi_c1 = theta → cfDet 'chi_c1 = mu → c1 = c.
- -
-
-
-- let theta := 'chi_s in let lambda := cfDet theta in let mu := 'chi_u in
- N <| G → coprime #|G : N| (truncC (theta 1%g)) →
- 'Res[N, G] 'chi_c0 = theta → 'Res[N, G] mu = lambda →
- exists2 c, 'Res 'chi_c = theta ∧ cfDet 'chi_c = mu
- & ∀ c1, 'Res 'chi_c1 = theta → cfDet 'chi_c1 = mu → c1 = c.
- -
-
- This is Isaacs, Theorem (6.25).
-
-
-Theorem solvable_irr_extendible_from_det G N s (theta := 'chi[N]_s) :
- N <| G → solvable (G / N) →
- G \subset 'I[theta] → coprime #|G : N| (truncC (theta 1%g)) →
- [∃ c, 'Res 'chi[G]_c == theta]
- = [∃ u, 'Res 'chi[G]_u == cfDet theta].
- -
-
-
-- N <| G → solvable (G / N) →
- G \subset 'I[theta] → coprime #|G : N| (truncC (theta 1%g)) →
- [∃ c, 'Res 'chi[G]_c == theta]
- = [∃ u, 'Res 'chi[G]_u == cfDet theta].
- -
-
- This is Isaacs, Theorem (6.26).
-
-
-Theorem extend_linear_char_from_Sylow G N (lambda : 'CF(N)) :
- N <| G → lambda \is a linear_char → G \subset 'I[lambda] →
- (∀ p, p \in \pi('o(lambda)%CF) →
- exists2 Hp : {group gT},
- [/\ N \subset Hp, Hp \subset G & p.-Sylow(G / N) (Hp / N)%g]
- & ∃ u, 'Res 'chi[Hp]_u = lambda) →
- ∃ u, 'Res[N, G] 'chi_u = lambda.
- -
-
-
-- N <| G → lambda \is a linear_char → G \subset 'I[lambda] →
- (∀ p, p \in \pi('o(lambda)%CF) →
- exists2 Hp : {group gT},
- [/\ N \subset Hp, Hp \subset G & p.-Sylow(G / N) (Hp / N)%g]
- & ∃ u, 'Res 'chi[Hp]_u = lambda) →
- ∃ u, 'Res[N, G] 'chi_u = lambda.
- -
-
- This is Isaacs, Corollary (6.27).
-
-
-Corollary extend_coprime_linear_char G N (lambda : 'CF(N)) :
- N <| G → lambda \is a linear_char → G \subset 'I[lambda] →
- coprime #|G : N| 'o(lambda)%CF →
- ∃ u, [/\ 'Res 'chi[G]_u = lambda, 'o('chi_u)%CF = 'o(lambda)%CF
- & ∀ v,
- 'Res 'chi_v = lambda → coprime #|G : N| 'o('chi_v)%CF →
- v = u].
- -
-
-
-- N <| G → lambda \is a linear_char → G \subset 'I[lambda] →
- coprime #|G : N| 'o(lambda)%CF →
- ∃ u, [/\ 'Res 'chi[G]_u = lambda, 'o('chi_u)%CF = 'o(lambda)%CF
- & ∀ v,
- 'Res 'chi_v = lambda → coprime #|G : N| 'o('chi_v)%CF →
- v = u].
- -
-
- This is Isaacs, Corollary (6.28).
-
-
-Corollary extend_solvable_coprime_irr G N t (theta := 'chi[N]_t) :
- N <| G → solvable (G / N) → G \subset 'I[theta] →
- coprime #|G : N| ('o(theta)%CF × truncC (theta 1%g)) →
- ∃ c, [/\ 'Res 'chi[G]_c = theta, 'o('chi_c)%CF = 'o(theta)%CF
- & ∀ d,
- 'Res 'chi_d = theta → coprime #|G : N| 'o('chi_d)%CF →
- d = c].
- -
-End ExtendInvariantIrr.
- -
-Section Frobenius.
- -
-Variables (gT : finGroupType) (G K : {group gT}).
- -
-
-
-- N <| G → solvable (G / N) → G \subset 'I[theta] →
- coprime #|G : N| ('o(theta)%CF × truncC (theta 1%g)) →
- ∃ c, [/\ 'Res 'chi[G]_c = theta, 'o('chi_c)%CF = 'o(theta)%CF
- & ∀ d,
- 'Res 'chi_d = theta → coprime #|G : N| 'o('chi_d)%CF →
- d = c].
- -
-End ExtendInvariantIrr.
- -
-Section Frobenius.
- -
-Variables (gT : finGroupType) (G K : {group gT}).
- -
-
- Because he only defines Frobenius groups in chapter 7, Isaacs does not
- state these theorems using the Frobenius property.
-
-
-
-
- This is Isaacs, Theorem 6.34(a1).
-
-
-
-
- This is Isaacs, Theorem 6.34(a2)
-
-
-
-
- This is Isaacs, Theorem 6.34(b)
-
-
-