Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 5fc6281

Browse files
chore(data/matrix/basic): rename _val lemmas to _apply (#3297)
We use `_apply` for lemmas about applications of functions to arguments. Arguably "picking out the entries of a matrix" could warrant a different name, but as we treat matrices just as functions all over, I think it's better to use the usual names. Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Bryan Gin-ge Chen <bryangingechen@gmail.com>
1 parent d952e8b commit 5fc6281

File tree

10 files changed

+85
-84
lines changed

10 files changed

+85
-84
lines changed

src/algebra/classical_lie_algebras.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ begin
124124
let B := Eb R j i hij.symm,
125125
intros c,
126126
have c' : A.val ⬝ B.val = B.val ⬝ A.val := by { rw [←sub_eq_zero, ←sl_bracket, c.abelian], refl, },
127-
have : (1 : R) = 0 := by simpa [matrix.mul_val, hij] using (congr_fun (congr_fun c' i) i),
127+
have : (1 : R) = 0 := by simpa [matrix.mul_apply, hij] using (congr_fun (congr_fun c' i) i),
128128
exact one_ne_zero this,
129129
end
130130

src/data/matrix/basic.lean

Lines changed: 48 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,9 @@ instance [has_neg α] : has_neg (matrix m n α) := pi.has_neg
6464
instance [add_group α] : add_group (matrix m n α) := pi.add_group
6565
instance [add_comm_group α] : add_comm_group (matrix m n α) := pi.add_comm_group
6666

67-
@[simp] theorem zero_val [has_zero α] (i j) : (0 : matrix m n α) i j = 0 := rfl
68-
@[simp] theorem neg_val [has_neg α] (M : matrix m n α) (i j) : (- M) i j = - M i j := rfl
69-
@[simp] theorem add_val [has_add α] (M N : matrix m n α) (i j) : (M + N) i j = M i j + N i j := rfl
67+
@[simp] theorem zero_apply [has_zero α] (i j) : (0 : matrix m n α) i j = 0 := rfl
68+
@[simp] theorem neg_apply [has_neg α] (M : matrix m n α) (i j) : (- M) i j = - M i j := rfl
69+
@[simp] theorem add_apply [has_add α] (M N : matrix m n α) (i j) : (M + N) i j = M i j + N i j := rfl
7070

7171
@[simp] lemma map_zero [has_zero α] {β : Type w} [has_zero β] {f : α → β} (h : f 0 = 0) :
7272
(0 : matrix m n α).map f = 0 :=
@@ -100,14 +100,14 @@ variables [decidable_eq n]
100100
if `i ≠ j`. -/
101101
def diagonal [has_zero α] (d : n → α) : matrix n n α := λ i j, if i = j then d i else 0
102102

103-
@[simp] theorem diagonal_val_eq [has_zero α] {d : n → α} (i : n) : (diagonal d) i i = d i :=
103+
@[simp] theorem diagonal_apply_eq [has_zero α] {d : n → α} (i : n) : (diagonal d) i i = d i :=
104104
by simp [diagonal]
105105

106-
@[simp] theorem diagonal_val_ne [has_zero α] {d : n → α} {i j : n} (h : i ≠ j) :
106+
@[simp] theorem diagonal_apply_ne [has_zero α] {d : n → α} {i j : n} (h : i ≠ j) :
107107
(diagonal d) i j = 0 := by simp [diagonal, h]
108108

109-
theorem diagonal_val_ne' [has_zero α] {d : n → α} {i j : n} (h : j ≠ i) :
110-
(diagonal d) i j = 0 := diagonal_val_ne h.symm
109+
theorem diagonal_apply_ne' [has_zero α] {d : n → α} {i j : n} (h : j ≠ i) :
110+
(diagonal d) i j = 0 := diagonal_apply_ne h.symm
111111

112112
@[simp] theorem diagonal_zero [has_zero α] : (diagonal (λ _, 0) : matrix n n α) = 0 :=
113113
by simp [diagonal]; refl
@@ -118,7 +118,7 @@ begin
118118
ext i j,
119119
by_cases h : i = j,
120120
{ simp [h, transpose] },
121-
{ simp [h, transpose, diagonal_val_ne' h] }
121+
{ simp [h, transpose, diagonal_apply_ne' h] }
122122
end
123123

124124
@[simp] theorem diagonal_add [add_monoid α] (d₁ d₂ : n → α) :
@@ -137,43 +137,43 @@ instance : has_one (matrix n n α) := ⟨diagonal (λ _, 1)⟩
137137

138138
@[simp] theorem diagonal_one : (diagonal (λ _, 1) : matrix n n α) = 1 := rfl
139139

140-
theorem one_val {i j} : (1 : matrix n n α) i j = if i = j then 1 else 0 := rfl
140+
theorem one_apply {i j} : (1 : matrix n n α) i j = if i = j then 1 else 0 := rfl
141141

142-
@[simp] theorem one_val_eq (i) : (1 : matrix n n α) i i = 1 := diagonal_val_eq i
142+
@[simp] theorem one_apply_eq (i) : (1 : matrix n n α) i i = 1 := diagonal_apply_eq i
143143

144-
@[simp] theorem one_val_ne {i j} : i ≠ j → (1 : matrix n n α) i j = 0 :=
145-
diagonal_val_ne
144+
@[simp] theorem one_apply_ne {i j} : i ≠ j → (1 : matrix n n α) i j = 0 :=
145+
diagonal_apply_ne
146146

147-
theorem one_val_ne' {i j} : j ≠ i → (1 : matrix n n α) i j = 0 :=
148-
diagonal_val_ne'
147+
theorem one_apply_ne' {i j} : j ≠ i → (1 : matrix n n α) i j = 0 :=
148+
diagonal_apply_ne'
149149

150150
@[simp] lemma one_map {β : Type w} [has_zero β] [has_one β]
151151
{f : α → β} (h₀ : f 0 = 0) (h₁ : f 1 = 1) :
152152
(1 : matrix n n α).map f = (1 : matrix n n β) :=
153-
by { ext, simp only [one_val, map_apply], split_ifs; simp [h₀, h₁], }
153+
by { ext, simp only [one_apply, map_apply], split_ifs; simp [h₀, h₁], }
154154

155155
end one
156156

157157
section numeral
158158

159-
@[simp] lemma bit0_val [has_add α] (M : matrix m m α) (i : m) (j : m) :
159+
@[simp] lemma bit0_apply [has_add α] (M : matrix m m α) (i : m) (j : m) :
160160
(bit0 M) i j = bit0 (M i j) := rfl
161161

162162
variables [add_monoid α] [has_one α]
163163

164-
lemma bit1_val (M : matrix n n α) (i : n) (j : n) :
164+
lemma bit1_apply (M : matrix n n α) (i : n) (j : n) :
165165
(bit1 M) i j = if i = j then bit1 (M i j) else bit0 (M i j) :=
166166
by dsimp [bit1]; by_cases h : i = j; simp [h]
167167

168168
@[simp]
169-
lemma bit1_val_eq (M : matrix n n α) (i : n) :
169+
lemma bit1_apply_eq (M : matrix n n α) (i : n) :
170170
(bit1 M) i i = bit1 (M i i) :=
171-
by simp [bit1_val]
171+
by simp [bit1_apply]
172172

173173
@[simp]
174-
lemma bit1_val_ne (M : matrix n n α) {i j : n} (h : i ≠ j) :
174+
lemma bit1_apply_ne (M : matrix n n α) {i j : n} (h : i ≠ j) :
175175
(bit1 M) i j = bit0 (M i j) :=
176-
by simp [bit1_val, h]
176+
by simp [bit1_apply, h]
177177

178178
end numeral
179179

@@ -219,17 +219,17 @@ by simp [dot_product, mul_add, finset.sum_add_distrib]
219219

220220
@[simp] lemma diagonal_dot_product [decidable_eq m] [semiring α] (v w : m → α) (i : m) :
221221
dot_product (diagonal v i) w = v i * w i :=
222-
have ∀ j ≠ i, diagonal v i j * w j = 0 := λ j hij, by simp [diagonal_val_ne' hij],
222+
have ∀ j ≠ i, diagonal v i j * w j = 0 := λ j hij, by simp [diagonal_apply_ne' hij],
223223
by convert finset.sum_eq_single i (λ j _, this j) _; simp
224224

225225
@[simp] lemma dot_product_diagonal [decidable_eq m] [semiring α] (v w : m → α) (i : m) :
226226
dot_product v (diagonal w i) = v i * w i :=
227-
have ∀ j ≠ i, v j * diagonal w i j = 0 := λ j hij, by simp [diagonal_val_ne' hij],
227+
have ∀ j ≠ i, v j * diagonal w i j = 0 := λ j hij, by simp [diagonal_apply_ne' hij],
228228
by convert finset.sum_eq_single i (λ j _, this j) _; simp
229229

230230
@[simp] lemma dot_product_diagonal' [decidable_eq m] [semiring α] (v w : m → α) (i : m) :
231231
dot_product v (λ j, diagonal w j i) = v i * w i :=
232-
have ∀ j ≠ i, v j * diagonal w j i = 0 := λ j hij, by simp [diagonal_val_ne hij],
232+
have ∀ j ≠ i, v j * diagonal w j i = 0 := λ j hij, by simp [diagonal_apply_ne hij],
233233
by convert finset.sum_eq_single i (λ j _, this j) _; simp
234234

235235
@[simp] lemma neg_dot_product [ring α] (v w : m → α) : dot_product (-v) w = - dot_product v w :=
@@ -254,15 +254,15 @@ protected def mul [has_mul α] [add_comm_monoid α] (M : matrix l m α) (N : mat
254254

255255
localized "infixl ` ⬝ `:75 := matrix.mul" in matrix
256256

257-
theorem mul_val [has_mul α] [add_comm_monoid α] {M : matrix l m α} {N : matrix m n α} {i k} :
257+
theorem mul_apply [has_mul α] [add_comm_monoid α] {M : matrix l m α} {N : matrix m n α} {i k} :
258258
(M ⬝ N) i k = ∑ j, M i j * N j k := rfl
259259

260260
instance [has_mul α] [add_comm_monoid α] : has_mul (matrix n n α) := ⟨matrix.mul⟩
261261

262262
@[simp] theorem mul_eq_mul [has_mul α] [add_comm_monoid α] (M N : matrix n n α) :
263263
M * N = M ⬝ N := rfl
264264

265-
theorem mul_val' [has_mul α] [add_comm_monoid α] {M N : matrix n n α} {i k} :
265+
theorem mul_apply' [has_mul α] [add_comm_monoid α] {M N : matrix n n α} {i k} :
266266
(M ⬝ N) i k = dot_product (λ j, M i j) (λ j, N j k) := rfl
267267

268268
section semigroup
@@ -334,7 +334,7 @@ diagonal_mul_diagonal _ _
334334
lemma map_mul {L : matrix m n α} {M : matrix n o α}
335335
{β : Type w} [semiring β] {f : α →+* β} :
336336
(L ⬝ M).map f = L.map f ⬝ M.map f :=
337-
by { ext, simp [mul_val, ring_hom.map_sum], }
337+
by { ext, simp [mul_apply, ring_hom.map_sum], }
338338

339339
lemma is_add_monoid_hom_mul_left (M : matrix l m α) :
340340
is_add_monoid_hom (λ x : matrix m n α, M ⬝ x) :=
@@ -359,7 +359,7 @@ protected lemma mul_sum {β : Type*} (s : finset β) (f : β → matrix m n α)
359359
(id (@is_add_monoid_hom_mul_left _ _ n _ _ _ _ _ M) : _)).symm
360360

361361
@[simp]
362-
lemma row_mul_col_val (v w : m → α) (i j) : (row v ⬝ col w) i j = dot_product v w :=
362+
lemma row_mul_col_apply (v w : m → α) (i j) : (row v ⬝ col w) i j = dot_product v w :=
363363
rfl
364364

365365
end semiring
@@ -402,7 +402,7 @@ instance [semiring α] : has_scalar α (matrix m n α) := pi.has_scalar
402402
instance {β : Type w} [semiring α] [add_comm_monoid β] [semimodule α β] :
403403
semimodule α (matrix m n β) := pi.semimodule _ _ _
404404

405-
@[simp] lemma smul_val [semiring α] (a : α) (A : matrix m n α) (i : m) (j : n) : (a • A) i j = a * A i j := rfl
405+
@[simp] lemma smul_apply [semiring α] (a : α) (A : matrix m n α) (i : m) (j : n) : (a • A) i j = a * A i j := rfl
406406

407407
section semiring
408408
variables [semiring α]
@@ -417,7 +417,7 @@ by { ext, apply smul_dot_product }
417417
@[simp] lemma mul_mul_left (M : matrix m n α) (N : matrix n o α) (a : α) :
418418
(λ i j, a * M i j) ⬝ N = a • (M ⬝ N) :=
419419
begin
420-
simp only [←smul_val],
420+
simp only [←smul_apply],
421421
simp,
422422
end
423423

@@ -440,11 +440,11 @@ variable [decidable_eq n]
440440

441441
lemma scalar_apply_eq (a : α) (i : n) :
442442
scalar n a i i = a :=
443-
by simp only [coe_scalar, mul_one, one_val_eq, smul_val]
443+
by simp only [coe_scalar, mul_one, one_apply_eq, smul_apply]
444444

445445
lemma scalar_apply_ne (a : α) (i j : n) (h : i ≠ j) :
446446
scalar n a i j = 0 :=
447-
by simp only [h, coe_scalar, one_val_ne, ne.def, not_false_iff, smul_val, mul_zero]
447+
by simp only [h, coe_scalar, one_apply_ne, ne.def, not_false_iff, smul_apply, mul_zero]
448448

449449
end scalar
450450

@@ -463,7 +463,7 @@ by { ext, apply dot_product_smul }
463463
@[simp] lemma mul_mul_right (M : matrix m n α) (N : matrix n o α) (a : α) :
464464
M ⬝ (λ i j, a * N i j) = a • (M ⬝ N) :=
465465
begin
466-
simp only [←smul_val],
466+
simp only [←smul_apply],
467467
simp,
468468
end
469469

@@ -524,7 +524,7 @@ by { ext, symmetry, apply dot_product_assoc }
524524

525525
lemma vec_mul_vec_eq (w : m → α) (v : n → α) :
526526
vec_mul_vec w v = (col w) ⬝ (row v) :=
527-
by { ext i j, simp [vec_mul_vec, mul_val], refl }
527+
by { ext i j, simp [vec_mul_vec, mul_apply], refl }
528528

529529
variables [decidable_eq m] [decidable_eq n]
530530

@@ -626,9 +626,9 @@ open_locale matrix
626626
/--
627627
Tell `simp` what the entries are in a transposed matrix.
628628
629-
Compare with `mul_val`, `diagonal_val_eq`, etc.
629+
Compare with `mul_apply`, `diagonal_apply_eq`, etc.
630630
-/
631-
@[simp] lemma transpose_val (M : matrix m n α) (i j) : M.transpose j i = M i j := rfl
631+
@[simp] lemma transpose_apply (M : matrix m n α) (i j) : M.transpose j i = M i j := rfl
632632

633633
@[simp] lemma transpose_transpose (M : matrix m n α) :
634634
Mᵀᵀ = M :=
@@ -642,8 +642,8 @@ begin
642642
ext i j,
643643
unfold has_one.one transpose,
644644
by_cases i = j,
645-
{ simp only [h, diagonal_val_eq] },
646-
{ simp only [diagonal_val_ne h, diagonal_val_ne (λ p, h (symm p))] }
645+
{ simp only [h, diagonal_apply_eq] },
646+
{ simp only [diagonal_apply_ne h, diagonal_apply_ne (λ p, h (symm p))] }
647647
end
648648

649649
@[simp] lemma transpose_add [has_add α] (M : matrix m n α) (N : matrix m n α) :
@@ -726,8 +726,8 @@ open_locale matrix
726726
@[simp] lemma row_add [semiring α] (v w : m → α) : row (v + w) = row v + row w := by { ext, refl }
727727
@[simp] lemma row_smul [semiring α] (x : α) (v : m → α) : row (x • v) = x • row v := by { ext, refl }
728728

729-
@[simp] lemma col_val (v : m → α) (i j) : matrix.col v i j = v i := rfl
730-
@[simp] lemma row_val (v : m → α) (i j) : matrix.row v i j = v j := rfl
729+
@[simp] lemma col_apply (v : m → α) (i j) : matrix.col v i j = v i := rfl
730+
@[simp] lemma row_apply (v : m → α) (i j) : matrix.row v i j = v j := rfl
731731

732732
@[simp]
733733
lemma transpose_col (v : m → α) : (matrix.col v).transpose = matrix.row v := by {ext, refl}
@@ -769,15 +769,15 @@ function.update_same j (c i) (M i)
769769
@[simp] lemma update_column_ne [decidable_eq m] {j' : m} (j_ne : j' ≠ j) :
770770
update_column M j c i j' = M i j' := function.update_noteq j_ne (c i) (M i)
771771

772-
lemma update_row_val [decidable_eq n] {i' : n} :
772+
lemma update_row_apply [decidable_eq n] {i' : n} :
773773
update_row M i b i' j = if i' = i then b j else M i' j :=
774774
begin
775775
by_cases i' = i,
776776
{ rw [h, update_row_self, if_pos rfl] },
777777
{ rwa [update_row_ne h, if_neg h] }
778778
end
779779

780-
lemma update_column_val [decidable_eq m] {j' : m} : update_column M j c i j' = if j' = j then c i else M i j' :=
780+
lemma update_column_apply [decidable_eq m] {j' : m} : update_column M j c i j' = if j' = j then c i else M i j' :=
781781
begin
782782
by_cases j' = j,
783783
{ rw [h, update_column_self, if_pos rfl] },
@@ -787,14 +787,14 @@ end
787787
lemma update_row_transpose [decidable_eq m] : update_row Mᵀ j c = (update_column M j c)ᵀ :=
788788
begin
789789
ext i' j,
790-
rw [transpose_val, update_row_val, update_column_val],
790+
rw [transpose_apply, update_row_apply, update_column_apply],
791791
refl
792792
end
793793

794794
lemma update_column_transpose [decidable_eq n] : update_column Mᵀ i b = (update_row M i b)ᵀ :=
795795
begin
796796
ext i' j,
797-
rw [transpose_val, update_row_val, update_column_val],
797+
rw [transpose_apply, update_row_apply, update_column_apply],
798798
refl
799799
end
800800

@@ -909,7 +909,8 @@ lemma from_blocks_multiply {p q : Type u} [fintype p] [fintype q]
909909
(C ⬝ A' + D ⬝ C') (C ⬝ B' + D ⬝ D') :=
910910
begin
911911
ext i j, rcases i; rcases j;
912-
simp only [from_blocks, mul_val, fintype.sum_sum_type, sum.elim_inl, sum.elim_inr, pi.add_apply],
912+
simp only [from_blocks, mul_apply, fintype.sum_sum_type, sum.elim_inl, sum.elim_inr,
913+
pi.add_apply],
913914
end
914915

915916
variables [decidable_eq l] [decidable_eq m]
@@ -921,7 +922,7 @@ begin
921922
end
922923

923924
@[simp] lemma from_blocks_one : from_blocks (1 : matrix l l α) 0 0 (1 : matrix m m α) = 1 :=
924-
by { ext i j, rcases i; rcases j; simp [one_val] }
925+
by { ext i j, rcases i; rcases j; simp [one_apply] }
925926

926927
end block_matrices
927928

@@ -932,6 +933,6 @@ variables {β : Type*} [semiring α] [semiring β]
932933

933934
lemma map_matrix_mul (M : matrix m n α) (N : matrix n o α) (i : m) (j : o) (f : α →+* β) :
934935
f (matrix.mul M N i j) = matrix.mul (λ i j, f (M i j)) (λ i j, f (N i j)) i j :=
935-
by simp [matrix.mul_val, ring_hom.map_sum]
936+
by simp [matrix.mul_apply, ring_hom.map_sum]
936937

937938
end ring_hom

src/data/matrix/pequiv.lean

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ def to_matrix [decidable_eq n] [has_zero α] [has_one α] (f : m ≃. n) : matri
5050
lemma mul_matrix_apply [decidable_eq m] [semiring α] (f : l ≃. m) (M : matrix m n α) (i j) :
5151
(f.to_matrix ⬝ M) i j = option.cases_on (f i) 0 (λ fi, M fi j) :=
5252
begin
53-
dsimp [to_matrix, matrix.mul_val],
53+
dsimp [to_matrix, matrix.mul_apply],
5454
cases h : f i with fi,
5555
{ simp [h] },
5656
{ rw finset.sum_eq_single fi;
@@ -63,12 +63,12 @@ by ext; simp only [transpose, mem_iff_mem f, to_matrix]; congr
6363

6464
@[simp] lemma to_matrix_refl [decidable_eq n] [has_zero α] [has_one α] :
6565
((pequiv.refl n).to_matrix : matrix n n α) = 1 :=
66-
by ext; simp [to_matrix, one_val]; congr
66+
by ext; simp [to_matrix, one_apply]; congr
6767

6868
lemma matrix_mul_apply [semiring α] [decidable_eq n] (M : matrix l m α) (f : m ≃. n) (i j) :
6969
(M ⬝ f.to_matrix) i j = option.cases_on (f.symm j) 0 (λ fj, M i fj) :=
7070
begin
71-
dsimp [to_matrix, matrix.mul_val],
71+
dsimp [to_matrix, matrix.mul_apply],
7272
cases h : f.symm j with fj,
7373
{ simp [h, f.eq_some_iff.symm] },
7474
{ conv in (_ ∈ _) { rw ← f.mem_iff_mem },
@@ -119,7 +119,7 @@ lemma to_matrix_swap [decidable_eq n] [ring α] (i j : n) :
119119
(single j i).to_matrix :=
120120
begin
121121
ext,
122-
dsimp [to_matrix, single, equiv.swap_apply_def, equiv.to_pequiv, one_val],
122+
dsimp [to_matrix, single, equiv.swap_apply_def, equiv.to_pequiv, one_apply],
123123
split_ifs; simp * at *
124124
end
125125

src/linear_algebra/bilinear_form.lean

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -311,8 +311,8 @@ def matrix.to_bilin_formₗ : matrix n n R →ₗ[R] bilin_form R (n → R) :=
311311
bilin_smul_left := λ a x y, by simp,
312312
bilin_add_right := λ x y z, by simp [matrix.mul_add],
313313
bilin_smul_right := λ a x y, by simp },
314-
map_add' := λ f g, by { ext, simp [add_apply, matrix.mul_add, matrix.add_mul] },
315-
map_smul' := λ f g, by { ext, simp [smul_apply] } }
314+
map_add' := λ f g, by { ext, simp [bilin_form.add_apply, matrix.mul_add, matrix.add_mul] },
315+
map_smul' := λ f g, by { ext, simp [bilin_form.smul_apply] } }
316316

317317
/-- The map from `matrix n n R` to bilinear forms on `n → R`. -/
318318
def matrix.to_bilin_form : matrix n n R → bilin_form R (n → R) :=
@@ -345,7 +345,7 @@ lemma bilin_form.to_matrix_comp (B : bilin_form R (n → R)) (l r : (o → R)
345345
(B.comp l r).to_matrix = l.to_matrixᵀ ⬝ B.to_matrix ⬝ r.to_matrix :=
346346
begin
347347
ext i j,
348-
simp only [to_matrix_apply, comp_apply, mul_val, sum_mul],
348+
simp only [to_matrix_apply, comp_apply, mul_apply, sum_mul],
349349
have sum_smul_eq : Π (f : (o → R) →ₗ[R] (n → R)) (i : o),
350350
f (λ n, ite (n = i) 1 0) = ∑ k, f.to_matrix k i • λ n, ite (n = k) (1 : R) 0,
351351
{ intros f i,
@@ -387,7 +387,7 @@ end
387387

388388
@[simp] lemma to_bilin_form_to_matrix (M : matrix n n R) :
389389
M.to_bilin_form.to_matrix = M :=
390-
by { ext, simp [bilin_form.to_matrix_apply, matrix.to_bilin_form_apply, mul_val], }
390+
by { ext, simp [bilin_form.to_matrix_apply, matrix.to_bilin_form_apply, mul_apply], }
391391

392392
/-- Bilinear forms are linearly equivalent to matrices. -/
393393
def bilin_form_equiv_matrix : bilin_form R (n → R) ≃ₗ[R] matrix n n R :=

src/linear_algebra/char_poly/coeff.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ begin
140140
{ unfold finsupp.sum, rw sum_apply, rw sum_apply, dsimp, refl, },
141141
{ simp_rw ← (scalar n).map_pow, simp_rw ← (matrix.scalar.commute _ _).eq,
142142
simp only [coe_scalar, matrix.one_mul, ring_hom.id_apply,
143-
smul_val, mul_eq_mul, algebra.smul_mul_assoc],
143+
smul_apply, mul_eq_mul, algebra.smul_mul_assoc],
144144
have h : ∀ x : ℕ, (λ (e : ℕ) (a : R), r ^ e * a) x 0 = 0 := by simp,
145145
symmetry, rw ← finsupp.sum_map_range_index h, swap, refl,
146146
refine congr (congr rfl _) (by {ext, rw mul_comm}), ext, rw finsupp.map_range_apply,

0 commit comments

Comments
 (0)