@@ -25,7 +25,6 @@ Many of the relevant definitions, including `module`, `submodule`, and `linear_m
2525* Many constructors for (semi)linear maps
2626* The kernel `ker` and range `range` of a linear map are submodules of the domain and codomain
2727 respectively.
28- * The general linear group is defined to be the group of invertible linear maps from `M` to itself.
2928
3029 See `linear_algebra.span` for the span of a set (as a submodule),
3130and `linear_algebra.quotient` for quotients by submodules.
@@ -2161,55 +2160,3 @@ rfl
21612160end linear_equiv
21622161
21632162end fun_left
2164-
2165- namespace linear_map
2166-
2167- variables [semiring R] [add_comm_monoid M] [module R M]
2168- variables (R M)
2169-
2170- /-- The group of invertible linear maps from `M` to itself -/
2171- @[reducible] def general_linear_group := (M →ₗ[R] M)ˣ
2172-
2173- namespace general_linear_group
2174- variables {R M}
2175-
2176- instance : has_coe_to_fun (general_linear_group R M) (λ _, M → M) := by apply_instance
2177-
2178- /-- An invertible linear map `f` determines an equivalence from `M` to itself. -/
2179- def to_linear_equiv (f : general_linear_group R M) : (M ≃ₗ[R] M) :=
2180- { inv_fun := f.inv.to_fun,
2181- left_inv := λ m, show (f.inv * f.val) m = m,
2182- by erw f.inv_val; simp,
2183- right_inv := λ m, show (f.val * f.inv) m = m,
2184- by erw f.val_inv; simp,
2185- ..f.val }
2186-
2187- /-- An equivalence from `M` to itself determines an invertible linear map. -/
2188- def of_linear_equiv (f : (M ≃ₗ[R] M)) : general_linear_group R M :=
2189- { val := f,
2190- inv := (f.symm : M →ₗ[R] M),
2191- val_inv := linear_map.ext $ λ _, f.apply_symm_apply _,
2192- inv_val := linear_map.ext $ λ _, f.symm_apply_apply _ }
2193-
2194- variables (R M)
2195-
2196- /-- The general linear group on `R` and `M` is multiplicatively equivalent to the type of linear
2197- equivalences between `M` and itself. -/
2198- def general_linear_equiv : general_linear_group R M ≃* (M ≃ₗ[R] M) :=
2199- { to_fun := to_linear_equiv,
2200- inv_fun := of_linear_equiv,
2201- left_inv := λ f, by { ext, refl },
2202- right_inv := λ f, by { ext, refl },
2203- map_mul' := λ x y, by {ext, refl} }
2204-
2205- @[simp] lemma general_linear_equiv_to_linear_map (f : general_linear_group R M) :
2206- (general_linear_equiv R M f : M →ₗ[R] M) = f :=
2207- by {ext, refl}
2208-
2209- @[simp] lemma coe_fn_general_linear_equiv (f : general_linear_group R M) :
2210- ⇑(general_linear_equiv R M f) = (f : M → M) :=
2211- rfl
2212-
2213- end general_linear_group
2214-
2215- end linear_map
0 commit comments