Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 22352ff

Browse files
johoelzlrobertylewis
authored andcommitted
feat(linear_algebra/dimension): add dim_span_le; add rank_finset_sum_le
1 parent f882b8b commit 22352ff

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/linear_algebra/dimension.lean

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,19 @@ begin
9191
end
9292
set_option class.instance_max_depth 32
9393

94+
lemma dim_span_le (s : set β) : dim α (span α s) ≤ cardinal.mk s :=
95+
let ⟨b, hb, _, hsb, hlib⟩ :=
96+
exists_linear_independent (@linear_independent_empty α _ _ _ _) (set.empty_subset s) in
97+
have hsab : span α s = span α b, from span_eq_of_le _ hsb (span_le.2 (λ x hx, subset_span (hb hx))),
98+
calc dim α (span α s) = dim α (span α b) : by rw hsab
99+
... = cardinal.mk b : dim_span hlib
100+
... ≤ cardinal.mk s : cardinal.mk_le_mk_of_subset hb
101+
102+
lemma dim_span_of_finset (s : finset β) : dim α (span α (↑s : set β)) < cardinal.omega :=
103+
calc dim α (span α (↑s : set β)) ≤ cardinal.mk (↑s : set β) : dim_span_le ↑s
104+
... = s.card : by rw ←cardinal.finset_card
105+
... < cardinal.omega : cardinal.nat_lt_omega _
106+
94107
theorem dim_prod : dim α (β × γ) = dim α β + dim α γ :=
95108
begin
96109
rcases exists_is_basis α β with ⟨b, hb⟩,
@@ -271,6 +284,18 @@ calc rank (f + g) ≤ dim α (f.range ⊔ g.range : submodule α γ) :
271284
end
272285
... ≤ rank f + rank g : dim_add_le_dim_add_dim _ _
273286

287+
@[simp] lemma rank_zero : rank (0 : β →ₗ[α] γ) = 0 :=
288+
by rw [rank, linear_map.range_zero, dim_bot]
289+
290+
lemma rank_finset_sum_le {ι} (s : finset ι) (f : ι → β →ₗ[α] γ) :
291+
rank (s.sum f) ≤ s.sum (λ d, rank (f d)) :=
292+
begin
293+
refine @finset.sum_hom_rel _ _ _ _ _ (λa b, rank a ≤ b) _ _ s (le_of_eq _) _,
294+
{ exact rank_zero },
295+
{ assume i g c h, exact le_trans (rank_add_le _ _) (add_le_add_left' h) }
296+
end
297+
298+
274299
variables [add_comm_group δ] [vector_space α δ]
275300

276301
lemma rank_comp_le1 (g : β →ₗ[α] γ) (f : γ →ₗ[α] δ) : rank (f.comp g) ≤ rank f :=

0 commit comments

Comments
 (0)