Equations
- MatrixGroups.termSL = Lean.ParserDescr.node `MatrixGroups.termSL 1024 (Lean.ParserDescr.symbol "SL")
def
Matrix.transvection.toSL
{n : Type u}
[DecidableEq n]
[Fintype n]
{R : Type v}
[CommRing R]
{i j : n}
(hij : i ≠ j)
(c : R)
:
Equations
- Matrix.transvection.toSL hij c = ⟨Matrix.transvection i j c, ⋯⟩
def
Matrix.TransvectionStruct.toSL
{n : Type u}
[DecidableEq n]
[Fintype n]
{R : Type v}
[CommRing R]
(t : TransvectionStruct n R)
:
Equations
- t.toSL = Matrix.transvection.toSL ⋯ t.c
def
Matrix.TransvectionStruct.toGL
{n : Type u}
[DecidableEq n]
[Fintype n]
{R : Type v}
[CommRing R]
(t : TransvectionStruct n R)
:
GL n R
Equations
def
GeneralLinearGroup.scalar
{R : Type v}
[CommRing R]
(n : Type u_1)
[DecidableEq n]
[Fintype n]
(r : Rˣ)
:
GL n R
Equations
- GeneralLinearGroup.scalar n r = (Units.map ↑(Matrix.scalar n)) r
theorem
GeneralLinearGroup.coe_scalar_matrix
{n : Type u}
[DecidableEq n]
[Fintype n]
{R : Type v}
[CommRing R]
(r : Rˣ)
:
The scalar matrix r • 1
belongs to GL n R
if and only if r
is a unit
theorem
GeneralLinearGroup.mem_range_unit_scalar_of_mem_range_scalar_and_mem_general_linear_group
{n : Type u}
[DecidableEq n]
[Fintype n]
{R : Type v}
[CommRing R]
{M : GL n R}
(hM : ↑M ∈ Set.range ⇑(Matrix.scalar n))
:
theorem
GeneralLinearGroup.Center.mem_center_general_linear_group_iff
{n : Type u}
[DecidableEq n]
[Fintype n]
{R : Type v}
[CommRing R]
{M : GL n R}
:
@[reducible, inline]
abbrev
ProjectiveGeneralLinearGroup
(n : Type u)
[DecidableEq n]
[Fintype n]
(R : Type v)
[CommRing R]
:
Type (max (max u v) v u)
A projective general linear group is the quotient of a special linear group by its center.
Equations
- ProjectiveGeneralLinearGroup n R = (GL n R ⧸ Subgroup.center (GL n R))
Instances For
@[reducible, inline]
abbrev
ProjectiveSpecialLinearGroup
(n : Type u)
[DecidableEq n]
[Fintype n]
(R : Type v)
[CommRing R]
:
Type (max (max u v) v u)
A projective special linear group is the quotient of a special linear group by its center.
Equations
Equations
Equations
Equations
- GL_monoidHom_PGL n R = QuotientGroup.mk' (Subgroup.center (GL n R))
Equations
- SL_monoidHom_PGL n R = (GL_monoidHom_PGL n R).comp (SL_monoidHom_GL n R)
theorem
coe
(R : Type v)
[CommRing R]
{n : Type u_1}
[Fintype n]
[DecidableEq n]
(x : Matrix.SpecialLinearGroup n R)
:
theorem
scalar_eq_smul_one
(n : Type u_1)
[Fintype n]
[DecidableEq n]
(R : Type u_2)
[CommRing R]
(r : R)
:
Equations
Equations
- PSL_monoidHom_PGL n R = QuotientGroup.lift (Subgroup.center (Matrix.SpecialLinearGroup n R)) (SL_monoidHom_PGL n R) ⋯
theorem
exists_SL_eq_scaled_GL_of_IsAlgClosed
{n : Type u_1}
{F : Type u_2}
[hn₁ : Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
(G : GL n F)
:
∃ (α : Fˣ) (S : Matrix.SpecialLinearGroup n F), α • Matrix.SpecialLinearGroup.toGL S = G
theorem
lift_scalar_matrix_eq_one
{n : Type u_1}
{F : Type u_2}
[hn₁ : Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
(c : Fˣ)
:
instance
instIsScalarTowerUnitsGeneralLinearGroup_classificationOfSubgroups
(n : Type u_1)
(R : Type u_2)
[Fintype n]
[DecidableEq n]
[CommRing R]
:
IsScalarTower Rˣ (GL n R) (GL n R)
theorem
Injective_PSL_monoidHom_PGL
(n : Type u_1)
(F : Type u_2)
[hn₁ : Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
:
theorem
SpecialLinearGroup.toGL_inj
{n : Type u_1}
[DecidableEq n]
[Fintype n]
{R : Type u_2}
[CommRing R]
:
theorem
ker_SL_monoidHom_PGL_eq_center
(R : Type v)
[CommRing R]
(n : Type u_1)
(F : Type u_2)
[hn₁ : Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
:
theorem
Surjective_PSL_monoidHom_PGL
(n : Type u_1)
(F : Type u_2)
[hn₁ : Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
:
theorem
Bijective_PSL_monoidHom_PGL
(n : Type u_1)
(F : Type u_2)
[hn₁ : Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
:
noncomputable def
PGL_iso_PSL
(n : Type u_1)
(F : Type u_2)
[Fintype n]
[DecidableEq n]
[Field F]
[IsAlgClosed F]
:
Equations
- PGL_iso_PSL n F = MulEquiv.ofBijective (PSL_monoidHom_PGL n F) ⋯