Documentation

TauCeti.LinearAlgebra.RootSystem.Weyl.Transport

Transporting the Weyl group along an equivalence of root pairings #

An equivalence e : P.Equiv Q of root pairings conjugates automorphisms of P into automorphisms of Q (RootPairing.Equiv.autCongr, in TauCeti/LinearAlgebra/RootSystem/EquivComp.lean), and that conjugation carries reflections to reflections: the reflection in the root i goes to the reflection in the root e.indexEquiv i. Since RootPairing.weylGroup is by definition the subgroup of RootPairing.Aut generated by the reflections, conjugation maps it onto the Weyl group of Q, and therefore restricts to a group isomorphism of Weyl groups.

This is what lets a Weyl-group computation performed on one root system be read off on any isomorphic one. Combined with the rigidity half of the Cartan--Killing classification it makes the Weyl group an invariant of the Dynkin type alone; that consequence is drawn in TauCeti/LinearAlgebra/RootSystem/Weyl/CartanType.lean.

Nothing here needs the index sets, the weight spaces or the coweight spaces of the two pairings to agree: e.indexEquiv transports indices, e.weightEquiv transports weight vectors, and the isomorphism of Weyl groups is compatible with both.

Main definitions #

Main results #

References #

@[simp]
theorem RootPairing.Equiv.autCongr_reflection {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) (i : ι) :

Conjugation carries reflections to reflections: the reflection in the root i goes to the reflection in the root e.indexEquiv i.

@[simp]
theorem RootPairing.Equiv.map_weylGroup {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) :

Conjugation maps the Weyl group of P onto the Weyl group of Q.

instance RootPairing.weylGroup_normal {ι : Type u_1} {R : Type u_4} {M : Type u_5} {N : Type u_6} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : RootPairing ι R M N} :

The Weyl group is a normal subgroup of the automorphism group: conjugation by an automorphism g maps the Weyl group onto itself (RootPairing.Equiv.map_weylGroup for e := g).

noncomputable def RootPairing.Equiv.weylGroupEquiv {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) :

The Weyl group transported along an equivalence of root pairings. Conjugation by e restricts to a group isomorphism of Weyl groups.

Instances For
    @[simp]
    theorem RootPairing.Equiv.coe_weylGroupEquiv {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) (w : ↥P.weylGroup) :
    ↑(e.weylGroupEquiv w) = e.autCongr ↑w
    @[simp]
    theorem RootPairing.Equiv.coe_weylGroupEquiv_symm {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) (w : ↥Q.weylGroup) :
    @[simp]
    theorem RootPairing.Equiv.weylGroupEquiv_ofIdx {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) (i : ι) :

    The isomorphism of Weyl groups matches up the reflections in the indexed roots along e.indexEquiv.

    theorem RootPairing.Equiv.weylGroupToPerm_weylGroupEquiv {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) (w : ↥P.weylGroup) :

    The isomorphism of Weyl groups is equivariant for the permutation actions on root indices: the permutation of Q's root indices is the one of P's conjugated by e.indexEquiv.

    Not a simp lemma: RootPairing.weylGroupToPerm is a MonoidHom.domRestrict, so MonoidHom.domRestrict_apply, RootPairing.Equiv.coe_weylGroupEquiv and RootPairing.Equiv.indexHom_apply rewrite the left-hand side to (↑(e.autCongr ↑w)).indexEquiv; RootPairing.Equiv.indexEquiv_autCongr_apply is the simp lemma that then finishes the job.

    theorem RootPairing.Equiv.weylGroupEquiv_smul {ι : Type u_1} {ι₂ : Type u_2} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} (e : P.Equiv Q) (w : ↥P.weylGroup) (x : M) :

    The isomorphism of Weyl groups is equivariant for the actions on weight vectors.

    Not a simp lemma, for the same reason as RootPairing.Equiv.autCongr_smul.

    @[simp]
    theorem RootPairing.Equiv.weylGroupEquiv_id {ι : Type u_1} {R : Type u_4} {M : Type u_5} {N : Type u_6} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : RootPairing ι R M N} :

    The Weyl-group isomorphism of the identity equivalence is the identity.

    @[simp]
    theorem RootPairing.Equiv.weylGroupEquiv_comp {ι : Type u_1} {ι₂ : Type u_2} {ι₃ : Type u_3} {R : Type u_4} {M : Type u_5} {N : Type u_6} {M₂ : Type u_7} {N₂ : Type u_8} {M₃ : Type u_9} {N₃ : Type u_10} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup M₂] [Module R M₂] [AddCommGroup N₂] [Module R N₂] [AddCommGroup M₃] [Module R M₃] [AddCommGroup N₃] [Module R N₃] {P : RootPairing ι R M N} {Q : RootPairing ι₂ R M₂ N₂} {S : RootPairing ι₃ R M₃ N₃} (e : P.Equiv Q) (f : Q.Equiv S) :

    The Weyl-group isomorphism of a composite is the composite of the Weyl-group isomorphisms.