Section more.
Variable F : field.
Variable V : vectorspace F.
unfold lin_dep in |- *.
intros.
inversion_clear H0.
exists x.
inversion_clear H1.
exists x0.
inversion_clear H0.
exists (Map_include_map _ H x1).
split.
red in |- *.
inversion_clear H1.
inversion_clear H2.
red in H0.
unfold not in |- *.
intros.
unfold not in H0.
apply (H0 i j); auto with algebra.
split.
inversion_clear H1.
inversion_clear H2.
assumption.
inversion_clear H1.
inversion_clear H2.
apply Trans with (sum (mult_by_scalars x0 (Map_embed x1))); auto with algebra.
Qed.
intros S1 S2 H.
unfold lin_indep in |- *.
unfold not in |- *.
intros.
apply H0.
apply (lin_dep_include H).
assumption.
Qed.
intro n; case n.
intros.
simpl in |- *.
red in |- *.
intro.
inversion x.
inversion in_range_prf.
intros.
elim (lin_dep_defs_eqv (seq_set v)).
intros.
generalize (H2 H0); clear H3 H2 H0.
intro.
unfold lin_indep' in H0.
generalize (H0 _ a (seq_set_seq v)).
intro; clear H0.
cut (distinct (seq_set_seq v)); auto.
intro.
generalize (H2 H0).
clear H2 H0.
intro.
apply NNPP.
unfold not in |- *; intros.
unfold not in H0.
apply H0.
auto.
apply Trans with (sum (mult_by_scalars a v)); auto with algebra.
Qed.
intros; red in |- *; red in H; intro.
red in H; (apply H; auto with algebra).
apply zero_imp_lin_dep; auto with algebra.
Qed.

Lemma inject_subsets_lin_dep :
forall (W : subspace V) (X : part_set W),
lin_dep X <-> lin_dep (inject_subsets X).