Documentation

TauCeti.LinearAlgebra.Dimension.Submodule

Dimensions of submodules #

Dimension-counting criteria for nontrivial submodule intersection: two subspaces of a finite-dimensional space whose dimensions sum to more than the ambient dimension meet nontrivially, as do three subspaces whose dimensions sum to more than twice the ambient dimension, and a subspace of rank greater than the rank of a linear map f meets ker f nontrivially. Dually, the preimage of a subspace W under a linear map out of an m-dimensional space has codimension at most the codimension of W. A set spans a subspace of dimension at least n exactly when it contains n linearly independent vectors. Two disjoint subspaces of a finite-dimensional subspace U have dimensions adding to at most that of U. A subspace of dimension at least three contains x outside π•œ βˆ™ a and z outside span π•œ {a, x}. A finite-dimensional subspace spanning the whole space together with V, of dimension at most the codimension of V, is a complement of V; here V itself may be infinite-dimensional.

The rank of a product V.prod W of free submodules is the sum of their ranks over any semiring satisfying the strong rank condition. Consequently, the rank of a product map f.prodMap g with free ranges is the sum of the ranks of f and g. The dimension of the range of a linear map is unchanged by composing on the left with an injective map and on the right with a surjective one, and composing on the left with a map that does not lower the dimension of the range does not enlarge the kernel. Conjugating an endomorphism by a linear equivalence preserves the dimension of its kernel. The kernel of a surjection from a finite-dimensional space has dimension the difference of the dimensions.

theorem Submodule.finrank_inf_add_finrank_inf_le {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] (U V H : Submodule π•œ E) [FiniteDimensional π•œ β†₯H] :
Module.finrank π•œ β†₯(U βŠ“ H) + Module.finrank π•œ β†₯(V βŠ“ H) ≀ Module.finrank π•œ β†₯(U βŠ“ V βŠ“ H) + Module.finrank π•œ β†₯((U βŠ” V) βŠ“ H)

Intersecting with a fixed subspace gives a supermodular dimension function.

theorem Submodule.inf_ne_bot_of_finrank_lt {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] [FiniteDimensional π•œ E] {V W : Submodule π•œ E} (h : Module.finrank π•œ E < Module.finrank π•œ β†₯V + Module.finrank π•œ β†₯W) :
V βŠ“ W β‰  βŠ₯

Two subspaces whose dimensions sum to more than the dimension of the ambient space have nontrivial intersection.

theorem Submodule.finrank_add_finrank_le_of_disjoint_of_le {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] {S T U : Submodule π•œ E} [FiniteDimensional π•œ β†₯U] (h : Disjoint S T) (hS : S ≀ U) (hT : T ≀ U) :
Module.finrank π•œ β†₯S + Module.finrank π•œ β†₯T ≀ Module.finrank π•œ β†₯U

Two disjoint subspaces of a finite-dimensional subspace U have dimensions adding to at most that of U. This is the relative form of Submodule.finrank_add_finrank_le_of_disjoint, which bounds them by the dimension of the ambient space.

theorem Submodule.inf_inf_ne_bot_of_finrank_lt {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] [FiniteDimensional π•œ E] {U V W : Submodule π•œ E} (h : 2 * Module.finrank π•œ E < Module.finrank π•œ β†₯U + Module.finrank π•œ β†₯V + Module.finrank π•œ β†₯W) :
U βŠ“ V βŠ“ W β‰  βŠ₯

Three subspaces whose dimensions sum to more than twice the dimension of the ambient space have nontrivial common intersection.

theorem Submodule.finrank_add_finrank_le_finrank_comap_add_finrank {π•œ : Type u_1} [DivisionRing π•œ] {M : Type u_3} {N : Type u_4} [AddCommGroup M] [Module π•œ M] [AddCommGroup N] [Module π•œ N] [FiniteDimensional π•œ M] [FiniteDimensional π•œ N] (f : M β†’β‚—[π•œ] N) (W : Submodule π•œ N) :
Module.finrank π•œ M + Module.finrank π•œ β†₯W ≀ Module.finrank π•œ β†₯(comap f W) + Module.finrank π•œ N

The preimage of a subspace W under a linear map f : M β†’ N of finite-dimensional spaces has codimension at most the codimension of W: dim M + dim W ≀ dim (f⁻¹ W) + dim N.

theorem Submodule.le_finrank_span_iff_exists_linearIndependent {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] {s : Set E} [Module.Finite π•œ β†₯(span π•œ s)] {n : β„•} :
n ≀ Module.finrank π•œ β†₯(span π•œ s) ↔ βˆƒ (v : Fin n β†’ E), LinearIndependent π•œ v ∧ βˆ€ (i : Fin n), v i ∈ s

A set spans a subspace of dimension at least n exactly when it contains n linearly independent vectors.

theorem Submodule.isCompl_of_codisjoint_of_finrank_le {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] {V S : Submodule π•œ E} [FiniteDimensional π•œ β†₯S] (h : Codisjoint V S) (hrank : Module.finrank π•œ β†₯S ≀ Module.finrank π•œ (E β§Έ V)) :

A finite-dimensional subspace S which spans the whole space together with V, and whose dimension is at most the codimension of V, is a complement of V. Indeed S maps onto E β§Έ V, so the two dimensions agree and the map is injective.

theorem Submodule.exists_mem_notMem_span_of_ncard_lt {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] {V : Submodule π•œ E} {s : Set E} (hs : s.Finite) (h : s.ncard < Module.finrank π•œ β†₯V) :
βˆƒ z ∈ V, z βˆ‰ span π•œ s

A subspace with more dimensions than a finite set has elements contains a vector outside the span of the set.

theorem Submodule.exists_mem_notMem_span_pair {π•œ : Type u_1} [DivisionRing π•œ] {E : Type u_2} [AddCommGroup E] [Module π•œ E] {V : Submodule π•œ E} (a : E) (h : 3 ≀ Module.finrank π•œ β†₯V) :
βˆƒ x ∈ V, x βˆ‰ π•œ βˆ™ a ∧ βˆƒ z ∈ V, z βˆ‰ span π•œ {a, x}

A subspace of dimension at least three contains a vector x outside π•œ βˆ™ a and a vector z outside span {a, x}.

theorem Submodule.lift_rank_le_of_disjoint_ker {π•œ : Type u_1} [Ring π•œ] {M : Type u} {N : Type v} [AddCommGroup M] [Module π•œ M] [AddCommGroup N] [Module π•œ N] {V : Submodule π•œ M} {f : M β†’β‚—[π•œ] N} (h : Disjoint V f.ker) :

A submodule meeting the kernel of f trivially has rank at most the rank of f, since f maps it injectively into its range.

theorem Submodule.rank_prod {π•œ : Type u_1} [Semiring π•œ] [StrongRankCondition π•œ] {M : Type u} {N : Type v} [AddCommMonoid M] [Module π•œ M] [AddCommMonoid N] [Module π•œ N] (V : Submodule π•œ M) (W : Submodule π•œ N) [Module.Free π•œ β†₯V] [Module.Free π•œ β†₯W] :
Module.rank π•œ β†₯(V.prod W) = Cardinal.lift.{v, u} (Module.rank π•œ β†₯V) + Cardinal.lift.{u, v} (Module.rank π•œ β†₯W)

The rank of a product of free submodules is the sum of their ranks.

theorem LinearMap.rank_prodMap {π•œ : Type u_1} {M : Type u_2} {N : Type u_3} {M' : Type u} {N' : Type v} [Semiring π•œ] [StrongRankCondition π•œ] [AddCommMonoid M] [Module π•œ M] [AddCommMonoid N] [Module π•œ N] [AddCommMonoid M'] [Module π•œ M'] [AddCommMonoid N'] [Module π•œ N'] (f : M β†’β‚—[π•œ] M') (g : N β†’β‚—[π•œ] N') [Module.Free π•œ β†₯f.range] [Module.Free π•œ β†₯g.range] :

The rank of a product map with free ranges is the sum of the ranks of its components.

theorem LinearMap.finrank_range_comp_comp {π•œ : Type u_1} {M : Type u_2} {N : Type u_3} {N' : Type v} [Semiring π•œ] [AddCommMonoid M] [Module π•œ M] [AddCommMonoid N] [Module π•œ N] [AddCommMonoid N'] [Module π•œ N'] {V : Type u_4} [AddCommMonoid V] [Module π•œ V] (A : N β†’β‚—[π•œ] N') (L : M β†’β‚—[π•œ] N) (B : V β†’β‚—[π•œ] M) (hA : Function.Injective ⇑A) (hB : Function.Surjective ⇑B) :
Module.finrank π•œ β†₯(A βˆ˜β‚— L βˆ˜β‚— B).range = Module.finrank π•œ β†₯L.range

The dimension of the range of a linear map is unchanged by composing on the left with an injective map and on the right with a surjective one.

theorem LinearMap.ker_comp_eq_of_finrank_range_le {K : Type u_4} {V : Type u_5} {Vβ‚‚ : Type u_6} {V₃ : Type u_7} [DivisionRing K] [AddCommGroup V] [Module K V] [AddCommGroup Vβ‚‚] [Module K Vβ‚‚] [AddCommGroup V₃] [Module K V₃] (A : V β†’β‚—[K] Vβ‚‚) (P : Vβ‚‚ β†’β‚—[K] V₃) [FiniteDimensional K β†₯A.range] (h : Module.finrank K β†₯A.range ≀ Module.finrank K β†₯(P βˆ˜β‚— A).range) :

If composing a map A of finite rank on the left with P does not lower the dimension of its range, then it does not enlarge its kernel: ker (P ∘ A) = ker A. Indeed P is then injective on the range of A.

Rank–nullity for a surjection: the kernel of a surjective linear map from a finite module has dimension the difference of the dimensions.

@[simp]
theorem LinearEquiv.finrank_ker_conj {R : Type u_1} {M : Type u_2} {N : Type u_3} [CommSemiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid N] [Module R N] (e : M ≃ₗ[R] N) (f : Module.End R M) :

Conjugate endomorphisms have kernels of the same dimension.