Dependent-typed matrices #
@[simp]
@[simp]
The transpose of a dmatrix.
Instances For
def
DMatrix.col
{m : Type u_1}
{α : m → Type v}
(w : (i : m) → α i)
:
DMatrix m Unit fun (i : m) (_j : Unit) => α i
DMatrix.col u is the column matrix whose entries are given by u.
Instances For
def
DMatrix.row
{n : Type u_2}
{α : n → Type v}
(v : (j : n) → α j)
:
DMatrix Unit n fun (_i : Unit) (j : n) => α j
DMatrix.row u is the row matrix whose entries are given by u.
Instances For
@[implicit_reducible]
instance
DMatrix.instInhabited
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Inhabited (α i j)]
:
Inhabited (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instAdd
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Add (α i j)]
:
Add (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instAddSemigroup
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → AddSemigroup (α i j)]
:
AddSemigroup (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instAddCommSemigroup
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → AddCommSemigroup (α i j)]
:
AddCommSemigroup (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instZero
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Zero (α i j)]
:
Zero (DMatrix m n α)
@[implicit_reducible]
@[implicit_reducible]
instance
DMatrix.instAddCommMonoid
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → AddCommMonoid (α i j)]
:
AddCommMonoid (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instNeg
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Neg (α i j)]
:
Neg (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instSub
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Sub (α i j)]
:
Sub (DMatrix m n α)
@[implicit_reducible]
@[implicit_reducible]
instance
DMatrix.instAddCommGroup
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → AddCommGroup (α i j)]
:
AddCommGroup (DMatrix m n α)
@[implicit_reducible]
instance
DMatrix.instSubsingleton
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[∀ (i : m) (j : n), Subsingleton (α i j)]
:
Subsingleton (DMatrix m n α)
@[simp]
theorem
DMatrix.zero_apply
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Zero (α i j)]
(i : m)
(j : n)
:
0 i j = 0
@[simp]
@[simp]
theorem
DMatrix.add_apply
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Add (α i j)]
(M N : DMatrix m n α)
(i : m)
(j : n)
:
(M + N) i j = M i j + N i j
@[simp]
theorem
DMatrix.sub_apply
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → Sub (α i j)]
(M N : DMatrix m n α)
(i : m)
(j : n)
:
(M - N) i j = M i j - N i j
@[simp]
def
AddMonoidHom.mapDMatrix
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → AddMonoid (α i j)]
{β : m → n → Type w}
[(i : m) → (j : n) → AddMonoid (β i j)]
(f : ⦃i : m⦄ → ⦃j : n⦄ → α i j →+ β i j)
:
The AddMonoidHom between spaces of dependently typed matrices
induced by an AddMonoidHom between their coefficients.
Instances For
@[simp]
theorem
AddMonoidHom.mapDMatrix_apply
{m : Type u_1}
{n : Type u_2}
{α : m → n → Type v}
[(i : m) → (j : n) → AddMonoid (α i j)]
{β : m → n → Type w}
[(i : m) → (j : n) → AddMonoid (β i j)]
(f : ⦃i : m⦄ → ⦃j : n⦄ → α i j →+ β i j)
(M : DMatrix m n α)
:
(mapDMatrix f) M = M.map fun (i : m) (j : n) => ⇑f