Theorem: Basis.toMatrix_mul_toMatrix
File: Mathlib/LinearAlgebra/Matrix/Basis.lean

tactic: haveI := Classical.decEq ι
state_before: ι : Type u_3
ι' : Type u_2
κ : Type ?u.623919
κ' : Type ?u.623922
R : Type u_4
M : Type u_5
inst✝⁸ : CommSemiring R
inst✝⁷ : AddCommMonoid M
inst✝⁶ : Module R M
R₂ : Type ?u.624115
M₂ : Type ?u.624118
inst✝⁵ : CommRing R₂
inst✝⁴ : AddCommGroup M₂
inst✝³ : Module R₂ M₂
e : Basis ι R M
v : ι' → M
i : ι
j : ι'
N : Type ?u.624863
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
b : Basis ι R M
b' : Basis ι' R M
c : Basis κ R N
c' : Basis κ' R N
f : M →ₗ[R] N
ι'' : Type u_1
inst✝ : Fintype ι'
b'' : ι'' → M
⊢ toMatrix b ↑b' ⬝ toMatrix b' b'' = toMatrix b b''

tactic: haveI := Classical.decEq ι'
state_before: ι : Type u_3
ι' : Type u_2
κ : Type ?u.623919
κ' : Type ?u.623922
R : Type u_4
M : Type u_5
inst✝⁸ : CommSemiring R
inst✝⁷ : AddCommMonoid M
inst✝⁶ : Module R M
R₂ : Type ?u.624115
M₂ : Type ?u.624118
inst✝⁵ : CommRing R₂
inst✝⁴ : AddCommGroup M₂
inst✝³ : Module R₂ M₂
e : Basis ι R M
v : ι' → M
i : ι
j : ι'
N : Type ?u.624863
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
b : Basis ι R M
b' : Basis ι' R M
c : Basis κ R N
c' : Basis κ' R N
f : M →ₗ[R] N
ι'' : Type u_1
inst✝ : Fintype ι'
b'' : ι'' → M
this : DecidableEq ι
⊢ toMatrix b ↑b' ⬝ toMatrix b' b'' = toMatrix b b''

tactic: haveI := Classical.decEq ι''
state_before: ι : Type u_3
ι' : Type u_2
κ : Type ?u.623919
κ' : Type ?u.623922
R : Type u_4
M : Type u_5
inst✝⁸ : CommSemiring R
inst✝⁷ : AddCommMonoid M
inst✝⁶ : Module R M
R₂ : Type ?u.624115
M₂ : Type ?u.624118
inst✝⁵ : CommRing R₂
inst✝⁴ : AddCommGroup M₂
inst✝³ : Module R₂ M₂
e : Basis ι R M
v : ι' → M
i : ι
j : ι'
N : Type ?u.624863
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
b : Basis ι R M
b' : Basis ι' R M
c : Basis κ R N
c' : Basis κ' R N
f : M →ₗ[R] N
ι'' : Type u_1
inst✝ : Fintype ι'
b'' : ι'' → M
this✝ : DecidableEq ι
this : DecidableEq ι'
⊢ toMatrix b ↑b' ⬝ toMatrix b' b'' = toMatrix b b''

tactic: ext (i j)
state_before: ι : Type u_3
ι' : Type u_2
κ : Type ?u.623919
κ' : Type ?u.623922
R : Type u_4
M : Type u_5
inst✝⁸ : CommSemiring R
inst✝⁷ : AddCommMonoid M
inst✝⁶ : Module R M
R₂ : Type ?u.624115
M₂ : Type ?u.624118
inst✝⁵ : CommRing R₂
inst✝⁴ : AddCommGroup M₂
inst✝³ : Module R₂ M₂
e : Basis ι R M
v : ι' → M
i : ι
j : ι'
N : Type ?u.624863
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
b : Basis ι R M
b' : Basis ι' R M
c : Basis κ R N
c' : Basis κ' R N
f : M →ₗ[R] N
ι'' : Type u_1
inst✝ : Fintype ι'
b'' : ι'' → M
this✝¹ : DecidableEq ι
this✝ : DecidableEq ι'
this : DecidableEq ι''
⊢ toMatrix b ↑b' ⬝ toMatrix b' b'' = toMatrix b b''

tactic: simp only [Matrix.mul_apply, Basis.toMatrix_apply, Basis.sum_repr_mul_repr]
state_before: case a.h
ι : Type u_3
ι' : Type u_2
κ : Type ?u.623919
κ' : Type ?u.623922
R : Type u_4
M : Type u_5
inst✝⁸ : CommSemiring R
inst✝⁷ : AddCommMonoid M
inst✝⁶ : Module R M
R₂ : Type ?u.624115
M₂ : Type ?u.624118
inst✝⁵ : CommRing R₂
inst✝⁴ : AddCommGroup M₂
inst✝³ : Module R₂ M₂
e : Basis ι R M
v : ι' → M
i✝ : ι
j✝ : ι'
N : Type ?u.624863
inst✝² : AddCommMonoid N
inst✝¹ : Module R N
b : Basis ι R M
b' : Basis ι' R M
c : Basis κ R N
c' : Basis κ' R N
f : M →ₗ[R] N
ι'' : Type u_1
inst✝ : Fintype ι'
b'' : ι'' → M
this✝¹ : DecidableEq ι
this✝ : DecidableEq ι'
this : DecidableEq ι''
i : ι
j : ι''
⊢ (toMatrix b ↑b' ⬝ toMatrix b' b'') i j = toMatrix b b'' i j