Skip to content

Commit 918d467

Browse files
committed
feat: a submodule disjoint from a coFG module is FG (#41008)
... over a noetherian ring. Also, over an arbitrary ring, a submodule codisjoint from a fg module is cofg. This is a prerequisite for Fredholm operators.
1 parent 0eabedc commit 918d467

2 files changed

Lines changed: 19 additions & 3 deletions

File tree

Mathlib/RingTheory/Finiteness/Cofinite.lean

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,20 @@ theorem _root_.Module.Finite.iff_cofg_bot : (⊥ : Submodule R M).CoFG ↔ Modul
4949
theorem CoFG.fg_of_isCompl {S T : Submodule R M} (hST : IsCompl S T) (hS : S.CoFG) : T.FG :=
5050
Module.Finite.iff_fg.mp <| Module.Finite.equiv <| quotientEquivOfIsCompl S T hST
5151

52+
/-- Over a noetherian ring, if `S` and `T` are disjoint and `T` is CoFG, then `S` is FG. -/
53+
theorem CoFG.fg_of_disjoint [IsNoetherianRing R] {S T : Submodule R M} (hST : Disjoint S T)
54+
(hT : T.CoFG) : S.FG :=
55+
.of_disjoint_of_isNoetherian_quotient hST
56+
57+
/-- If `S` and `T` are co-disjoint and `S` is FG, then `T` is CoFG. -/
58+
theorem FG.cofg_of_codisjoint {S T : Submodule R M} (hST : Codisjoint S T) (hS : S.FG) :
59+
T.CoFG :=
60+
have := Module.Finite.iff_fg.mpr hS
61+
.of_surjective (T.mkQ.domRestrict S) (by simp [← LinearMap.range_eq_top, hST.symm.eq_top])
62+
5263
/-- A complement of an FG submodule is CoFG. -/
53-
theorem FG.cofg_of_isCompl {S T : Submodule R M} (hST : IsCompl S T) (hS : S.FG) : T.CoFG := by
54-
haveI := Module.Finite.iff_fg.mpr hS
55-
exact Module.Finite.equiv (quotientEquivOfIsCompl T S hST.symm).symm
64+
theorem FG.cofg_of_isCompl {S T : Submodule R M} (hST : IsCompl S T) (hS : S.FG) : T.CoFG :=
65+
hS.cofg_of_codisjoint hST.codisjoint
5666

5767
/-- A submodule that contains a CoFG submodule is CoFG. -/
5868
theorem CoFG.of_le {S T : Submodule R M} (hT : S ≤ T) (hS : S.CoFG) : T.CoFG := by

Mathlib/RingTheory/Noetherian/Basic.lean

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,12 @@ lemma FG.of_le [IsNoetherianRing R] {S T : Submodule R M} (hT : T.FG) (hST : S
382382
rw [← Module.Finite.iff_fg] at hT
383383
exact FG.of_le_of_isNoetherian hST
384384

385+
/-- If `S` is disjoint from `T` and `M ⧸ T` is a noetherian module, then `S` is FG.
386+
See also `Submodule.CoFG.fg_of_disjoint`. -/
387+
theorem FG.of_disjoint_of_isNoetherian_quotient {S T : Submodule R M} [IsNoetherian R (M ⧸ T)]
388+
(hST : Disjoint S T) : S.FG :=
389+
Module.Finite.iff_fg.mp <| .of_injective (T.mkQ.domRestrict S) (by simp [hST.eq_bot])
390+
385391
end Submodule
386392

387393
universe w v u

0 commit comments

Comments
 (0)