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

Commit 3d237db

Browse files
committed
feat(linear_algebra/matrix/determinant): det_conj_transpose (#9879)
Also: * Makes the arguments of `ring_hom.map_det` and `alg_hom.map_det` explicit, and removes them from the `matrix` namespace to enable dot notation. * Adds `ring_equiv.map_det` and `alg_equiv.map_det`
1 parent 20bb02f commit 3d237db

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

src/linear_algebra/matrix/determinant.lean

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -263,17 +263,29 @@ section hom_map
263263

264264
variables {S : Type w} [comm_ring S]
265265

266-
lemma ring_hom.map_det {M : matrix n n R} {f : R →+* S} :
266+
lemma _root_.ring_hom.map_det (f : R →+* S) (M : matrix n n R) :
267267
f M.det = matrix.det (f.map_matrix M) :=
268268
by simp [matrix.det_apply', f.map_sum, f.map_prod]
269269

270-
lemma alg_hom.map_det [algebra R S] {T : Type z} [comm_ring T] [algebra R T]
271-
{M : matrix n n S} {f : S →ₐ[R] T} :
270+
lemma _root_.ring_equiv.map_det (f : R ≃+* S) (M : matrix n n R) :
271+
f M.det = matrix.det (f.map_matrix M) :=
272+
f.to_ring_hom.map_det _
273+
274+
lemma _root_.alg_hom.map_det [algebra R S] {T : Type z} [comm_ring T] [algebra R T]
275+
(f : S →ₐ[R] T) (M : matrix n n S) :
272276
f M.det = matrix.det ((f : S →+* T).map_matrix M) :=
273-
by rw [← alg_hom.coe_to_ring_hom, ring_hom.map_det]
277+
f.to_ring_hom.map_det _
278+
279+
lemma _root_.alg_equiv.map_det [algebra R S] {T : Type z} [comm_ring T] [algebra R T]
280+
(f : S ≃ₐ[R] T) (M : matrix n n S) :
281+
f M.det = matrix.det ((f : S →+* T).map_matrix M) :=
282+
f.to_alg_hom.map_det _
274283

275284
end hom_map
276285

286+
@[simp] lemma det_conj_transpose [star_ring R] (M : matrix m m R) : det (Mᴴ) = star (det M) :=
287+
((star_ring_aut : ring_aut R).map_det _).symm.trans $ congr_arg star M.det_transpose
288+
277289
section det_zero
278290
/-!
279291
### `det_zero` section

src/ring_theory/trace.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@ begin
359359
vandermonde (λ i, e.symm i pb.gen),
360360
calc algebra_map K (algebraic_closure _) (bilin_form.to_matrix pb.basis (trace_form K L)).det
361361
= det ((algebra_map K _).map_matrix $
362-
bilin_form.to_matrix pb.basis (trace_form K L)) : ring_hom.map_det
362+
bilin_form.to_matrix pb.basis (trace_form K L)) : ring_hom.map_det _ _
363363
... = det (Mᵀ ⬝ M) : _
364364
... = det M * det M : by rw [det_mul, det_transpose]
365365
... ≠ 0 : mt mul_self_eq_zero.mp _,

0 commit comments

Comments
 (0)