reserve V for Z_Module;
reserve W, W1, W2 for Submodule of V;

theorem FRds3:
  for V being LeftMod of INT.Ring, W1, W2 being free Subspace of V,
  I1 being Basis of W1, I2 being Basis of W2, I being Subset of V
  st V is_the_direct_sum_of W1,W2 & I = I1 \/ I2
  holds I is linearly-independent
  proof
    let V being LeftMod of INT.Ring, W1, W2 being free Subspace of V,
    I1 being Basis of W1, I2 being Basis of W2, I being Subset of V such that
    A1: V is_the_direct_sum_of W1,W2 and
    A2: I = I1 \/ I2;
    assume I is linearly-dependent;
    then consider l be Linear_Combination of I such that
    A3: Sum(l) = 0.V and
    A4: Carrier(l) <> {} by VECTSP_7:def 1;
    A5A: I1 /\ I2 = {} by A1,FRds1;
    then A5B: I1 misses I2;
    the carrier of W1 c= the carrier of V
    & the carrier of W2 c= the carrier of V by VECTSP_4:def 2;
    then reconsider II1 = I1, II2 = I2 as Subset of V by XBOOLE_1:1;
    consider l1 be Linear_Combination of II1,
    l2 be Linear_Combination of II2 such that
    A6: l = l1 + l2 by A2,A5A,ThCarrier2;
    reconsider ll1 = l1 as Linear_Combination of I
    by A2,XBOOLE_1:7,ZMODUL02:10;
    reconsider ll2 = l2 as Linear_Combination of I
    by A2,XBOOLE_1:7,ZMODUL02:10;
    A7: Sum(l) = Sum(ll1) + Sum(ll2) by A6,ZMODUL02:52;
    set v1 = Sum(ll1);
    set v2 = Sum(ll2);
    Carrier(ll1) c= I1 & Carrier(ll2) c= I2 by VECTSP_6:def 4;
    then A8: Carrier(ll1) /\ Carrier(ll2) = {}
    by A5B,XBOOLE_0:def 7,XBOOLE_1:64;
    A10: v1 <> 0.V
    proof
      assume B1: v1 = 0.V;
      II1 is linearly-independent by VECTSP_7:def 3,ZMODUL03:15;
      then B3: Carrier(l1) = {} by B1,VECTSP_7:def 1;
      II2 is linearly-independent by VECTSP_7:def 3,ZMODUL03:15;
      then Carrier(ll1) \/ Carrier(ll2) = {} by A3,A7,B1,B3,VECTSP_7:def 1;
      hence contradiction by A4,A6,A8,ThCarrier1;
    end;
    A13: v1 = -v2 by A3,A7,RLVECT_1:6;
    v1 in Lin(II1) by ZMODUL02:64;
    then v1 in Lin(I1) by ZMODUL03:20;
    then v1 in the ModuleStr of W1 by VECTSP_7:def 3;
    then A14: v1 in W1;
    v2 in Lin(II2) by ZMODUL02:64;
    then v2 in Lin(I2) by ZMODUL03:20;
    then v2 in the ModuleStr of W2 by VECTSP_7:def 3;
    then v2 in W2;
    then A15: v1 in W2 by A13,ZMODUL01:38;
    W1 /\ W2 = (0).V by A1,VECTSP_5:def 4;
    hence contradiction by A10,A14,A15,VECTSP_5:3,ZMODUL02:66;
  end;
