reserve K for Ring,
  V1,W1 for VectSp of K;
reserve F for Field,
  V,W for VectSp of F;
reserve T for linear-transformation of V,W;
reserve l for Linear_Combination of V;

theorem Th33:
  for A,B being Subset of V st A c= B & B is Basis of V holds V
  is_the_direct_sum_of Lin A, Lin (B \ A)
proof
  let A,B be Subset of V such that
A1: A c= B and
A2: B is Basis of V;
A3: (Lin A) /\ (Lin (B \ A)) = (0).V
  proof
    set U = (Lin A) /\ (Lin (B \ A));
    reconsider W = (0).V as strict Subspace of U by VECTSP_4:39;
    for v being Element of U holds v in W
    proof
      let v be Element of U;
A4:   B is linearly-independent by A2,VECTSP_7:def 3;
A5:   v in U;
      then v in Lin A by VECTSP_5:3;
      then consider l being Linear_Combination of A such that
A6:   v = Sum l by VECTSP_7:7;
      v in Lin (B \ A) by A5,VECTSP_5:3;
      then consider m being Linear_Combination of B \ A such that
A7:   v = Sum m by VECTSP_7:7;
A8:   0.V = (Sum l) - (Sum m) by A6,A7,VECTSP_1:19
        .= Sum (l - m) by VECTSP_6:47;
A9:   Carrier (l - m) c= (Carrier l) \/ (Carrier m) & A \/ (B \ A) = B by A1,
VECTSP_6:41,XBOOLE_1:45;
A10:  Carrier l c= A & Carrier m c= B \ A by VECTSP_6:def 4;
      then (Carrier l) \/ (Carrier m) c= A \/ (B \ A) by XBOOLE_1:13;
      then Carrier (l - m) c= B by A9;
      then reconsider n = l - m as Linear_Combination of B by VECTSP_6:def 4;
      A misses (B \ A) by XBOOLE_1:79;
      then Carrier n = (Carrier l) \/ (Carrier m) by A10,Th32,XBOOLE_1:64;
      then Carrier l = {} by A8,A4,VECTSP_7:def 1;
      then l = ZeroLC(V) by VECTSP_6:def 3;
      then Sum l = 0.V by VECTSP_6:15;
      hence thesis by A6,VECTSP_4:35;
    end;
    hence thesis by VECTSP_4:32;
  end;
  (Omega).V = (Lin A) + (Lin (B \ A))
  proof
    set U = (Lin A) + (Lin (B \ A));
A11: [#]V c= [#]U
    proof
      let v be object;
      assume v in [#]V;
      then reconsider v as Element of V;
      v in Lin B by A2,VECTSP_9:10;
      then consider l being Linear_Combination of B such that
A12:  v = Sum l by VECTSP_7:7;
      set n = l!(B\A);
      set m = l!A;
A13:  l = m + n by A1,Th27;
      ex v1,v2 being Element of V st v1 in Lin A & v2 in Lin (B \ A) & v
      = v1 + v2
      proof
        take Sum m, Sum n;
        thus thesis by A12,A13,VECTSP_6:44,VECTSP_7:7;
      end;
      then v in (Lin A) + (Lin (B \ A)) by VECTSP_5:1;
      hence thesis;
    end;
    [#]U c= [#]V by VECTSP_4:def 2;
    then [#]U = [#]V by A11;
    hence thesis by VECTSP_4:29;
  end;
  hence thesis by A3,VECTSP_5:def 4;
end;
