@@ -330,6 +330,17 @@ iff.trans (by { rw ← findim_eq_dim, norm_cast }) (@dim_pos_iff_nontrivial K V
330
330
lemma findim_pos [finite_dimensional K V] [h : nontrivial V] : 0 < findim K V :=
331
331
findim_pos_iff.mpr h
332
332
333
+ /-- A finite dimensional space has zero `findim` iff it is a subsingleton.
334
+ This is the `findim` version of `dim_zero_iff`. -/
335
+ lemma findim_zero_iff [finite_dimensional K V] :
336
+ findim K V = 0 ↔ subsingleton V :=
337
+ iff.trans (by { rw ← findim_eq_dim, norm_cast }) (@dim_zero_iff K V _ _ _)
338
+
339
+ /-- A finite dimensional space that is a subsingleton has zero `findim`. -/
340
+ lemma findim_zero_of_subsingleton [finite_dimensional K V] [h : subsingleton V] :
341
+ findim K V = 0 :=
342
+ findim_zero_iff.2 h
343
+
333
344
section
334
345
open_locale big_operators
335
346
open finset
@@ -850,6 +861,22 @@ by { unfold findim, simp [dim_top] }
850
861
851
862
end top
852
863
864
+ lemma findim_zero_iff_forall_zero [finite_dimensional K V] :
865
+ findim K V = 0 ↔ ∀ x : V, x = 0 :=
866
+ findim_zero_iff.trans (subsingleton_iff_forall_eq 0 )
867
+
868
+ lemma is_basis_of_findim_zero [finite_dimensional K V]
869
+ {ι : Type *} (h : ¬ nonempty ι) (hV : findim K V = 0 ) :
870
+ is_basis K (λ x : ι, (0 : V)) :=
871
+ begin
872
+ haveI : subsingleton V := findim_zero_iff.1 hV,
873
+ exact is_basis_empty _ h
874
+ end
875
+
876
+ lemma is_basis_of_findim_zero' [finite_dimensional K V]
877
+ (hV : findim K V = 0 ) : is_basis K (λ x : fin 0 , (0 : V)) :=
878
+ is_basis_of_findim_zero (finset.univ_eq_empty.mp rfl) hV
879
+
853
880
namespace linear_map
854
881
855
882
theorem injective_iff_surjective_of_findim_eq_findim [finite_dimensional K V]
0 commit comments