Documentation

Mathlib.LinearAlgebra.GeneralLinearGroup.Basic

The general linear group of linear maps #

The general linear group is defined to be the group of invertible linear maps from M to itself.

See also Matrix.GeneralLinearGroup

Main definitions #

@[reducible, inline]
abbrev LinearMap.GeneralLinearGroup (R : Type u_1) (M : Type u_2) [Semiring R] [AddCommMonoid M] [Module R M] :
Type u_2

The group of invertible linear maps from M to itself

Equations
    Instances For

      An invertible linear map f determines an equivalence from M to itself.

      Equations
        Instances For
          @[simp]
          theorem LinearMap.GeneralLinearGroup.coe_toLinearEquiv {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] (f : GeneralLinearGroup R M) :
          โ‡‘f.toLinearEquiv = โ‡‘โ†‘f

          An equivalence from M to itself determines an invertible linear map.

          Equations
            Instances For
              @[simp]
              theorem LinearMap.GeneralLinearGroup.coe_ofLinearEquiv {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] (f : M โ‰ƒโ‚—[R] M) :
              โ‡‘โ†‘(ofLinearEquiv f) = โ‡‘f

              The general linear group on R and M is multiplicatively equivalent to the type of linear equivalences between M and itself.

              Equations
                Instances For
                  @[simp]
                  theorem LinearMap.GeneralLinearGroup.coeFn_generalLinearEquiv {R : Type u_1} {M : Type u_2} [Semiring R] [AddCommMonoid M] [Module R M] (f : GeneralLinearGroup R M) :
                  โ‡‘((generalLinearEquiv R M) f) = โ‡‘โ†‘f
                  def LinearMap.GeneralLinearGroup.congrLinearEquiv {Rโ‚ : Type u_3} {Rโ‚‚ : Type u_4} {Mโ‚ : Type u_6} {Mโ‚‚ : Type u_7} [Semiring Rโ‚] [Semiring Rโ‚‚] [AddCommMonoid Mโ‚] [AddCommMonoid Mโ‚‚] [Module Rโ‚ Mโ‚] [Module Rโ‚‚ Mโ‚‚] {ฯƒโ‚โ‚‚ : Rโ‚ โ†’+* Rโ‚‚} {ฯƒโ‚‚โ‚ : Rโ‚‚ โ†’+* Rโ‚} [RingHomInvPair ฯƒโ‚โ‚‚ ฯƒโ‚‚โ‚] [RingHomInvPair ฯƒโ‚‚โ‚ ฯƒโ‚โ‚‚] (eโ‚โ‚‚ : Mโ‚ โ‰ƒโ‚›โ‚—[ฯƒโ‚โ‚‚] Mโ‚‚) :
                  GeneralLinearGroup Rโ‚ Mโ‚ โ‰ƒ* GeneralLinearGroup Rโ‚‚ Mโ‚‚

                  A semilinear equivalence from V to W determines an isomorphism of general linear groups.

                  Equations
                    Instances For
                      @[simp]
                      theorem LinearMap.GeneralLinearGroup.congrLinearEquiv_apply {Rโ‚ : Type u_3} {Rโ‚‚ : Type u_4} {Mโ‚ : Type u_6} {Mโ‚‚ : Type u_7} [Semiring Rโ‚] [Semiring Rโ‚‚] [AddCommMonoid Mโ‚] [AddCommMonoid Mโ‚‚] [Module Rโ‚ Mโ‚] [Module Rโ‚‚ Mโ‚‚] {ฯƒโ‚โ‚‚ : Rโ‚ โ†’+* Rโ‚‚} {ฯƒโ‚‚โ‚ : Rโ‚‚ โ†’+* Rโ‚} [RingHomInvPair ฯƒโ‚โ‚‚ ฯƒโ‚‚โ‚] [RingHomInvPair ฯƒโ‚‚โ‚ ฯƒโ‚โ‚‚] (eโ‚โ‚‚ : Mโ‚ โ‰ƒโ‚›โ‚—[ฯƒโ‚โ‚‚] Mโ‚‚) (g : GeneralLinearGroup Rโ‚ Mโ‚) :
                      (congrLinearEquiv eโ‚โ‚‚) g = ofLinearEquiv (eโ‚โ‚‚.symm.trans (g.toLinearEquiv.trans eโ‚โ‚‚))
                      @[simp]
                      theorem LinearMap.GeneralLinearGroup.congrLinearEquiv_symm {Rโ‚ : Type u_3} {Rโ‚‚ : Type u_4} {Mโ‚ : Type u_6} {Mโ‚‚ : Type u_7} [Semiring Rโ‚] [Semiring Rโ‚‚] [AddCommMonoid Mโ‚] [AddCommMonoid Mโ‚‚] [Module Rโ‚ Mโ‚] [Module Rโ‚‚ Mโ‚‚] {ฯƒโ‚โ‚‚ : Rโ‚ โ†’+* Rโ‚‚} {ฯƒโ‚‚โ‚ : Rโ‚‚ โ†’+* Rโ‚} [RingHomInvPair ฯƒโ‚โ‚‚ ฯƒโ‚‚โ‚] [RingHomInvPair ฯƒโ‚‚โ‚ ฯƒโ‚โ‚‚] (eโ‚โ‚‚ : Mโ‚ โ‰ƒโ‚›โ‚—[ฯƒโ‚โ‚‚] Mโ‚‚) :
                      (congrLinearEquiv eโ‚โ‚‚).symm = congrLinearEquiv eโ‚โ‚‚.symm
                      @[simp]
                      theorem LinearMap.GeneralLinearGroup.congrLinearEquiv_trans {R : Type u_1} [Semiring R] {Nโ‚ : Type u_9} {Nโ‚‚ : Type u_10} {Nโ‚ƒ : Type u_11} [AddCommMonoid Nโ‚] [AddCommMonoid Nโ‚‚] [AddCommMonoid Nโ‚ƒ] [Module R Nโ‚] [Module R Nโ‚‚] [Module R Nโ‚ƒ] (eโ‚โ‚‚ : Nโ‚ โ‰ƒโ‚—[R] Nโ‚‚) (eโ‚‚โ‚ƒ : Nโ‚‚ โ‰ƒโ‚—[R] Nโ‚ƒ) :
                      (congrLinearEquiv eโ‚โ‚‚).trans (congrLinearEquiv eโ‚‚โ‚ƒ) = congrLinearEquiv (eโ‚โ‚‚ โ‰ชโ‰ซโ‚— eโ‚‚โ‚ƒ)
                      theorem LinearMap.GeneralLinearGroup.congrLinearEquiv_trans' {Rโ‚ : Type u_3} {Rโ‚‚ : Type u_4} {Rโ‚ƒ : Type u_5} {Mโ‚ : Type u_6} {Mโ‚‚ : Type u_7} {Mโ‚ƒ : Type u_8} [Semiring Rโ‚] [Semiring Rโ‚‚] [Semiring Rโ‚ƒ] [AddCommMonoid Mโ‚] [AddCommMonoid Mโ‚‚] [AddCommMonoid Mโ‚ƒ] [Module Rโ‚ Mโ‚] [Module Rโ‚‚ Mโ‚‚] [Module Rโ‚ƒ Mโ‚ƒ] {ฯƒโ‚โ‚‚ : Rโ‚ โ†’+* Rโ‚‚} {ฯƒโ‚‚โ‚ƒ : Rโ‚‚ โ†’+* Rโ‚ƒ} {ฯƒโ‚โ‚ƒ : Rโ‚ โ†’+* Rโ‚ƒ} {ฯƒโ‚‚โ‚ : Rโ‚‚ โ†’+* Rโ‚} {ฯƒโ‚ƒโ‚‚ : Rโ‚ƒ โ†’+* Rโ‚‚} {ฯƒโ‚ƒโ‚ : Rโ‚ƒ โ†’+* Rโ‚} [RingHomInvPair ฯƒโ‚โ‚‚ ฯƒโ‚‚โ‚] [RingHomInvPair ฯƒโ‚‚โ‚ƒ ฯƒโ‚ƒโ‚‚] [RingHomInvPair ฯƒโ‚โ‚ƒ ฯƒโ‚ƒโ‚] [RingHomInvPair ฯƒโ‚‚โ‚ ฯƒโ‚โ‚‚] [RingHomInvPair ฯƒโ‚ƒโ‚‚ ฯƒโ‚‚โ‚ƒ] [RingHomInvPair ฯƒโ‚ƒโ‚ ฯƒโ‚โ‚ƒ] [RingHomCompTriple ฯƒโ‚โ‚‚ ฯƒโ‚‚โ‚ƒ ฯƒโ‚โ‚ƒ] [RingHomCompTriple ฯƒโ‚ƒโ‚‚ ฯƒโ‚‚โ‚ ฯƒโ‚ƒโ‚] (eโ‚โ‚‚ : Mโ‚ โ‰ƒโ‚›โ‚—[ฯƒโ‚โ‚‚] Mโ‚‚) (eโ‚‚โ‚ƒ : Mโ‚‚ โ‰ƒโ‚›โ‚—[ฯƒโ‚‚โ‚ƒ] Mโ‚ƒ) :
                      (congrLinearEquiv eโ‚โ‚‚).trans (congrLinearEquiv eโ‚‚โ‚ƒ) = congrLinearEquiv (eโ‚โ‚‚.trans eโ‚‚โ‚ƒ)

                      Stronger form of congrLinearEquiv.trans applying to semilinear maps. Not a simp lemma as ฯƒโ‚โ‚ƒ and ฯƒโ‚ƒโ‚ cannot be inferred from the LHS.

                      @[simp]
                      theorem LinearMap.GeneralLinearGroup.congrLinearEquiv_refl {Rโ‚ : Type u_3} {Mโ‚ : Type u_6} [Semiring Rโ‚] [AddCommMonoid Mโ‚] [Module Rโ‚ Mโ‚] :
                      congrLinearEquiv (LinearEquiv.refl Rโ‚ Mโ‚) = MulEquiv.refl (GeneralLinearGroup Rโ‚ Mโ‚)