Zulip Chat Archive
Stream: new members
Topic: Submodule generated by two free submodules of a free module
Richard Copley (Nov 25 2023 at 17:17):
Do we have the theorem in Mathlib that the submodule generated by two (or finitely many) free submodules of a free module is free? I can't even state it. I think there is a universe problem.
import Mathlib.LinearAlgebra.FreeModule.Basic
open Module
variable {R : Type*} [CommRing R]
variable (M : Type*) [AddCommGroup M] [Module R M] [Free R M]
theorem Module.Free.sup (K₁ K₂ : Submodule R M) (h₁ : Free R K₁) (h₂ : Free R K₂):
Free R (K₁ ⊔ K₂) := by
-- ~~~~~~~
-- failed to synthesize instance Sup (Type u_2)
sorry
Kevin Buzzard (Nov 25 2023 at 17:28):
theorem Module.Free.sup (K₁ K₂ : Submodule R M) (h₁ : Free R K₁) (h₂ : Free R K₂):
Free R (K₁ ⊔ K₂ : Submodule R M) := by
Lean needed more directions for the coercion.
Richard Copley (Nov 25 2023 at 17:33):
Great! This is about 14 levels deep in a complex of rabbit holes. I'll get started doing Steinitz exchange stuff. Maybe it will be fun.
Reid Barton (Nov 25 2023 at 17:36):
Isn't it not true though? e.g. , , and the submodules ,
Kyle Miller (Nov 25 2023 at 17:52):
Maybe you want to add in that is a PID?
Richard Copley (Nov 25 2023 at 17:58):
Reid Barton said:
Isn't it not true though? e.g. , , and the submodules ,
Forgive me, can you spell it out for me? I don't know what xM ⊔ yM
is if it isn't the span of {x, y}
. And {x, y}
is linearly independent. What's missing?
Reid Barton (Nov 25 2023 at 18:01):
isn't linearly independent because .
Richard Copley (Nov 25 2023 at 18:01):
Thanks!
Richard Copley (Nov 25 2023 at 18:02):
Uh. But now what's the basis for k[x,y]
?
Reid Barton (Nov 25 2023 at 18:02):
is free as an -module, the basis is {1}
.
Richard Copley (Nov 25 2023 at 18:11):
Super. Thanks for rescuing me.
Kyle Miller said:
Maybe you want to add in that is a PID?
That would do it, but I don't have it. There'll be something in the context that means I don't need this to be true.
Richard Copley (Nov 27 2023 at 00:34):
This weaker statement sufficed: if and are finitely generated -submodules of a free -module , there exists a free, finitely generated -submodule of which includes and .
Proof
Last updated: Dec 20 2023 at 11:08 UTC