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

Commit 509dd9e

Browse files
committed
feat(linear_algebra/basic): span_singleton smul lemmas (#4394)
Add two submodule lemmas relating `span R ({r • x})` and `span R {x}`.
1 parent c3d0835 commit 509dd9e

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/linear_algebra/basic.lean

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -857,6 +857,20 @@ by rintro ⟨a, y, rfl⟩; exact
857857
lemma span_singleton_eq_range (y : M) : (span R ({y} : set M) : set M) = range ((• y) : R → M) :=
858858
set.ext $ λ x, mem_span_singleton
859859

860+
lemma span_singleton_smul_le (r : R) (x : M) : span R ({r • x} : set M) ≤ span R {x} :=
861+
begin
862+
rw [span_le, set.singleton_subset_iff, mem_coe],
863+
exact smul_mem _ _ (mem_span_singleton_self _)
864+
end
865+
866+
lemma span_singleton_smul_eq {K E : Type*} [division_ring K] [add_comm_group E] [module K E]
867+
{r : K} (x : E) (hr : r ≠ 0) : span K ({r • x} : set E) = span K {x} :=
868+
begin
869+
refine le_antisymm (span_singleton_smul_le r x) _,
870+
convert span_singleton_smul_le r⁻¹ (r • x),
871+
exact (inv_smul_smul' hr _).symm
872+
end
873+
860874
lemma disjoint_span_singleton {K E : Type*} [division_ring K] [add_comm_group E] [module K E]
861875
{s : submodule K E} {x : E} :
862876
disjoint s (span K {x}) ↔ (x ∈ s → x = 0) :=

0 commit comments

Comments
 (0)