reserve x,X,Y for set;
reserve g,r,r1,r2,p,p1,p2 for Real;
reserve R for Subset of REAL;
reserve seq,seq1,seq2,seq3 for Real_Sequence;
reserve Ns for increasing sequence of NAT;
reserve n for Nat;
reserve W for non empty set;
reserve h,h1,h2 for PartFunc of W,REAL;

theorem Th8:
  for h1,h2 being PartFunc of W,REAL, seq being sequence of W holds
  rng seq c= dom h1 /\ dom h2 implies (h1+h2)/*seq=h1/*seq+h2/*seq
  & (h1-h2)/*seq=h1/*seq-h2/*seq & (h1(#)h2)/*seq=(h1/*seq)(#)(h2/*seq)
proof
  let h1,h2 be PartFunc of W,REAL, seq be sequence of W;
A1: dom h1 /\ dom h2 c= dom h1 by XBOOLE_1:17;
A2: dom h1 /\ dom h2 c= dom h2 by XBOOLE_1:17;
  assume
A3: rng seq c= dom h1 /\ dom h2;
  then
A4: rng seq c= dom (h1 + h2) by VALUED_1:def 1;
  now
    let n;
A5: n in NAT by ORDINAL1:def 12;
A6: seq.n in rng seq by VALUED_0:28;
    thus ((h1+h2)/*seq).n = (h1+h2).(seq.n) by A4,FUNCT_2:108,A5
      .= h1.(seq.n) + h2.(seq.n) by A4,A6,VALUED_1:def 1
      .= (h1/*seq).n + h2.(seq.n) by A3,A1,FUNCT_2:108,XBOOLE_1:1,A5
      .= (h1/*seq).n + (h2/*seq).n by A3,A2,FUNCT_2:108,XBOOLE_1:1,A5;
  end;
  hence (h1+h2)/*seq=h1/*seq+h2/*seq by SEQ_1:7;
A7: rng seq c= dom (h1 - h2) by A3,VALUED_1:12;
  now
    let n;
A8: n in NAT by ORDINAL1:def 12;
A9: seq.n in rng seq by VALUED_0:28;
    thus ((h1-h2)/*seq).n = (h1-h2).(seq.n) by A7,FUNCT_2:108,A8
      .= h1.(seq.n) - h2.(seq.n) by A7,A9,VALUED_1:13
      .= (h1/*seq).n - h2.(seq.n) by A3,A1,FUNCT_2:108,XBOOLE_1:1,A8
      .= (h1/*seq).n - (h2/*seq).n by A3,A2,FUNCT_2:108,XBOOLE_1:1,A8;
  end;
  hence (h1-h2)/*seq=h1/*seq-h2/*seq by Th1;
A10: rng seq c= dom (h1 (#) h2) by A3,VALUED_1:def 4;
  now
    let n;
A11: n in NAT by ORDINAL1:def 12;
    thus ((h1(#)h2)/*seq).n = (h1(#)h2).(seq.n) by A10,FUNCT_2:108,A11
      .= h1.(seq.n) * h2.(seq.n) by VALUED_1:5
      .= (h1/*seq).n * h2.(seq.n) by A3,A1,FUNCT_2:108,XBOOLE_1:1,A11
      .= (h1/*seq).n * (h2/*seq).n by A3,A2,FUNCT_2:108,XBOOLE_1:1,A11;
  end;
  hence thesis by SEQ_1:8;
end;
