One by one matrices #
This file proves that one by one matrices over a base are equivalent to the base itself under the
canonical map that sends a one by one matrix !![a]
to a
.
Main results #
Tags #
Matrix, Unique, AlgEquiv
def
Matrix.uniqueAddEquiv
{m : Type u_1}
{n : Type u_2}
{A : Type u_3}
[Unique m]
[Unique n]
[Add A]
:
The obvious additive isomorphism between M₁(A) and A, if A has an addition.
Equations
- Matrix.uniqueAddEquiv = { toEquiv := Matrix.uniqueEquiv, map_add' := ⋯ }
Instances For
def
Matrix.uniqueLinearEquiv
{m : Type u_1}
{n : Type u_2}
{A : Type u_3}
{R : Type u_4}
[Unique m]
[Unique n]
[Semiring R]
[AddCommMonoid A]
[Module R A]
:
M₁(A)
is linearly equivalent to A
as an R
-module where R
is a semiring.
Equations
- Matrix.uniqueLinearEquiv = { toFun := Matrix.uniqueAddEquiv.toFun, map_add' := ⋯, map_smul' := ⋯, invFun := Matrix.uniqueAddEquiv.invFun, left_inv := ⋯, right_inv := ⋯ }
Instances For
@[simp]
theorem
Matrix.uniqueLinearEquiv_symm_apply
{m : Type u_1}
{n : Type u_2}
{A : Type u_3}
{R : Type u_4}
[Unique m]
[Unique n]
[Semiring R]
[AddCommMonoid A]
[Module R A]
(a✝ : A)
:
M₁(A)
and A
are equivalent as rings.
Equations
- Matrix.uniqueRingEquiv = { toEquiv := Matrix.uniqueAddEquiv.toEquiv, map_mul' := ⋯, map_add' := ⋯ }
Instances For
@[simp]
theorem
Matrix.uniqueRingEquiv_symm_apply
{m : Type u_1}
{A : Type u_3}
[Unique m]
[NonUnitalNonAssocSemiring A]
(a : A)
:
@[simp]
theorem
Matrix.uniqueRingEquiv_apply
{m : Type u_1}
{A : Type u_3}
[Unique m]
[NonUnitalNonAssocSemiring A]
(M : Matrix m m A)
:
def
Matrix.uniqueAlgEquiv
{m : Type u_1}
{A : Type u_3}
{R : Type u_4}
[Unique m]
[Semiring A]
[CommSemiring R]
[Algebra R A]
:
M₁(A)
is equivalent to A
as an R
-algebra.
Equations
- Matrix.uniqueAlgEquiv = { toEquiv := Matrix.uniqueRingEquiv.toEquiv, map_mul' := ⋯, map_add' := ⋯, commutes' := ⋯ }
Instances For
@[simp]
theorem
Matrix.uniqueAlgEquiv_symm_apply
{m : Type u_1}
{A : Type u_3}
{R : Type u_4}
[Unique m]
[Semiring A]
[CommSemiring R]
[Algebra R A]
(a : A)
:
@[simp]
theorem
Matrix.uniqueAlgEquiv_apply
{m : Type u_1}
{A : Type u_3}
{R : Type u_4}
[Unique m]
[Semiring A]
[CommSemiring R]
[Algebra R A]
(M : Matrix m m A)
: