 reserve S,T,W,Y for RealNormSpace;
 reserve f,f1,f2 for PartFunc of S,T;
 reserve Z for Subset of S;
 reserve i,n for Nat;

theorem Th0:
  for E,F,G be RealNormSpace,
      L be LinearOperator of [:E,F:],G
  holds
    ex L1 be LinearOperator of E,G,
       L2 be LinearOperator of F,G
    st ( for x be Point of E,
             y be Point of F
         holds L. [x,y] = L1.x + L2.y )
     & ( for x be Point of E holds L1.x = L/. [x,0.F] )
     & ( for y be Point of F holds L2.y = L/. [0.E,y] )
  proof
    let E,F,G be RealNormSpace,
        L be LinearOperator of [:E,F:],G;
    deffunc FH1(Point of E) = L/. [$1,0.F];
    consider L1 being Function of the carrier of E,the carrier of G
    such that
    A1: for x being Point of E holds L1.x = FH1(x) from FUNCT_2:sch 4;
    A4: for s, t being Element of E holds
        L1 . (s + t) = (L1 . s) + (L1 . t)
    proof
      let s, t be Element of E;
      reconsider z = [s,0.F], w = [t,0.F] as Point of [:E,F:];
      z+w = [s+t,0.F+0.F] by PRVECT_3:18
             .= [s+t,0.F] by RLVECT_1:4;
      hence L1. (s+t) = L/.(z+w) by A1
               .= L/.z +L/.w by VECTSP_1:def 20
               .= L1.s +L/.[t,0.F] by A1
               .= L1.s +L1.t by A1;
    end;
    for s being Element of E
    for r being Real holds L1 . (r * s) = r * (L1 . s)
    proof
      let s be Element of E,
          r be Real;
      reconsider z = [s,0.F] as Point of [:E,F:];
      r*z = [r*s,r*0.F] by PRVECT_3:18
             .= [r*s,0.F] by RLVECT_1:10;
      hence L1. (r*s) = L/.(r*z) by A1
      .= r * ( L/.z ) by LOPBAN_1:def 5
      .= r * L1.s by A1;
    end; then
    reconsider L1 as LinearOperator of E,G
      by A4,LOPBAN_1:def 5,VECTSP_1:def 20;
    deffunc FH2(Point of F) = L/. [0.E,$1];
    consider L2 being Function of the carrier of F,the carrier of G such that
    A7: for x being Point of F holds L2.x = FH2(x) from FUNCT_2:sch 4;
    A10: for s, t being Element of F holds
         L2 . (s + t) = (L2 . s) + (L2 . t)
    proof
      let s, t be Element of F;
      reconsider z = [0.E,s], w = [0.E,t] as Point of [:E,F:];
      z+w = [0.E+0.E,s+t] by PRVECT_3:18
              .= [0.E,s+t] by RLVECT_1:4;
      hence L2. (s+t) = L/.(z+w) by A7
      .= L/.z +L/.w by VECTSP_1:def 20
      .= L2.s +L/.[0.E,t] by A7
      .= L2.s +L2.t by A7;
    end;
    for s being Element of F
    for r being Real holds L2 . (r * s) = r * (L2 . s)
    proof
      let s be Element of F,
          r be Real;
      reconsider z = [0.E,s] as Point of [:E,F:];
      r*z = [r*0.E,r*s] by PRVECT_3:18
      .= [0.E,r*s] by RLVECT_1:10;
      hence L2. (r*s) = L/.(r*z) by A7
      .= r*( L/.z ) by LOPBAN_1:def 5
      .= r * L2.s by A7;
    end; then
    reconsider L2 as LinearOperator of F,G
      by A10,LOPBAN_1:def 5,VECTSP_1:def 20;
    for x be Point of E, y be Point of F
    holds L. [x,y] = L1.x + L2.y
    proof
      let x be Point of E, y be Point of F;
      reconsider z = [x,y], z1 = [x,0.F], z2 = [0.E,y]
        as Point of [:E,F:];
      z1+z2 = [x+0.E,0.F+y] by PRVECT_3:18
      .= [x,0.F+y] by RLVECT_1:4
      .= z by RLVECT_1:4;
      hence L. [x,y] = L/.z1 + L/.z2 by VECTSP_1:def 20
      .= L1.x + L/.z2 by A1
      .= L1.x + L2.y by A7;
    end;
    hence ex L1 be LinearOperator of E,G,
       L2 be LinearOperator of F,G
    st ( for x be Point of E, y be Point of F
         holds L. [x,y] = L1.x + L2.y )
     & ( for x be Point of E holds L1.x = L/. [x,0.F] )
     & ( for y be Point of F holds L2.y = L/. [0.E,y] ) by A1,A7;
  end;
