let V be Z_Module; for W1, W2 being free Subspace of V st V is_the_direct_sum_of W1,W2 holds
V is free
let W1, W2 be free Subspace of V; ( V is_the_direct_sum_of W1,W2 implies V is free )
assume A1:
V is_the_direct_sum_of W1,W2
; V is free
set I1 = the Basis of W1;
set I2 = the Basis of W2;
set I = the Basis of W1 \/ the Basis of W2;
the carrier of W1 c= the carrier of V
by VECTSP_4:def 2;
then A3:
the Basis of W1 is Subset of V
by XBOOLE_1:1;
the carrier of W2 c= the carrier of V
by VECTSP_4:def 2;
then
the Basis of W2 is Subset of V
by XBOOLE_1:1;
then reconsider I = the Basis of W1 \/ the Basis of W2 as Subset of V by A3, XBOOLE_1:8;
ModuleStr(# the carrier of V, the addF of V, the ZeroF of V, the lmult of V #) = Lin I
by A1, FRds2;
then
I is base
by VECTSP_7:def 3, FRds3, A1;
hence
V is free
by VECTSP_7:def 4; verum