Documentation

HexMatrixMathlib.Algebra

@[instance_reducible]
instance HexMatrixMathlib.instAdd {R : Type u} {n m : } [Add R] :
Add (Hex.Matrix R n m)
Equations
@[instance_reducible]
instance HexMatrixMathlib.instNeg {R : Type u} {n m : } [Neg R] :
Neg (Hex.Matrix R n m)
Equations
@[instance_reducible]
instance HexMatrixMathlib.instSub {R : Type u} {n m : } [Sub R] :
Sub (Hex.Matrix R n m)
Equations
@[simp]
theorem HexMatrixMathlib.rows_add {R : Type u} {n m : } [Add R] (A B : Hex.Matrix R n m) :
(A + B).rows = A.rows + B.rows
@[simp]
theorem HexMatrixMathlib.rows_neg {R : Type u} {n m : } [Neg R] (A : Hex.Matrix R n m) :
(-A).rows = -A.rows
@[simp]
theorem HexMatrixMathlib.rows_sub {R : Type u} {n m : } [Sub R] (A B : Hex.Matrix R n m) :
(A - B).rows = A.rows - B.rows
@[simp]
theorem HexMatrixMathlib.matrixEquiv_zero {R : Type u} {n m : } [Zero R] :
@[simp]
theorem HexMatrixMathlib.matrixEquiv_add {R : Type u} {n m : } [Add R] (A B : Hex.Matrix R n m) :
@[simp]
theorem HexMatrixMathlib.matrixEquiv_neg {R : Type u} {n m : } [Neg R] (A : Hex.Matrix R n m) :
@[simp]
theorem HexMatrixMathlib.matrixEquiv_sub {R : Type u} {n m : } [Sub R] (A B : Hex.Matrix R n m) :
@[simp]
theorem HexMatrixMathlib.matrixEquiv_smul {R : Type u} {n m : } {S : Type u_1} [SMul S R] (c : S) (A : Hex.Matrix R n m) :
@[instance_reducible]
instance HexMatrixMathlib.instOne {R : Type u} {n : } [OfNat R 0] [OfNat R 1] :
One (Hex.Matrix R n n)

1 on a square matrix is the identity matrix. The instance is here rather than in HexMatrix because the Semiring/Ring structures transported below need it, while HexMatrix states its own lemmas with Matrix.identity.

Equations

matrixEquiv as an additive equivalence.

Equations
Instances For

    matrixEquiv as an R-linear equivalence.

    Equations
    Instances For
      @[simp]
      theorem HexMatrixMathlib.matrixEquiv_one {R : Type u} {n : } [Zero R] [One R] :
      @[simp]
      @[instance_reducible]
      instance HexMatrixMathlib.instNatCast {R : Type u} {n : } [Semiring R] :
      Equations
      @[instance_reducible]
      instance HexMatrixMathlib.instIntCast {R : Type u} {n : } [Ring R] :
      Equations
      @[instance_reducible]
      instance HexMatrixMathlib.instPow {R : Type u} {n : } [Semiring R] :
      Equations
      @[simp]
      theorem HexMatrixMathlib.matrixEquiv_natCast {R : Type u} {n : } [Semiring R] (k : ) :
      matrixEquiv k = k
      @[simp]
      theorem HexMatrixMathlib.matrixEquiv_intCast {R : Type u} {n : } [Ring R] (k : ) :
      matrixEquiv k = k
      @[simp]
      theorem HexMatrixMathlib.matrixEquiv_pow {R : Type u} {n : } [Semiring R] (M : Hex.Matrix R n n) (k : ) :
      @[instance_reducible]
      Equations
      @[instance_reducible]
      instance HexMatrixMathlib.instRing {R : Type u} {n : } [Ring R] :
      Equations

      matrixEquiv as a ring equivalence on square matrices.

      Equations
      Instances For
        @[instance_reducible]
        instance HexMatrixMathlib.instAlgebra {R : Type u} {n : } [CommSemiring R] :
        Equations

        matrixEquiv as an R-algebra equivalence on square matrices.

        Equations
        Instances For