Theorem: Matrix.charmatrix_reindex
File: Mathlib/LinearAlgebra/Matrix/Charpoly/Basic.lean

tactic: ext i j x
state_before: R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i j : n
e : n ≃ m
⊢ ((reindex e e) M).charmatrix = (reindex e e) M.charmatrix
state_after: case a.a
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x

tactic: by_cases h : i = j
state_before: case a.a
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x
state_after: case pos
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
h : i = j
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x

case neg
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
h : ¬i = j
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x

tactic: all_goals simp [h]
state_before: case pos
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
h : i = j
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x

case neg
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
h : ¬i = j
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x
state_after: no goals

tactic: simp [h]
state_before: case neg
R : Type u_1
S : Type u_2
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
m : Type u_3
n : Type u_4
inst✝³ : DecidableEq m
inst✝² : DecidableEq n
inst✝¹ : Fintype m
inst✝ : Fintype n
M₁₁ : Matrix m m R
M₁₂ : Matrix m n R
M₂₁ : Matrix n m R
M₂₂ M : Matrix n n R
i✝ j✝ : n
e : n ≃ m
i j : m
x : ℕ
h : ¬i = j
⊢ (((reindex e e) M).charmatrix i j).coeff x = ((reindex e e) M.charmatrix i j).coeff x
state_after: no goals