def
TwoSidedIdeal.mapMatrix
(A : Type u_1)
[Ring A]
(ι : Type)
[Fintype ι]
(I : TwoSidedIdeal A)
:
TwoSidedIdeal (Matrix ι ι A)
If I
is a two-sided-ideal of A
, then Mₙ(I) := {(xᵢⱼ) | ∀ i j, xᵢⱼ ∈ I}
is a two-sided-ideal of
Mₙ(A)
.
Equations
- TwoSidedIdeal.mapMatrix A ι I = { ringCon := { r := fun (X Y : Matrix ι ι A) => ∀ (i j : ι), I.ringCon (X i j) (Y i j), iseqv := ⋯, mul' := ⋯, add' := ⋯ } }
Instances For
The two-sided-ideals of A
corresponds bijectively to that of Mₙ(A)
.
Given an ideal I ≤ A
, we send it to Mₙ(I)
.
Given an ideal J ≤ Mₙ(A)
, we send it to {x₀₀ | x ∈ J}
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
TwoSidedIdeal.equivRingConMatrix_apply
(A : Type u_1)
[Ring A]
(ι : Type)
[Fintype ι]
(oo : ι)
(I : TwoSidedIdeal A)
:
@[simp]
theorem
TwoSidedIdeal.equivRingConMatrix_symm_apply
(A : Type u_1)
[Ring A]
(ι : Type)
[Fintype ι]
(oo : ι)
(J : TwoSidedIdeal (Matrix ι ι A))
:
The two-sided-ideals of A
corresponds bijectively to that of Mₙ(A)
.
Given an ideal I ≤ A
, we send it to Mₙ(I)
.
Given an ideal J ≤ Mₙ(A)
, we send it to {x₀₀ | x ∈ J}
.
Equations
- TwoSidedIdeal.equivRingConMatrix' A ι oo = { toEquiv := TwoSidedIdeal.equivRingConMatrix A ι oo, map_rel_iff' := ⋯ }
Instances For
@[simp]
theorem
TwoSidedIdeal.equivRingConMatrix'_symm_apply_ringCon_r
(A : Type u_1)
[Ring A]
(ι : Type)
[Fintype ι]
(oo : ι)
(J : TwoSidedIdeal (Matrix ι ι A))
(x y : A)
:
@[simp]
theorem
TwoSidedIdeal.equivRingConMatrix'_apply_ringCon_r
(A : Type u_1)
[Ring A]
(ι : Type)
[Fintype ι]
(oo : ι)
(I : TwoSidedIdeal A)
(X Y : Matrix ι ι A)
:
The canonical map from Aᵒᵖ
to Hom(A, A)
Equations
- mopToEnd A = { toFun := fun (a : Aᵐᵒᵖ) => { toFun := fun (x : A) => x * MulOpposite.unop a, map_add' := ⋯, map_smul' := ⋯ }, map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }
Instances For
@[simp]
The canonical map from A
to Hom(A, A)ᵒᵖ
Equations
- toEndMop A = { toFun := fun (a : A) => MulOpposite.op { toFun := fun (x : A) => x * a, map_add' := ⋯, map_smul' := ⋯ }, map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }
Instances For
@[simp]
the map Aᵒᵖ → Hom(A, A)
is bijective
Equations
- mopEquivEnd A = RingEquiv.ofBijective (mopToEnd A) ⋯
Instances For
the map Aᵒᵖ → Hom(A, A)
is bijective
Equations
- equivEndMop A = RingEquiv.ofBijective (toEndMop A) ⋯
Instances For
@[simp]
@[simp]
@[simp]
theorem
matrixEquivMatrixMop_apply
(n : ℕ)
(D : Type u_4)
[Ring D]
(M : Matrix (Fin n) (Fin n) Dᵐᵒᵖ)
:
(matrixEquivMatrixMop n D) M = MulOpposite.op (M.transpose.map fun (d : Dᵐᵒᵖ) => MulOpposite.unop d)
@[simp]
theorem
matrixEquivMatrixMop_symm_apply
(n : ℕ)
(D : Type u_4)
[Ring D]
(M : (Matrix (Fin n) (Fin n) D)ᵐᵒᵖ)
:
(matrixEquivMatrixMop n D).symm M = (MulOpposite.unop M).transpose.map fun (d : D) => MulOpposite.op d
@[reducible, inline]
noncomputable abbrev
Wedderburn_Artin.aux.n
{A : Type u}
[Ring A]
[simple : IsSimpleRing A]
(I : Ideal A)
(I_nontrivial : I ≠ ⊥)
:
Equations
- Wedderburn_Artin.aux.n I I_nontrivial = Nat.find ⋯
Instances For
@[reducible, inline]
noncomputable abbrev
Wedderburn_Artin.aux.x
{A : Type u}
[Ring A]
[simple : IsSimpleRing A]
(I : Ideal A)
(I_nontrivial : I ≠ ⊥)
:
Equations
- Wedderburn_Artin.aux.x I I_nontrivial = ⋯.choose
Instances For
@[reducible, inline]
noncomputable abbrev
Wedderburn_Artin.aux.i
{A : Type u}
[Ring A]
[simple : IsSimpleRing A]
(I : Ideal A)
(I_nontrivial : I ≠ ⊥)
:
Equations
- Wedderburn_Artin.aux.i I I_nontrivial = ⋯.choose
Instances For
theorem
Wedderburn_Artin.aux.n_ne_zero
{A : Type u}
[Ring A]
[simple : IsSimpleRing A]
(I : Ideal A)
(I_nontrivial : I ≠ ⊥)
:
def
endPowEquivMatrix
(A : Type u_4)
[Ring A]
(M : Type u_5)
[AddCommGroup M]
[Module A M]
(n : ℕ)
:
Equations
- endPowEquivMatrix A M n = ↑(endVecAlgEquivMatrixEnd (Fin n) ℤ A M)
Instances For
theorem
Wedderburn_Artin_ideal_version
(A : Type u)
[Ring A]
[IsArtinianRing A]
[simple : IsSimpleRing A]
:
@[simp]
theorem
algebraMapEndIdealMop_apply
(K : Type u)
{B : Type v}
[Field K]
[Ring B]
[Algebra K B]
(I : Ideal B)
(k : K)
:
(algebraMapEndIdealMop K I) k = MulOpposite.op { toFun := fun (x : ↥I) => k • x, map_add' := ⋯, map_smul' := ⋯ }
instance
instAlgebraMulOppositeEndSubtypeMemIdeal_brauerGroup
(K : Type u)
(B : Type v)
[Field K]
[Ring B]
[Algebra K B]
(I : Ideal B)
:
Algebra K (Module.End B ↥I)ᵐᵒᵖ
Equations
theorem
Wedderburn_Artin_algebra_version
(K : Type u)
(B : Type v)
[Field K]
[Ring B]
[Algebra K B]
[FiniteDimensional K B]
[sim : IsSimpleRing B]
:
theorem
bijective_algebraMap_of_finiteDimensional_divisionRing_over_algClosed
(K : Type u_2)
(D : Type u_3)
[Field K]
[IsAlgClosed K]
[DivisionRing D]
[alg : Algebra K D]
[FiniteDimensional K D]
:
Function.Bijective ⇑(algebraMap K D)
theorem
simple_eq_matrix_algClosed
(K : Type u)
(B : Type v)
[Field K]
[Ring B]
[Algebra K B]
[FiniteDimensional K B]
[IsAlgClosed K]
[IsSimpleRing B]
: