intros.
red in |- *; red in H0.
inversion_clear H0; split.
apply generates_comp with X (full V); auto with algebra.
apply lin_indep_comp with X; auto with algebra.
Qed.
(** %\tocdef{basis}% *)
Record basis : Type :=
{basis_carrier :> Predicate V; is_basis_prf : is_basis basis_carrier}.
End Defs.

(* Specifications: *)
Lemma basis_prop : forall (X : basis) (x : V), is_lin_comb x X.
intros.