reserve i, j, m, n, k for Nat,
  x, y for set,
  K for Field,
  a,a1 for Element of K;
reserve V1,V2,V3 for finite-dimensional VectSp of K,
  f for Function of V1,V2,

  b1,b19 for OrdBasis of V1,
  B1 for FinSequence of V1,
  b2 for OrdBasis of V2,
  B2 for FinSequence of V2,

  B3 for FinSequence of V3,
  v1,w1 for Element of V1,
  R,R1,R2 for FinSequence of V1,
  p,p1,p2 for FinSequence of K;

theorem Th24:
  for W1,W2 be Subspace of V1 st W1/\W2=(0).V1 for b1 be OrdBasis
  of W1,b2 be OrdBasis of W2,b be OrdBasis of W1+W2 st b=b1^b2 for v,v1,v2 be
  Vector of W1+W2, w1 be Vector of W1,w2 be Vector of W2 st v = v1+v2 & v1=w1 &
  v2=w2 holds v|-- b = (w1|--b1)^(w2|-- b2)
proof
  let W1,W2 be Subspace of V1 such that
A1: W1/\W2=(0).V1;
  [#](0).V1 = {0.V1} by VECTSP_4:def 3;
  then
A2: card ([#](0).V1) = 1 by CARD_1:30;
A3: dim W1 + dim W2 = dim(W1 + W2) + dim(W1 /\ W2) by VECTSP_9:32
    .= dim (W1+W2)+0 by A1,A2,RANKNULL:5;
  let b1 be OrdBasis of W1,b2 be OrdBasis of W2,b be OrdBasis of W1+W2 such
  that
A4: b=b1^b2;
  reconsider R=rng b as Basis of W1+W2 by MATRLIN:def 2;
  let v,v1,v2 be Vector of W1+W2,w1 be Vector of W1,w2 be Vector of W2 such
  that
A5: v=v1+v2 & v1=w1 & v2=w2;
  set wb2=w2|--b2;
  consider L2 be Linear_Combination of W2 such that
A6: w2 = Sum(L2) and
A7: Carrier L2 c= rng b2 and
A8: for k st 1<=k & k<=len wb2 holds wb2/.k=L2.(b2/.k) by MATRLIN:def 7;
A9: W2 is Subspace of W1+W2 by VECTSP_5:7;
  then consider K2 be Linear_Combination of W1+W2 such that
A10: Carrier(K2) = Carrier(L2) and
A11: Sum(K2) = Sum (L2) and
A12: K2|the carrier of W2=L2 by Lm4;
  rng b2 c= R by A4,FINSEQ_1:30;
  then
A13: Carrier K2 c= R by A7,A10;
  set wb1=w1|--b1;
  set vb=v|--b;
  consider L1 be Linear_Combination of W1 such that
A14: w1 = Sum(L1) and
A15: Carrier L1 c= rng b1 and
A16: for k st 1<=k & k<=len wb1 holds wb1/.k=L1.(b1/.k) by MATRLIN:def 7;
  consider L be Linear_Combination of W1+W2 such that
A17: v = Sum(L) & Carrier L c= rng b and
A18: for k st 1<=k & k<=len vb holds vb/.k=L.(b/.k) by MATRLIN:def 7;
A19: len vb=len b by MATRLIN:def 7;
  then
A20: dom vb=dom b by FINSEQ_3:29;
A21: len wb2=len b2 by MATRLIN:def 7;
  then
A22: dom wb2=dom b2 by FINSEQ_3:29;
A23: R is linearly-independent by VECTSP_7:def 3;
A24: W1 is Subspace of W1+W2 by VECTSP_5:7;
  then consider K1 be Linear_Combination of W1+W2 such that
A25: Carrier(K1) = Carrier(L1) and
A26: Sum(K1) = Sum (L1) and
A27: K1|the carrier of W1=L1 by Lm4;
A28: len wb1=len b1 by MATRLIN:def 7;
  then
A29: dom wb1=dom b1 by FINSEQ_3:29;
A30: len (wb1^wb2)=len wb1+len wb2 by FINSEQ_1:22;
A31: len b1=dim W1 & len b2=dim W2 by Th21;
A32: len b=dim (W1+W2) by Th21;
  then
A33: dom b=dom (wb1^wb2) by A28,A21,A31,A30,A3,FINSEQ_3:29;
  rng b1 c= R by A4,FINSEQ_1:29;
  then
A34: Carrier K1 c= R by A15,A25;
  then
A35: L=K1+K2 by A5,A14,A26,A6,A11,A17,A13,A23,MATRLIN:6;
  now
    let k such that
A36: 1<=k & k<=len vb;
A37: k in dom (wb1^wb2) by A28,A21,A19,A31,A32,A30,A3,A36,FINSEQ_3:25;
    now
      per cases by A37,FINSEQ_1:25;
      suppose
A38:    k in dom wb1;
        then 1<=k & k<=len wb1 by FINSEQ_3:25;
        then
A39:    L1.(b1/.k) = wb1/.k by A16
          .= wb1.k by A38,PARTFUN1:def 6
          .= (wb1^wb2).k by A38,FINSEQ_1:def 7;
        reconsider b1k=b1/.k as Vector of W1+W2 by A24,VECTSP_4:10;
A40:    K1.(b1/.k)=L1.(b1/.k) by A27,FUNCT_1:49;
        not b1/.k in Carrier K2
        proof
A41:      b1/.k in W1;
          assume
A42:      b1/.k in Carrier K2;
          then b1/.k in W2 by A10;
          then b1/.k in W1/\W2 by A41,VECTSP_5:3;
          then b1/.k in the carrier of (0).V1 by A1;
          then b1/.k in {0.V1} by VECTSP_4:def 3;
          then b1/.k = 0.V1 by TARSKI:def 1
            .= 0.(W1+W2) by VECTSP_4:11;
          hence thesis by A13,A23,A42,VECTSP_7:2;
        end;
        then K2.b1k=0.K;
        then
A43:    L.b1k = K1.b1k+0.K by A35,VECTSP_6:22
          .= (wb1^wb2).k by A39,A40,RLVECT_1:def 4;
        b1k = b1.k by A29,A38,PARTFUN1:def 6
          .= b.k by A4,A29,A38,FINSEQ_1:def 7
          .= b/.k by A33,A37,PARTFUN1:def 6;
        hence (wb1^wb2).k = vb/.k by A18,A36,A43
          .= vb.k by A33,A20,A37,PARTFUN1:def 6;
      end;
      suppose
        ex n st n in dom wb2 & k=len wb1+n;
        then consider n such that
A44:    n in dom wb2 and
A45:    k=len wb1+n;
        1<=n & n<=len wb2 by A44,FINSEQ_3:25;
        then
A46:    L2.(b2/.n) = wb2/.n by A8
          .= wb2.n by A44,PARTFUN1:def 6
          .= (wb1^wb2).k by A44,A45,FINSEQ_1:def 7;
        reconsider b2n=b2/.n as Vector of W1+W2 by A9,VECTSP_4:10;
A47:    K2.(b2/.n)=L2.(b2/.n) by A12,FUNCT_1:49;
        not b2/.n in Carrier K1
        proof
          assume
A48:      b2/.n in Carrier K1;
          then b2/.n in W2 & b2/.n in W1 by A25;
          then b2/.n in W1/\W2 by VECTSP_5:3;
          then b2/.n in the carrier of (0).V1 by A1;
          then b2/.n in {0.V1} by VECTSP_4:def 3;
          then b2/.n = 0.V1 by TARSKI:def 1
            .= 0.(W1+W2) by VECTSP_4:11;
          hence thesis by A34,A23,A48,VECTSP_7:2;
        end;
        then K1.b2n=0.K;
        then
A49:    L.b2n = 0.K+K2.b2n by A35,VECTSP_6:22
          .= (wb1^wb2).k by A46,A47,RLVECT_1:def 4;
        b2n = b2.n by A22,A44,PARTFUN1:def 6
          .= b.k by A4,A28,A22,A44,A45,FINSEQ_1:def 7
          .= b/.k by A33,A37,PARTFUN1:def 6;
        hence (wb1^wb2).k = vb/.k by A18,A36,A49
          .= vb.k by A33,A20,A37,PARTFUN1:def 6;
      end;
    end;
    hence vb.k=(wb1^wb2).k;
  end;
  hence thesis by A28,A21,A19,A31,A30,A3,Th21;
end;
