 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 Th1:
  for E,F,G be RealNormSpace,
      L1 be LinearOperator of E,G,
      L2 be LinearOperator of F,G
  holds
    ex L be LinearOperator of [:E,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,
        L1 be LinearOperator of E,G,
        L2 be LinearOperator of F,G;
    defpred P1[object,object] means
    ex x be Point of E,y be Point of F
    st $1 = [x,y] & $2 = L1.x + L2.y;
    A1: for z being Element of [:E,F:]
        ex y being Element of G st P1[z,y]
    proof
      let z be Element of [:E,F:];
      consider x be Point of E,y be Point of F such that
      A2: z = [x,y] by PRVECT_3:18;
      take w = L1.x + L2.y;
      thus P1[z,w] by A2;
    end;
    consider L being Function of [:E,F:],G such that
    A3: for z being Element of [:E,F:]
        holds P1[z,L.z] from FUNCT_2:sch 3(A1);
    A4: for z,w be Point of [:E,F:]
        holds L. (z+w) = L.z + L.w
    proof
      let z,w be Point of [:E,F:];
      consider x1 be Point of E,y1 be Point of F such that
      A5: z = [x1,y1] & L.z = L1.x1 + L2.y1 by A3;
      consider x2 be Point of E,y2 be Point of F such that
      A6: w = [x2,y2] & L.w = L1.x2 + L2.y2 by A3;
      A7: z+w = [x1+x2,y1+y2] by A5,A6,PRVECT_3:18;
      consider x3 be Point of E,y3 be Point of F such that
      A8: z+w = [x3,y3] & L. (z+w) = L1.x3 + L2.y3 by A3;
      A9: x3=x1+x2 & y3=y1+y2 by A7,A8,XTUPLE_0:1;
      L.z + L.w = (L1.x1 + L2.y1 + L1.x2) + L2.y2 by A5,A6,RLVECT_1:def 3
      .= (L1.x1 + L1.x2 + L2.y1) + L2.y2 by RLVECT_1:def 3
      .= (L1.x1 + L1.x2 ) + ( L2.y1 + L2.y2 ) by RLVECT_1:def 3
      .= L1.(x1+x2) + ( L2.y1 + L2.y2 ) by VECTSP_1:def 20
      .= L. (z+w) by A8,A9,VECTSP_1:def 20;
      hence thesis;
    end;
    for z being Element of [:E,F:]
    for r being Real holds L . (r * z) = r * (L . z)
    proof
      let z be Element of [:E,F:],
          r be Real;
      consider x1 be Point of E,y1 be Point of F such that
      A10: z = [x1,y1] & L.z = L1.x1 + L2.y1 by A3;
      A11: r*z = [r*x1,r*y1] by A10,PRVECT_3:18;
      consider x2 be Point of E,y2 be Point of F such that
      A12: r*z = [x2,y2] & L. (r*z) = L1.x2 + L2.y2 by A3;
      x2=r*x1 & y2 =r*y1 by A11,A12,XTUPLE_0:1;
      hence L. (r*z) = r * (L1.x1) + L2.(r*y1) by A12,LOPBAN_1:def 5
        .= r * (L1.x1) + r * (L2.y1) by LOPBAN_1:def 5
        .= r * L.z by A10,RLVECT_1:def 5;
    end; then
    reconsider L as LinearOperator of [:E,F:],G
      by A4,LOPBAN_1:def 5,VECTSP_1:def 20;
    take L;
    thus
    A14: 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] as Point of [:E,F:];
      consider x1 be Point of E,y1 be Point of F such that
      A15: z = [x1,y1] & L.z = L1.x1 + L2.y1 by A3;
      x = x1 & y1 = y by A15,XTUPLE_0:1;
      hence L. [x,y] = L1.x + L2.y by A15;
    end;
    thus for x be Point of E holds L1.x = L/. [x,0.F]
    proof
      let x be Point of E;
      thus L1.x = L1.x + 0.G by RLVECT_1:4
               .= L1.x + L2. (0.F) by LOPBAN_7:3
               .= L/. [x,0.F] by A14;
    end;
    thus for y be Point of F holds L2.y = L/. [0.E,y]
    proof
      let y be Point of F;
      thus L2.y = 0.G + L2.y by RLVECT_1:4
               .= L1.(0.E) + L2. y by LOPBAN_7:3
               .= L/. [0.E,y] by A14;
    end;
  end;
