Zulip Chat Archive
Stream: Is there code for X?
Topic: finite_dimensional_of_injective
Scott Morrison (Apr 29 2022 at 09:36):
Surely we have
import linear_algebra.finite_dimensional
variables {k V W : Type*} [field k] [add_comm_group V] [add_comm_group W] [module k V] [module k W]
def finite_dimensional_of_injective (f : V →ₗ[k] W) (w : f.ker = ⊥)
[finite_dimensional k W] : finite_dimensional k V :=
sorry
Scott Morrison (Apr 29 2022 at 09:36):
(Or with w : function.injective f
.)
Scott Morrison (Apr 29 2022 at 09:39):
I guess
def finite_dimensional_of_injective (f : V →ₗ[k] W) (w : function.injective f)
[finite_dimensional k W] : finite_dimensional k V :=
begin
haveI : is_noetherian k W := is_noetherian.iff_fg.mpr ‹_›,
exact module.finite.of_injective f w,
end
works, and it's just a matter of API not being built for finite_dimensional
.
Eric Wieser (Apr 29 2022 at 09:41):
That matches what we do in src#continuous_linear_map.finite_dimensional
Scott Morrison (Apr 29 2022 at 09:47):
Okay. I'll just roll this into the PR that needs it.
Riccardo Brasca (Apr 29 2022 at 10:21):
docs#module.finite.of_injective should do the job
Riccardo Brasca (Apr 29 2022 at 10:22):
finite_dimensional
is defined as finite
(I promise sooner or later I will finish the refactor)
Riccardo Brasca (Apr 29 2022 at 10:22):
ah sorry, you already found this
Last updated: Dec 20 2023 at 11:08 UTC