 reserve j for set;
 reserve p,r for Real;
 reserve S,T,F for RealNormSpace;
 reserve x0 for Point of S;
 reserve g for PartFunc of S,T;
 reserve c for constant sequence of S;
 reserve R for RestFunc of S,T;
 reserve G for RealNormSpace-Sequence;
 reserve i for Element of dom G;
 reserve f for PartFunc of product G,F;
 reserve x for Element of product G;
reserve G for RealNormSpace-Sequence;
reserve F for RealNormSpace;
reserve i for Element of dom G;
reserve f,f1,f2 for PartFunc of product G, F;
reserve x for Point of product G;
reserve X for set;

theorem Th26:
for i be set st i in dom G holds
  (f1+f2)*reproj(In(i,dom G),x) = f1*reproj(In(i,dom G),x)
                                    +f2*reproj(In(i,dom G),x)
& (f1-f2)*reproj(In(i,dom G),x) = f1*reproj(In(i,dom G),x)
                            -f2*reproj(In(i,dom G),x)
proof
   let i0 be set;
   assume i0 in dom G;
   set i=In(i0,dom G);

A1:dom(reproj(i,x))=the carrier of G.i by FUNCT_2:def 1;
A2:dom(f1+f2) = dom f1 /\ dom f2 by VFUNCT_1:def 1;
A3b:   for s be Element of G.i holds s in dom((f1+f2)*reproj(i,x))
    iff s in dom(f1*reproj(i,x)+f2*reproj(i,x))
   proof
    let s be Element of G.i;
    s in dom((f1+f2)*reproj(i,x)) iff reproj(i,x).s in dom f1 /\ dom f2
      by A2,A1,FUNCT_1:11; then
    s in dom((f1+f2)*reproj(i,x))
     iff reproj(i,x).s in dom f1 & reproj(i,x).s in dom f2
       by XBOOLE_0:def 4; then
    s in dom((f1+f2)*reproj(i,x))
     iff s in dom(f1*reproj(i,x)) & s in dom(f2*reproj(i,x))
       by A1,FUNCT_1:11; then
    s in dom((f1+f2)*reproj(i,x))
     iff s in dom(f1*reproj(i,x)) /\ dom(f2*reproj(i,x)) by XBOOLE_0:def 4;
    hence thesis by VFUNCT_1:def 1;
   end; then
A3:for s be object holds s in dom((f1+f2)*reproj(i,x))
     iff s in dom(f1*reproj(i,x) + f2*reproj(i,x));
     then
A3a:dom((f1+f2)*reproj(i,x)) = dom(f1*reproj(i,x)+f2*reproj(i,x)) by TARSKI:2;
A4:for z being Element of G.i st z in dom((f1+f2)*reproj(i,x)) holds
    ((f1+f2)*reproj(i,x)).z = (f1*reproj(i,x)+f2*reproj(i,x)).z
   proof
    let z be Element of G.i;
    assume A5: z in dom((f1+f2)*reproj(i,x)); then
A6: reproj(i,x).z in dom(f1+f2) by FUNCT_1:11;

    z in dom(f1*reproj(i,x)) /\ dom(f2*reproj(i,x))
      by A3a,A5,VFUNCT_1:def 1; then
A7: z in dom(f1*reproj(i,x)) & z in dom(f2*reproj(i,x)) by XBOOLE_0:def 4;

A8: reproj(i,x).z in dom f1 /\ dom f2 by A2,A5,FUNCT_1:11; then
    reproj(i,x).z in dom f1 by XBOOLE_0:def 4; then
A9:f1/.(reproj(i,x).z) = f1.(reproj(i,x).z) by PARTFUN1:def 6
      .=(f1*reproj(i,x)).z by A7,FUNCT_1:12
      .=(f1*reproj(i,x))/.z by A7,PARTFUN1:def 6;
    reproj(i,x).z in dom f2 by A8,XBOOLE_0:def 4; then
A10:f2/.(reproj(i,x).z) = f2.(reproj(i,x).z) by PARTFUN1:def 6
      .=(f2*reproj(i,x)).z by A7,FUNCT_1:12
      .=(f2*reproj(i,x))/.z by A7,PARTFUN1:def 6;
    ((f1+f2)*reproj(i,x)).z = (f1+f2).(reproj(i,x).z) by A5,FUNCT_1:12
      .=(f1+f2)/.(reproj(i,x).z) by A6,PARTFUN1:def 6
      .= f1/.(reproj(i,x).z) +f2/.(reproj(i,x).z) by A6,VFUNCT_1:def 1
      .=(f1*reproj(i,x)+ f2*reproj(i,x))/.z
          by A3b,A5,A9,A10,VFUNCT_1:def 1;
    hence thesis by A3b,A5,PARTFUN1:def 6;
   end;

A11:
   dom(f1-f2) = dom f1 /\ dom f2 by VFUNCT_1:def 2;
A12b:   for s be Element of G.i holds s in dom((f1-f2)*reproj(i,x))
     iff s in dom(f1*reproj(i,x)-f2*reproj(i,x))
   proof
    let s be Element of G.i;
    s in dom((f1-f2)*reproj(i,x)) iff reproj(i,x).s in dom f1 /\ dom f2
      by A11,A1,FUNCT_1:11; then
    s in dom((f1-f2)*reproj(i,x))
      iff reproj(i,x).s in dom f1 & reproj(i,x).s in dom f2
        by XBOOLE_0:def 4; then
    s in dom((f1-f2)*reproj(i,x))
      iff s in dom(f1*reproj(i,x)) & s in dom(f2*reproj(i,x))
        by A1,FUNCT_1:11; then
    s in dom((f1-f2)*reproj(i,x))
      iff s in dom(f1*reproj(i,x)) /\ dom(f2*reproj(i,x)) by XBOOLE_0:def 4;
    hence thesis by VFUNCT_1:def 2;
   end; then
A12:   for s be object holds s in dom((f1-f2)*reproj(i,x))
     iff s in dom(f1*reproj(i,x) - f2*reproj(i,x));
     then
A12a:
   dom((f1-f2)*reproj(i,x)) = dom(f1*reproj(i,x)-f2*reproj(i,x)) by TARSKI:2;
   for z being Element of G.i st z in dom((f1-f2)*reproj(i,x)) holds
    ((f1-f2)*reproj(i,x)).z = (f1*reproj(i,x)-f2*reproj(i,x)).z
   proof
    let z be Element of G.i;
    assume A13: z in dom((f1-f2)*reproj(i,x)); then
A14:reproj(i,x).z in dom (f1-f2) by FUNCT_1:11;
    z in dom(f1*reproj(i,x)) /\ dom(f2*reproj(i,x))
      by A12a,A13,VFUNCT_1:def 2; then
A15:z in dom(f1*reproj(i,x)) & z in dom(f2*reproj(i,x)) by XBOOLE_0:def 4;
A16:reproj(i,x).z in dom f1 /\ dom f2 by A11,A13,FUNCT_1:11; then
    reproj(i,x).z in dom f1 by XBOOLE_0:def 4; then
A17:f1/.(reproj(i,x).z) = f1.(reproj(i,x).z) by PARTFUN1:def 6
      .=(f1*reproj(i,x)).z by A15,FUNCT_1:12
      .=(f1*reproj(i,x))/.z by A15,PARTFUN1:def 6;

    reproj(i,x).z in dom f2 by A16,XBOOLE_0:def 4; then
A18:f2/.(reproj(i,x).z) = f2.(reproj(i,x).z) by PARTFUN1:def 6
      .=(f2*reproj(i,x)).z by A15,FUNCT_1:12
      .=(f2*reproj(i,x))/.z by A15,PARTFUN1:def 6;
    thus ((f1-f2)*reproj(i,x)).z =(f1-f2).(reproj(i,x).z) by A13,FUNCT_1:12
      .=(f1-f2)/.(reproj(i,x).z) by A14,PARTFUN1:def 6
      .= f1/.(reproj(i,x).z) - f2/.(reproj(i,x).z) by A14,VFUNCT_1:def 2
      .=(f1*reproj(i,x)- f2*reproj(i,x))/.z
      by A12b,A13,A17,A18,VFUNCT_1:def 2
      .=(f1*reproj(i,x)- f2*reproj(i,x)).z
      by A12b,A13,PARTFUN1:def 6;
   end;
   hence thesis by A3,A12,A4,TARSKI:2,PARTFUN1:5;
end;
