ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- LinearMap.toMatrix₂Aux_apply
@[simp]
theorem LinearMap.toMatrix₂Aux_apply (f : M₁ →ₛₗ[σ₁] M₂ →ₛₗ[σ₂] N₂) (b₁ : n → M₁) (b₂ : m → M₂)
    (i : n) (j : m) : LinearMap.toMatrix₂Aux R b₁ b₂ f i j = f (b₁ i) (b₂ j) 
Arguments: (R : Type u_1) {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [Semiring R₁] [Semiring S₁] [Semiring R₂] [Semiring S₂] [AddCommMonoid M₁] [Module R₁ M₁] [AddCommMonoid M₂] [Module R₂ M₂] [AddCommMonoid N₂] [Module R N₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] {σ₁ : R₁ →+* S₁} {σ₂ : R₂ →+* S₂} (f : M₁ →ₛₗ[σ₁] M₂ →ₛₗ[σ₂] N₂) (b₁ : n → M₁) (b₂ : m → M₂) (i : n) (j : m)
Goal: (LinearMap.toMatrix₂Aux R b₁ b₂) f i j = (f (b₁ i)) (b₂ j)
-- LinearMap.toLinearMap₂'Aux_toMatrix₂Aux
theorem LinearMap.toLinearMap₂'Aux_toMatrix₂Aux (f : (n → R₁) →ₛₗ[σ₁] (m → R₂) →ₛₗ[σ₂] N₂) :
    Matrix.toLinearMap₂'Aux σ₁ σ₂
        (LinearMap.toMatrix₂Aux R (fun i => stdBasis R₁ (fun _ => R₁) i 1)
          (fun j => stdBasis R₂ (fun _ => R₂) j 1) f) =
      f 
Arguments: (R : Type u_1) {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [Semiring R₁] [Semiring S₁] [Semiring R₂] [Semiring S₂] [AddCommMonoid N₂] [Module R N₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] {σ₁ : R₁ →+* S₁} {σ₂ : R₂ →+* S₂} [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (f : (n → R₁) →ₛₗ[σ₁] (m → R₂) →ₛₗ[σ₂] N₂)
Goal: Matrix.toLinearMap₂'Aux σ₁ σ₂
    ((LinearMap.toMatrix₂Aux R (fun i => (LinearMap.stdBasis R₁ (fun x => R₁) i) 1) fun j =>
        (LinearMap.stdBasis R₂ (fun x => R₂) j) 1)
      f) =
  f
-- Matrix.toMatrix₂Aux_toLinearMap₂'Aux
theorem Matrix.toMatrix₂Aux_toLinearMap₂'Aux (f : Matrix n m N₂) :
    LinearMap.toMatrix₂Aux R (fun i => LinearMap.stdBasis R₁ (fun _ => R₁) i 1)
        (fun j => LinearMap.stdBasis R₂ (fun _ => R₂) j 1) (f.toLinearMap₂'Aux σ₁ σ₂) =
      f 
Arguments: (R : Type u_1) {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [Semiring R₁] [Semiring S₁] [Semiring R₂] [Semiring S₂] [AddCommMonoid N₂] [Module R N₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] {σ₁ : R₁ →+* S₁} {σ₂ : R₂ →+* S₂} [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (f : Matrix n m N₂)
Goal: (LinearMap.toMatrix₂Aux R (fun i => (LinearMap.stdBasis R₁ (fun x => R₁) i) 1) fun j =>
      (LinearMap.stdBasis R₂ (fun x => R₂) j) 1)
    (Matrix.toLinearMap₂'Aux σ₁ σ₂ f) =
  f
-- Matrix.toLinearMapₛₗ₂'_aux_eq
theorem Matrix.toLinearMapₛₗ₂'_aux_eq (M : Matrix n m N₂) :
    Matrix.toLinearMap₂'Aux σ₁ σ₂ M = Matrix.toLinearMapₛₗ₂' R σ₁ σ₂ M 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂)
Goal: Matrix.toLinearMap₂'Aux σ₁ σ₂ M = (Matrix.toLinearMapₛₗ₂' R σ₁ σ₂) M
-- Matrix.toLinearMapₛₗ₂'_apply
theorem Matrix.toLinearMapₛₗ₂'_apply (M : Matrix n m N₂) (x : n → R₁) (y : m → R₂) :
    -- porting note: we don't seem to have `∑ i j` as valid notation yet
    Matrix.toLinearMapₛₗ₂' R σ₁ σ₂ M x y = ∑ i, ∑ j, σ₁ (x i) •  σ₂ (y j) • M i j 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂) (x : n → R₁) (y : m → R₂)
Goal: (((Matrix.toLinearMapₛₗ₂' R σ₁ σ₂) M) x) y = ∑ i : n, ∑ j : m, σ₁ (x i) •> σ₂ (y j) •> M i j
-- Matrix.toLinearMap₂'_apply
theorem Matrix.toLinearMap₂'_apply (M : Matrix n m N₂) (x : n → S₁) (y : m → S₂) :
    -- porting note: we don't seem to have `∑ i j` as valid notation yet
    Matrix.toLinearMap₂' R M x y = ∑ i, ∑ j, x i • y j • M i j 
Arguments: {R : Type u_1} {S₁ : Type u_3} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂) (x : n → S₁) (y : m → S₂)
Goal: (((Matrix.toLinearMap₂' R) M) x) y = ∑ i : n, ∑ j : m, x i •> y j •> M i j
-- Matrix.toLinearMap₂'_apply'
theorem Matrix.toLinearMap₂'_apply' {T : Type*} [CommSemiring T] (M : Matrix n m T) (v : n → T)
    (w : m → T) : Matrix.toLinearMap₂' T M v w = Matrix.dotProduct v (M *ᵥ w) 
Arguments: {n : Type u_12} {m : Type u_13} [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] {T : Type u_17} [CommSemiring T] (M : Matrix n m T) (v : n → T) (w : m → T)
Goal: (((Matrix.toLinearMap₂' T) M) v) w = v ⬝ᵥ M *ᵥ w
-- Matrix.toLinearMapₛₗ₂'_stdBasis
@[simp]
theorem Matrix.toLinearMapₛₗ₂'_stdBasis (M : Matrix n m N₂) (i : n) (j : m) :
    Matrix.toLinearMapₛₗ₂' R σ₁ σ₂ M (LinearMap.stdBasis R₁ (fun _ => R₁) i 1)
      (LinearMap.stdBasis R₂ (fun _ => R₂) j 1) = M i j 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂) (i : n) (j : m)
Goal: (((Matrix.toLinearMapₛₗ₂' R σ₁ σ₂) M) ((LinearMap.stdBasis R₁ (fun x => R₁) i) 1))
    ((LinearMap.stdBasis R₂ (fun x => R₂) j) 1) =
  M i j
-- Matrix.toLinearMap₂'_stdBasis
@[simp]
theorem Matrix.toLinearMap₂'_stdBasis (M : Matrix n m N₂) (i : n) (j : m) :
    Matrix.toLinearMap₂' R M (LinearMap.stdBasis R (fun _ => R) i 1)
      (LinearMap.stdBasis R (fun _ => R) j 1) = M i j 
Arguments: {R : Type u_1} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [SMulCommClass R R N₂] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂) (i : n) (j : m)
Goal: (((Matrix.toLinearMap₂' R) M) ((LinearMap.stdBasis R (fun x => R) i) 1)) ((LinearMap.stdBasis R (fun x => R) j) 1) =
  M i j
-- LinearMap.toMatrixₛₗ₂'_symm
@[simp]
theorem LinearMap.toMatrixₛₗ₂'_symm :
    ((LinearMap.toMatrixₛₗ₂' R).symm : Matrix n m N₂ ≃ₗ[R] _) = Matrix.toLinearMapₛₗ₂' R σ₁ σ₂ 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m]
Goal: (LinearMap.toMatrixₛₗ₂' R).symm = Matrix.toLinearMapₛₗ₂' R σ₁ σ₂
-- Matrix.toLinearMapₛₗ₂'_symm
@[simp]
theorem Matrix.toLinearMapₛₗ₂'_symm :
    ((Matrix.toLinearMapₛₗ₂' R σ₁ σ₂).symm : _ ≃ₗ[R] Matrix n m N₂) = LinearMap.toMatrixₛₗ₂' R 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m]
Goal: (Matrix.toLinearMapₛₗ₂' R σ₁ σ₂).symm = LinearMap.toMatrixₛₗ₂' R
-- Matrix.toLinearMapₛₗ₂'_toMatrix'
@[simp]
theorem Matrix.toLinearMapₛₗ₂'_toMatrix' (B : (n → R₁) →ₛₗ[σ₁] (m → R₂) →ₛₗ[σ₂] N₂) :
    Matrix.toLinearMapₛₗ₂' R σ₁ σ₂ (LinearMap.toMatrixₛₗ₂' R B) = B 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (B : (n → R₁) →ₛₗ[σ₁] (m → R₂) →ₛₗ[σ₂] N₂)
Goal: (Matrix.toLinearMapₛₗ₂' R σ₁ σ₂) ((LinearMap.toMatrixₛₗ₂' R) B) = B
-- Matrix.toLinearMap₂'_toMatrix'
@[simp]
theorem Matrix.toLinearMap₂'_toMatrix' (B : (n → S₁) →ₗ[S₁] (m → S₂) →ₗ[S₂] N₂) :
    Matrix.toLinearMap₂' R (LinearMap.toMatrix₂' R B) = B 
Arguments: {R : Type u_1} {S₁ : Type u_3} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (B : (n → S₁) →ₗ[S₁] (m → S₂) →ₗ[S₂] N₂)
Goal: (Matrix.toLinearMap₂' R) ((LinearMap.toMatrix₂' R) B) = B
-- LinearMap.toMatrix'_toLinearMapₛₗ₂'
@[simp]
theorem LinearMap.toMatrix'_toLinearMapₛₗ₂' (M : Matrix n m N₂) :
    LinearMap.toMatrixₛₗ₂' R (Matrix.toLinearMapₛₗ₂' R σ₁ σ₂ M) = M 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂)
Goal: (LinearMap.toMatrixₛₗ₂' R) ((Matrix.toLinearMapₛₗ₂' R σ₁ σ₂) M) = M
-- LinearMap.toMatrix'_toLinearMap₂'
@[simp]
theorem LinearMap.toMatrix'_toLinearMap₂' (M : Matrix n m N₂) :
    LinearMap.toMatrix₂' R (Matrix.toLinearMap₂' R (S₁ := S₁) (S₂ := S₂) M) = M 
Arguments: {R : Type u_1} {S₁ : Type u_3} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (M : Matrix n m N₂)
Goal: (LinearMap.toMatrix₂' R) ((Matrix.toLinearMap₂' R) M) = M
-- LinearMap.toMatrixₛₗ₂'_apply
@[simp]
theorem LinearMap.toMatrixₛₗ₂'_apply (B : (n → R₁) →ₛₗ[σ₁] (m → R₂) →ₛₗ[σ₂] N₂) (i : n) (j : m) :
    LinearMap.toMatrixₛₗ₂' R B i j =
      B (stdBasis R₁ (fun _ => R₁) i 1) (stdBasis R₂ (fun _ => R₂) j 1) 
Arguments: {R : Type u_1} {R₁ : Type u_2} {S₁ : Type u_3} {R₂ : Type u_4} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring R₁] [Semiring R₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] (σ₁ : R₁ →+* S₁) (σ₂ : R₂ →+* S₂) [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (B : (n → R₁) →ₛₗ[σ₁] (m → R₂) →ₛₗ[σ₂] N₂) (i : n) (j : m)
Goal: (LinearMap.toMatrixₛₗ₂' R) B i j =
  (B ((LinearMap.stdBasis R₁ (fun x => R₁) i) 1)) ((LinearMap.stdBasis R₂ (fun x => R₂) j) 1)
-- LinearMap.toMatrix₂'_apply
@[simp]
theorem LinearMap.toMatrix₂'_apply (B : (n → S₁) →ₗ[S₁] (m → S₂) →ₗ[S₂] N₂) (i : n) (j : m) :
    LinearMap.toMatrix₂' R B i j =
      B (stdBasis S₁ (fun _ => S₁) i 1) (stdBasis S₂ (fun _ => S₂) j 1) 
Arguments: {R : Type u_1} {S₁ : Type u_3} {S₂ : Type u_5} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [Semiring S₁] [Semiring S₂] [Module S₁ N₂] [Module S₂ N₂] [SMulCommClass S₁ R N₂] [SMulCommClass S₂ R N₂] [SMulCommClass S₂ S₁ N₂] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] (B : (n → S₁) →ₗ[S₁] (m → S₂) →ₗ[S₂] N₂) (i : n) (j : m)
Goal: (LinearMap.toMatrix₂' R) B i j =
  (B ((LinearMap.stdBasis S₁ (fun x => S₁) i) 1)) ((LinearMap.stdBasis S₂ (fun x => S₂) j) 1)
-- LinearMap.toMatrix₂'_compl₁₂
@[simp]
theorem LinearMap.toMatrix₂'_compl₁₂ (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (l : (n' → R) →ₗ[R] n → R)
    (r : (m' → R) →ₗ[R] m → R) :
    toMatrix₂' R (B.compl₁₂ l r) = (toMatrix' l)ᵀ * toMatrix₂' R B * toMatrix' r 
Arguments: {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (l : (n' → R) →ₗ[R] n → R) (r : (m' → R) →ₗ[R] m → R)
Goal: (LinearMap.toMatrix₂' R) (B.compl₁₂ l r) = (LinearMap.toMatrix' l)ᵀ * (LinearMap.toMatrix₂' R) B * LinearMap.toMatrix' r
-- LinearMap.toMatrix₂'_comp
theorem LinearMap.toMatrix₂'_comp (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (f : (n' → R) →ₗ[R] n → R) :
    toMatrix₂' R (B.comp f) = (toMatrix' f)ᵀ * toMatrix₂' R B 
Arguments: {n : Type u_12} {m : Type u_13} {n' : Type u_14} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype n'] [DecidableEq n'] (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (f : (n' → R) →ₗ[R] n → R)
Goal: (LinearMap.toMatrix₂' R) (B ∘ₗ f) = (LinearMap.toMatrix' f)ᵀ * (LinearMap.toMatrix₂' R) B
-- LinearMap.toMatrix₂'_compl₂
theorem LinearMap.toMatrix₂'_compl₂ (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (f : (m' → R) →ₗ[R] m → R) :
    toMatrix₂' R (B.compl₂ f) = toMatrix₂' R B * toMatrix' f 
Arguments: {n : Type u_12} {m : Type u_13} {m' : Type u_15} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype m'] [DecidableEq m'] (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (f : (m' → R) →ₗ[R] m → R)
Goal: (LinearMap.toMatrix₂' R) (B.compl₂ f) = (LinearMap.toMatrix₂' R) B * LinearMap.toMatrix' f
-- LinearMap.mul_toMatrix₂'_mul
theorem LinearMap.mul_toMatrix₂'_mul (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (M : Matrix n' n R)
    (N : Matrix m m' R) :
    M * toMatrix₂' R B * N = toMatrix₂' R (B.compl₁₂ (toLin' Mᵀ) (toLin' N)) 
Arguments: {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (M : Matrix n' n R) (N : Matrix m m' R)
Goal: M * (LinearMap.toMatrix₂' R) B * N = (LinearMap.toMatrix₂' R) (B.compl₁₂ (Matrix.toLin' Mᵀ) (Matrix.toLin' N))
-- LinearMap.mul_toMatrix'
theorem LinearMap.mul_toMatrix' (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (M : Matrix n' n R) :
    M * toMatrix₂' R B = toMatrix₂' R (B.comp <| toLin' Mᵀ) 
Arguments: {n : Type u_12} {m : Type u_13} {n' : Type u_14} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype n'] [DecidableEq n'] (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (M : Matrix n' n R)
Goal: M * (LinearMap.toMatrix₂' R) B = (LinearMap.toMatrix₂' R) (B ∘ₗ Matrix.toLin' Mᵀ)
-- LinearMap.toMatrix₂'_mul
theorem LinearMap.toMatrix₂'_mul (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (M : Matrix m m' R) :
    toMatrix₂' R B * M = toMatrix₂' R (B.compl₂ <| toLin' M) 
Arguments: {n : Type u_12} {m : Type u_13} {m' : Type u_15} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype m'] [DecidableEq m'] (B : (n → R) →ₗ[R] (m → R) →ₗ[R] R) (M : Matrix m m' R)
Goal: (LinearMap.toMatrix₂' R) B * M = (LinearMap.toMatrix₂' R) (B.compl₂ (Matrix.toLin' M))
-- Matrix.toLinearMap₂'_comp
theorem Matrix.toLinearMap₂'_comp (M : Matrix n m R) (P : Matrix n n' R) (Q : Matrix m m' R) :
    LinearMap.compl₁₂ (Matrix.toLinearMap₂' R M) (toLin' P) (toLin' Q) =
      toLinearMap₂' R (Pᵀ * M * Q) 
Arguments: {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} {R : Type u_17} [CommSemiring R] [Fintype n] [Fintype m] [DecidableEq n] [DecidableEq m] [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (M : Matrix n m R) (P : Matrix n n' R) (Q : Matrix m m' R)
Goal: ((Matrix.toLinearMap₂' R) M).compl₁₂ (Matrix.toLin' P) (Matrix.toLin' Q) = (Matrix.toLinearMap₂' R) (Pᵀ * M * Q)
-- LinearMap.toMatrix₂_apply
@[simp]
theorem LinearMap.toMatrix₂_apply (B : M₁ →ₗ[R] M₂ →ₗ[R] N₂) (i : n) (j : m) :
    LinearMap.toMatrix₂ b₁ b₂ B i j = B (b₁ i) (b₂ j) 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) (B : M₁ →ₗ[R] M₂ →ₗ[R] N₂) (i : n) (j : m)
Goal: (LinearMap.toMatrix₂ b₁ b₂) B i j = (B (b₁ i)) (b₂ j)
-- Matrix.toLinearMap₂_apply
@[simp]
theorem Matrix.toLinearMap₂_apply (M : Matrix n m N₂) (x : M₁) (y : M₂) :
    Matrix.toLinearMap₂ b₁ b₂ M x y = ∑ i, ∑ j, b₁.repr x i • b₂.repr y j • M i j 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) (M : Matrix n m N₂) (x : M₁) (y : M₂)
Goal: (((Matrix.toLinearMap₂ b₁ b₂) M) x) y = ∑ i : n, ∑ j : m, (b₁.repr x) i •> (b₂.repr y) j •> M i j
-- LinearMap.toMatrix₂Aux_eq
theorem LinearMap.toMatrix₂Aux_eq (B : M₁ →ₗ[R] M₂ →ₗ[R] N₂) :
    LinearMap.toMatrix₂Aux R b₁ b₂ B = LinearMap.toMatrix₂ b₁ b₂ B 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) (B : M₁ →ₗ[R] M₂ →ₗ[R] N₂)
Goal: (LinearMap.toMatrix₂Aux R ⇑b₁ ⇑b₂) B = (LinearMap.toMatrix₂ b₁ b₂) B
-- LinearMap.toMatrix₂_symm
@[simp]
theorem LinearMap.toMatrix₂_symm :
    (LinearMap.toMatrix₂ b₁ b₂).symm = Matrix.toLinearMap₂ (N₂ := N₂) b₁ b₂ 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂)
Goal: (LinearMap.toMatrix₂ b₁ b₂).symm = Matrix.toLinearMap₂ b₁ b₂
-- Matrix.toLinearMap₂_symm
@[simp]
theorem Matrix.toLinearMap₂_symm :
    (Matrix.toLinearMap₂ b₁ b₂).symm = LinearMap.toMatrix₂ (N₂ := N₂) b₁ b₂ 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂)
Goal: (Matrix.toLinearMap₂ b₁ b₂).symm = LinearMap.toMatrix₂ b₁ b₂
-- Matrix.toLinearMap₂_basisFun
theorem Matrix.toLinearMap₂_basisFun :
    Matrix.toLinearMap₂ (Pi.basisFun R n) (Pi.basisFun R m) =
      Matrix.toLinearMap₂' R (N₂ := N₂) 
Arguments: {R : Type u_1} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m]
Goal: Matrix.toLinearMap₂ (Pi.basisFun R n) (Pi.basisFun R m) = Matrix.toLinearMap₂' R
-- LinearMap.toMatrix₂_basisFun
theorem LinearMap.toMatrix₂_basisFun :
    LinearMap.toMatrix₂ (Pi.basisFun R n) (Pi.basisFun R m) =
    LinearMap.toMatrix₂' R (N₂ := N₂) 
Arguments: {R : Type u_1} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m]
Goal: LinearMap.toMatrix₂ (Pi.basisFun R n) (Pi.basisFun R m) = LinearMap.toMatrix₂' R
-- Matrix.toLinearMap₂_toMatrix₂
@[simp]
theorem Matrix.toLinearMap₂_toMatrix₂ (B : M₁ →ₗ[R] M₂ →ₗ[R] N₂) :
    Matrix.toLinearMap₂ b₁ b₂ (LinearMap.toMatrix₂ b₁ b₂ B) = B 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) (B : M₁ →ₗ[R] M₂ →ₗ[R] N₂)
Goal: (Matrix.toLinearMap₂ b₁ b₂) ((LinearMap.toMatrix₂ b₁ b₂) B) = B
-- LinearMap.toMatrix₂_toLinearMap₂
@[simp]
theorem LinearMap.toMatrix₂_toLinearMap₂ (M : Matrix n m N₂) :
    LinearMap.toMatrix₂ b₁ b₂ (Matrix.toLinearMap₂ b₁ b₂ M) = M 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {N₂ : Type u_11} {n : Type u_12} {m : Type u_13} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [AddCommMonoid N₂] [Module R N₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) (M : Matrix n m N₂)
Goal: (LinearMap.toMatrix₂ b₁ b₂) ((Matrix.toLinearMap₂ b₁ b₂) M) = M
-- LinearMap.toMatrix₂_compl₁₂
theorem LinearMap.toMatrix₂_compl₁₂ (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (l : M₁' →ₗ[R] M₁)
    (r : M₂' →ₗ[R] M₂) :
    LinearMap.toMatrix₂ b₁' b₂' (B.compl₁₂ l r) =
      (toMatrix b₁' b₁ l)ᵀ * LinearMap.toMatrix₂ b₁ b₂ B * toMatrix b₂' b₂ r 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₁' : Type u_9} {M₂' : Type u_10} {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₁'] [Module R M₁'] [AddCommMonoid M₂'] [Module R M₂'] (b₁' : Basis n' R M₁') (b₂' : Basis m' R M₂') [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (l : M₁' →ₗ[R] M₁) (r : M₂' →ₗ[R] M₂)
Goal: (LinearMap.toMatrix₂ b₁' b₂') (B.compl₁₂ l r) =
  ((LinearMap.toMatrix b₁' b₁) l)ᵀ * (LinearMap.toMatrix₂ b₁ b₂) B * (LinearMap.toMatrix b₂' b₂) r
-- LinearMap.toMatrix₂_comp
theorem LinearMap.toMatrix₂_comp (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (f : M₁' →ₗ[R] M₁) :
    LinearMap.toMatrix₂ b₁' b₂ (B.comp f) =
      (toMatrix b₁' b₁ f)ᵀ * LinearMap.toMatrix₂ b₁ b₂ B 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₁' : Type u_9} {n : Type u_12} {m : Type u_13} {n' : Type u_14} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₁'] [Module R M₁'] (b₁' : Basis n' R M₁') [Fintype n'] [DecidableEq n'] (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (f : M₁' →ₗ[R] M₁)
Goal: (LinearMap.toMatrix₂ b₁' b₂) (B ∘ₗ f) = ((LinearMap.toMatrix b₁' b₁) f)ᵀ * (LinearMap.toMatrix₂ b₁ b₂) B
-- LinearMap.toMatrix₂_compl₂
theorem LinearMap.toMatrix₂_compl₂ (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (f : M₂' →ₗ[R] M₂) :
    LinearMap.toMatrix₂ b₁ b₂' (B.compl₂ f) =
      LinearMap.toMatrix₂ b₁ b₂ B * toMatrix b₂' b₂ f 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₂' : Type u_10} {n : Type u_12} {m : Type u_13} {m' : Type u_15} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₂'] [Module R M₂'] (b₂' : Basis m' R M₂') [Fintype m'] [DecidableEq m'] (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (f : M₂' →ₗ[R] M₂)
Goal: (LinearMap.toMatrix₂ b₁ b₂') (B.compl₂ f) = (LinearMap.toMatrix₂ b₁ b₂) B * (LinearMap.toMatrix b₂' b₂) f