Zulip Chat Archive
Stream: new members
Topic: transvection matrix is instance of GL(n, R)
Alex Brodbelt (Oct 25 2024 at 16:19):
Hi!
I want to register the transvection as an element of the general linear group for later use.
Am I meant to to do this by creating an instance
or by a theorem
(like the one I tried to state below which does not compile)?
I want to use GeneralLinearGroup.mk'
alongside with det_transvection_of_ne
but I don't know how to set up the statement.
Thanks in advance (:
import Mathlib.LinearAlgebra.Matrix.GeneralLinearGroup.Basic
import Mathlib.LinearAlgebra.Matrix.Transvection
open Matrix
variable (n : Type u) [DecidableEq n] [Fintype n] (R : Type v) [CommRing R]
theorem tranvsvection_in_general_linear_group {i j : n} (i_neq_j : i ≠ j) : (((transvection i j (1 : R)) : Matrix n n R) : GL n R) = transvection i j (1 : R) := by sorry
Etienne Marion (Oct 25 2024 at 16:37):
There are different ways, I guess the easiest is this one:
import Mathlib.LinearAlgebra.Matrix.GeneralLinearGroup.Basic
import Mathlib.LinearAlgebra.Matrix.Transvection
open Matrix
variable (n : Type u) [DecidableEq n] [Fintype n] (R : Type v) [CommRing R]
def transvection' {i j : n} (i_neq_j : i ≠ j) : GL n R :=
GeneralLinearGroup.mk' (transvection i j (1 : R))
((det_transvection_of_ne i j i_neq_j (1 : R)).symm ▸ invertibleOne)
Etienne Marion (Oct 25 2024 at 16:39):
This is maybe clearer for last line:
(by rw [det_transvection_of_ne _ _ i_neq_j]; exact invertibleOne)
Alex Brodbelt (Oct 25 2024 at 16:41):
How do you choose between defining a coercion or when making a definition like the one above?
Eric Wieser (Oct 25 2024 at 16:44):
Usually you always make the definition, and if it's super convenient you register that definition as a coercion
Alex Brodbelt (Oct 25 2024 at 16:45):
Eric Wieser said:
Usually you always make the definition, and if it's super convenient you register that definition as a coercion
aha I see - thank you both of you
Eric Wieser (Oct 25 2024 at 16:45):
Would docs#Matrix.SpecialLinearGroup be more appropriate here?
Alex Brodbelt (Oct 25 2024 at 16:46):
Eric Wieser said:
Would docs#Matrix.SpecialLinearGroup be more appropriate here?
I want to prove properties about the general linear group - hm but I suppose I should register this for the special linear group and then use the coercion...
Last updated: May 02 2025 at 03:31 UTC