MESFUN12

index · ← BKMODEL2 · MOEBIUS3 →
:: Fubini's Theorem for Nonnegative or Nonpositive Functions
::  by Noboru Endou
::
:: Received March 27, 2018
:: Copyright (c) 2018-2026 Association of Mizar Users
::           (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.

environ

 vocabularies NUMBERS, XXREAL_0, SUBSET_1, CARD_1, ARYTM_3, ARYTM_1, RELAT_1,
      NAT_1, REAL_1, CARD_3, FUNCT_1, FINSEQ_1, XBOOLE_0, TARSKI, ZFMISC_1,
      PROB_1, PROB_2, FUNCOP_1, SUPINF_2, VALUED_0, FUNCT_2, PARTFUN1,
      MEASURE1, ORDINAL2, SERIES_1, MESFUNC5, SEQ_2, SEQFUNC, PBOOLE, MESFUNC9,
      VALUED_1, MESFUNC1, MEASUR10, MESFUNC8, FUNCT_3, MEASUR11, MESFUNC2,
      MESFUNC3, COMPLEX1, XCMPLX_0, MESFUN12, RFUNCT_3;
 notations TARSKI, XBOOLE_0, ZFMISC_1, SUBSET_1, XXREAL_3, XXREAL_0, XREAL_0,
      ORDINAL1, NUMBERS, SETFAM_1, RELAT_1, FUNCT_1, RELSET_1, FUNCT_2,
      FUNCOP_1, PARTFUN1, BINOP_1, PROB_1, PROB_3, NAT_1, FINSEQ_1, FINSEQ_4,
      SUPINF_2, PROB_2, SEQFUNC, MEASURE1, MESFUNC1, MESFUNC2, MESFUNC3,
      MESFUNC5, MESFUNC8, MESFUNC9, EXTREAL1, MEASUR10, MCART_1, MEASUR11,
      MESFUN11, DBLSEQ_3;
 constructors SEQFUNC, PROB_3, MESFUNC8, MESFUNC9, EXTREAL1, SUPINF_1,
      MESFUNC2, DBLSEQ_3, MEASUR11, MESFUNC3, FINSEQ_4, MESFUN11;
 registrations ORDINAL1, XBOOLE_0, RELAT_1, SUBSET_1, ROUGHS_1, XXREAL_0,
      XREAL_0, NAT_1, INT_1, MEMBERED, FUNCT_1, FINSEQ_1, FUNCT_2, NUMBERS,
      VALUED_0, MESFUNC9, RELSET_1, MEASURE1, PARTFUN1, XXREAL_3, CARD_1,
      DBLSEQ_3, MEASURE9, MEASUR10, MEASUR11, MESFUNC5, MESFUN11;
 requirements BOOLE, SUBSET, NUMERALS, ARITHM, REAL;
 equalities XCMPLX_0, FINSEQ_1, BINOP_1;
 expansions TARSKI, XBOOLE_0, MEASUR11;
 theorems TARSKI, XBOOLE_0, XREAL_0, FINSEQ_1, NAT_1, FUNCT_1, CARD_3,
      XXREAL_0, ZFMISC_1, FINSEQ_3, XBOOLE_1, PROB_2, PROB_1, XXREAL_3,
      MEASURE1, VALUED_0, FUNCT_2, RELAT_1, MESFUNC5, EXTREAL1, MESFUNC9,
      FINSEQ_2, PARTFUN1, ORDINAL1, MESFUNC1, SUPINF_2, MESFUNC8, FUNCT_3,
      MESFUNC2, MEASUR10, SUBSET_1, DBLSEQ_3, FINSEQ_5, MEASUR11, MESFUNC3,
      ENUMSET1, MESFUN11;
 schemes FINSEQ_1, NAT_1, FUNCT_2, FINSEQ_2, PARTFUN1, FUNCT_1, SEQFUNC;

begin :: Extended real valued characteristic function

definition
  let A,X be set, er be ExtReal;
  func chi(er,A,X) -> Function of X,ExtREAL means :Def1:
  for x be object st x in X holds
    (x in A implies it.x = er) & (not x in A implies it.x = 0);
existence
proof
    defpred P[object,object] means ($1 in A implies $2 = er) &
      (not $1 in A implies $2 = 0);
A1: for x being object st x in X ex y being object st P[x,y]
    proof
      let x be object;
      assume x in X;
      not x in A implies ex y be object st y = {} & (x in A implies y = er)
      & (not x
      in A implies y = {});
      hence thesis;
    end;
A2: for x,y1,y2 being object st x in X & P[x,y1] & P[x,y2] holds y1 = y2;
    consider f being Function such that
A3:  dom f = X &
     for x being object st x in X holds P[x,f.x] from FUNCT_1:sch 2(A2,A1);
    for x being object st x in X holds f.x in ExtREAL
    proof
     let x be object;
     assume A4: x in X;
     per cases;
     suppose x in A; then
      f.x = er by A3,A4;
      hence f.x in ExtREAL by XXREAL_0:def 1;
     end;
     suppose not x in A; then
      f.x = 0. by A3,A4;
      hence f.x in ExtREAL;
     end;
    end; then
    reconsider f as Function of X,ExtREAL by A3,FUNCT_2:3;
    take f;
    thus thesis by A3;
end;
uniqueness
  proof
    let f1,f2 be Function of X,ExtREAL such that
A4: for x being object st x in X holds (x in A implies f1.x = er) &
   (not x in A implies f1.x = 0) and
A6: for x being object st x in X holds (x in A implies f2.x = er) &
   (not x in A implies f2.x = 0);
    for x being object st x in X holds f1.x=f2.x
    proof
      let x be object;
      assume
A7:   x in X;
      then
A8:   not x in A implies f1.x = 0 & f2.x = 0 by A4,A6;
      x in A implies f1.x = er & f2.x = er by A4,A6,A7;
      hence thesis by A8;
    end;
    hence thesis by FUNCT_2:12;
  end;
end;

theorem Th1:
for X be non empty set, A be set, r be Real holds r(#)chi(A,X) = chi(r,A,X)
proof
   let X be non empty set, A be set, r be Real;
   for x be Element of X holds (r(#)chi(A,X)).x = chi(r,A,X).x
   proof
    let x be Element of X;
    x in X; then
    x in dom(r(#)chi(A,X)) by FUNCT_2:def 1; then
A2: (r(#)chi(A,X)).x = r * chi(A,X).x by MESFUNC1:def 6;
    per cases;
    suppose x in A; then
     chi(A,X).x = 1 & chi(r,A,X).x = r by Def1,FUNCT_3:def 3;
     hence (r(#)chi(A,X)).x = chi(r,A,X).x by A2,XXREAL_3:81;
    end;
    suppose not x in A; then
     chi(A,X).x = 0 & chi(r,A,X).x = 0 by Def1,FUNCT_3:def 3;
     hence (r(#)chi(A,X)).x = chi(r,A,X).x by A2;
    end;
   end;
   hence thesis by FUNCT_2:def 8;
end;

theorem Th2:
for X be non empty set, A be set holds
  chi(+infty,A,X) = Xchi(A,X) & chi(-infty,A,X) = -Xchi(A,X)
proof
   let X be non empty set, A be set;
   for x be Element of X holds chi(+infty,A,X).x = Xchi(A,X).x
   proof
    let x be Element of X;
    per cases;
    suppose x in A; then
     chi(+infty,A,X).x = +infty & Xchi(A,X).x = +infty
       by Def1,MEASUR10:def 7;
     hence chi(+infty,A,X).x = Xchi(A,X).x;
    end;
    suppose not x in A; then
     chi(+infty,A,X).x = 0 & Xchi(A,X).x = 0 by Def1,MEASUR10:def 7;
     hence chi(+infty,A,X).x = Xchi(A,X).x;
    end;
   end;
   hence chi(+infty,A,X) = Xchi(A,X) by FUNCT_2:def 8;
   for x be Element of X holds chi(-infty,A,X).x = (-Xchi(A,X)).x
   proof
    let x be Element of X;
    x in X; then
A1: x in dom (-Xchi(A,X)) by FUNCT_2:def 1; then
A2: (-Xchi(A,X)).x = - (Xchi(A,X).x) by MESFUNC1:def 7;
    per cases;
    suppose x in A; then
     chi(-infty,A,X).x = -infty & Xchi(A,X).x = +infty
       by Def1,MEASUR10:def 7;
     hence chi(-infty,A,X).x = (-Xchi(A,X)).x by A1,XXREAL_3:6,MESFUNC1:def 7;
    end;
    suppose not x in A; then
     chi(-infty,A,X).x = 0 & Xchi(A,X).x = 0 by Def1,MEASUR10:def 7;
     hence chi(-infty,A,X).x = (-Xchi(A,X)).x by A2;
    end;
   end;
   hence chi(-infty,A,X) = -Xchi(A,X) by FUNCT_2:def 8;
end;

theorem Th3:
for X,A be set holds chi(A,X) is without+infty without-infty
proof
   let X,A be set;
   rng chi(A,X) c= {0,1} by FUNCT_3:39; then
   not +infty in rng chi(A,X) & not -infty in rng chi(A,X);
   hence chi(A,X) is without+infty without-infty by MESFUNC5:def 3,def 4;
end;

theorem Th4:
for X be non empty set, A be set, r be Real holds
  rng chi(r,A,X) c= {0,r} & chi(r,A,X) is without+infty without-infty
proof
   let X be non empty set, A be set, r be Real;
   now let y be object;
    assume y in rng chi(r,A,X); then
    consider x be object such that
A1:  x in dom chi(r,A,X) & y = chi(r,A,X).x by FUNCT_1:def 3;
    per cases;
    suppose x in A; then
     chi(r,A,X).x = r by A1,Def1;
     hence y in {0,r} by A1,TARSKI:def 2;
    end;
    suppose not x in A; then
     chi(r,A,X).x = 0 by A1,Def1;
     hence y in {0,r} by A1,TARSKI:def 2;
    end;
   end;
   hence rng chi(r,A,X) c= {0,r};
   chi(A,X) is without+infty without-infty by Th3; then
   r(#)chi(A,X) is without+infty without-infty;
   hence chi(r,A,X) is without+infty without-infty by Th1;
end;

theorem Th5:
for X be non empty set, S be SigmaField of X,
 f be non empty PartFunc of X,ExtREAL, M be sigma_Measure of S
  st f is_simple_func_in S
 ex E be non empty Finite_Sep_Sequence of S, a be FinSequence of ExtREAL,
  r be FinSequence of REAL st
  E,a are_Re-presentation_of f &
  for n be Nat holds
    a.n = r.n & f|(E.n) = (chi(r.n,E.n,X))|(E.n) & (E.n = {} implies r.n = 0)
proof
    let X be non empty set, S be SigmaField of X,
    f be non empty PartFunc of X,ExtREAL,
    M be sigma_Measure of S;
    assume A1: f is_simple_func_in S; then
    consider E be Finite_Sep_Sequence of S,
      b be FinSequence of ExtREAL such that
A2:  E,b are_Re-presentation_of f by MESFUNC3:12;
A3: dom f = union rng E & dom E = dom b
  & for n be Nat st n in dom E for x be object st x in E.n holds f.x = b.n
      by A2,MESFUNC3:def 1;
    reconsider E as non empty Finite_Sep_Sequence of S by A3,ZFMISC_1:2;
A4: for n be Nat st E.n <> {} holds b.n in REAL
    proof
     let n be Nat;
     assume A5: E.n <> {}; then
     consider x be object such that
A6:   x in E.n by XBOOLE_0:def 1;
A7:  n in dom E by A5,FUNCT_1:def 2; then
     E.n in rng E by FUNCT_1:3; then
     x in dom f by A3,A6,TARSKI:def 4; then
A8:  f.x in rng f by FUNCT_1:3;
     rng f is Subset of REAL by A1,MESFUNC2:def 4,32; then
     f.x in REAL by A8;
     hence b.n in REAL by A2,A6,A7,MESFUNC3:def 1;
    end;
    defpred P1[Nat,object] means
     (E.$1 <> {} implies $2 = b.$1) & (E.$1 = {} implies $2 = 0);
A9: for n be Nat st n in Seg len E ex a be Element of ExtREAL st P1[n,a]
    proof
     let n be Nat;
     assume n in Seg len E;
     per cases;
     suppose A10: E.n <> {};
      take a = b.n;
      thus P1[n,a] by A10;
     end;
     suppose A11: E.n = {};
      take a = 0.;
      thus P1[n,a] by A11;
     end;
    end;

    consider a be FinSequence of ExtREAL such that
A12: dom a = Seg len E & for n be Nat st n in Seg len E holds P1[n,a.n]
      from FINSEQ_1:sch 5(A9);

    defpred P2[Nat,object] means $2 = a.$1;

A13:for n be Nat st n in Seg len E ex r be Element of REAL st P2[n,r]
    proof
     let n be Nat;
     assume A14: n in Seg len E;
     per cases;
     suppose A15: E.n <> {}; then
      a.n = b.n by A12,A14; then
      reconsider r = a.n as Element of REAL by A4,A15;
      take r;
      thus P2[n,r];
     end;
     suppose E.n = {}; then
      a.n = 0 by A12,A14; then
      reconsider r = a.n as Element of REAL by XREAL_0:def 1;
      take r;
      thus P2[n,r];
     end;
    end;

    consider r be FinSequence of REAL such that
A16: dom r = Seg len E & for n be Nat st n in Seg len E holds P2[n,r.n]
      from FINSEQ_1:sch 5(A13);

    take E,a,r;

A17:dom a = dom E by A12,FINSEQ_1:def 3;

A18:for n be Nat st n in dom E for x be object st x in E.n holds f.x = a.n
    proof
     let n be Nat;
     assume A19: n in dom E; then
A20: n in Seg len E by FINSEQ_1:def 3;
     let x be object;
     assume A21: x in E.n; then
     f.x = b.n by A2,A19,MESFUNC3:def 1;
     hence f.x = a.n by A12,A20,A21;
    end;
    hence E,a are_Re-presentation_of f by A3,A17,MESFUNC3:def 1;

    thus for n be Nat holds a.n = r.n & f|(E.n) = (chi(r.n,E.n,X))|(E.n) &
     (E.n = {} implies r.n = 0)
    proof
     let n be Nat;
     per cases;
     suppose A22: E.n <> {}; then
A23:  n in dom E by FUNCT_1:def 2; then
      n in Seg len E by FINSEQ_1:def 3;
      hence A24:  a.n = r.n by A16;

      E.n c= dom f by A3,A23,FUNCT_1:3,ZFMISC_1:74; then
A27:  dom (f|(E.n)) = E.n by RELAT_1:62;

      dom(chi(r.n,E.n,X)) = X by FUNCT_2:def 1; then
A28:  dom((chi(r.n,E.n,X))|(E.n)) = dom(f|(E.n)) by A27,RELAT_1:62;

      for x be Element of X st x in dom (f|(E.n)) holds
       (f|(E.n)).x = ( (chi(r.n,E.n,X))|(E.n) ).x
      proof
       let x be Element of X;
       assume A29: x in dom(f|(E.n)); then
       ( (chi(r.n,E.n,X))|(E.n) ).x = chi(r.n,E.n,X).x by A27,FUNCT_1:49
        .= a.n by A24,A27,A29,Def1
        .= f.x by A18,A23,A27,A29;
       hence (f|(E.n)).x = ( (chi(r.n,E.n,X))|(E.n) ).x by A29,FUNCT_1:47;
      end;
      hence thesis by A22,A28,PARTFUN1:5;
     end;
     suppose z1: E.n = {};
      now per cases;
       suppose n in dom E; then
A30:    n in Seg len E by FINSEQ_1:def 3;
        hence a.n = 0 by A12,z1;
        hence r.n = 0 by A30,A16;
       end;
       suppose A31: not n in dom E;
        hence a.n = 0 by A17,FUNCT_1:def 2;
        not n in Seg len E by A31,FINSEQ_1:def 3;
        hence r.n = 0 by A16,FUNCT_1:def 2;
       end;
      end;
      hence thesis by z1;
     end;
    end;
end;

definition
 let F be FinSequence-like Function;
 redefine attr F is disjoint_valued means :Def2:  :: redefines disjoint_valued (PROB_2, definition)
  for m,n be Nat st m in dom F & n in dom F & m <> n holds F.m misses F.n;
 compatibility
 proof
  thus F is disjoint_valued implies
   (for m,n be Nat st m in dom F & n in dom F & m <> n holds F.m misses F.n)
     by PROB_2:def 2;
  assume A1: for m,n be Nat st m in dom F & n in dom F & m <> n holds
    F.m misses F.n;
  now let m,n be object;
   assume A2: m <> n;
   per cases;
   suppose not m in dom F or not n in dom F; then
    F.m = {} or F.n = {} by FUNCT_1:def 2;
    hence F.m misses F.n;
   end;
   suppose m in dom F & n in dom F;
    hence F.m misses F.n by A1,A2;
   end;
  end;
  hence F is disjoint_valued by PROB_2:def 2;
 end;
end;

theorem Th6:
for X be non empty set, S be SigmaField of X, E1,E2 be Element of S
 st E1 misses E2 holds <* E1, E2 *> is Finite_Sep_Sequence of S
proof
   let X be non empty set, S be SigmaField of X, E1,E2 be Element of S;
   assume A0: E1 misses E2;
A2:dom <*E1,E2*> = {1,2} by FINSEQ_1:92;
   now let m,n be object;
    assume A3: m <> n;
    per cases;
    suppose m in dom <*E1,E2*> & n in dom <*E1,E2*>; then
     (m = 1 or m = 2) & (n = 1 or n = 2) by A2,TARSKI:def 2; then
     (<*E1,E2*>.m = E1 & <*E1,E2*>.n = E2)
       or (<*E1,E2*>.m = E2 & <*E1,E2*>.n = E1) by A3;
     hence <*E1,E2*>.m misses <*E1,E2*>.n by A0;
    end;
    suppose not m in dom <*E1,E2*> or not n in dom <*E1,E2*>; then
     <*E1,E2*>.m = {} or <*E1,E2*>.n = {} by FUNCT_1:def 2;
     hence <*E1,E2*>.m misses <*E1,E2*>.n;
    end;
   end; then
   <*E1,E2 *> is disjoint_valued;
   hence <*E1,E2*> is Finite_Sep_Sequence of S;
end;

theorem Th7:
for X be non empty set, A1,A2 be Subset of X, r1,r2 be Real holds
 <*chi(r1,A1,X),chi(r2,A2,X)*> is summable FinSequence of Funcs(X,ExtREAL)
proof
   let X be non empty set, A1,A2 be Subset of X, r1,r2 be Real;
   reconsider f1=chi(r1,A1,X), f2=chi(r2,A2,X) as Element of Funcs(X,ExtREAL)
     by FUNCT_2:8;
   reconsider F = <*f1,f2*> as FinSequence of Funcs(X,ExtREAL);
A1:f1 is without+infty without-infty & f2 is without+infty without-infty
     by Th4;
A2:dom F = {1,2} by FINSEQ_1:92;
   now let n be Nat;
    assume n in dom F; then
    n = 1 or n = 2 by A2,TARSKI:def 2;
    hence F.n is without-infty by A1;
   end; then
   F is without_-infty-valued;
   hence <*chi(r1,A1,X),chi(r2,A2,X)*> is
     summable FinSequence of Funcs(X,ExtREAL);
end;

theorem Th8:
for X be non empty set, F be summable FinSequence of Funcs(X,ExtREAL)
 st len F >= 2 holds (Partial_Sums F)/.2 = F/.1 + F/.2
proof
   let X be non empty set, F be summable FinSequence of Funcs(X,ExtREAL);
   assume A1: len F >= 2; then
   1+1 <= len F; then
A3:1 < len F by NAT_1:13; then
A6:1 in dom F & 2 in dom F by A1,FINSEQ_3:25;
   len F = len (Partial_Sums F) by MEASUR11:def 11; then
A5:1 in dom (Partial_Sums F) & 2 in dom(Partial_Sums F)
     by A1,A3,FINSEQ_3:25; then
A4:(Partial_Sums F)/.1 = (Partial_Sums F).1 by PARTFUN1:def 6
     .= F.1 by MEASUR11:def 11 .= F/.1 by A6,PARTFUN1:def 6;
   (Partial_Sums F).(1+1) = (Partial_Sums F)/.1 + F/.(1+1)
     by A1,NAT_1:13,MEASUR11:def 11;
   hence (Partial_Sums F)/.2 = F/.1 + F/.2 by A4,A5,PARTFUN1:def 6;
end;

theorem Th9:
for X be non empty set, f be Function of X,ExtREAL
 holds f + (X --> 0.) = f
proof
   let X be non empty set, f be Function of X,ExtREAL;
   dom f = X by FUNCT_2:def 1;
   hence thesis by MESFUN11:27;
end;

theorem Th10:
for X be non empty set, F be summable FinSequence of Funcs(X,ExtREAL) holds
   dom F = dom (Partial_Sums F)
 & (for n be Nat st n in dom F holds (Partial_Sums F)/.n = (Partial_Sums F).n)
 & (for n be Nat, x be Element of X st 1 <= n < len F holds
     ((Partial_Sums F)/.(n+1)).x = ((Partial_Sums F)/.n).x + (F/.(n+1)).x)
proof
   let X be non empty set, F be summable FinSequence of Funcs(X,ExtREAL);
   len F = len (Partial_Sums F) by MEASUR11:def 11;
   hence A1: dom F = dom(Partial_Sums F) by FINSEQ_3:29;
   hence for n be Nat st n in dom F holds
     (Partial_Sums F)/.n = (Partial_Sums F).n by PARTFUN1:def 6;
   thus for n be Nat, x be Element of X st 1 <= n < len F holds
     ((Partial_Sums F)/.(n+1)).x = ((Partial_Sums F)/.n).x + (F/.(n+1)).x
   proof
    let n be Nat, x be Element of X;
    assume A3: 1 <= n < len F; then
    1 <= n+1 <= len F by NAT_1:13; then
A4: (Partial_Sums F)/.(n+1) = (Partial_Sums F).(n+1)
      by A1,PARTFUN1:def 6,FINSEQ_3:25
     .= ((Partial_Sums F)/.n) + F/.(n+1) by A3,MEASUR11:def 11;
    dom ((Partial_Sums F)/.(n+1)) = X by FUNCT_2:def 1;
    hence ((Partial_Sums F)/.(n+1)).x = ((Partial_Sums F)/.n).x + (F/.(n+1)).x
      by A4,MESFUNC1:def 3;
   end;
end;

theorem Th11:
for X be non empty set, S be SigmaField of X, f be Function of X,ExtREAL,
 E be Finite_Sep_Sequence of S, F be summable FinSequence of Funcs(X,ExtREAL)
 st dom E = dom F & dom f = union rng E
  & (for n be Nat st n in dom F ex r be Real st F/.n = r(#)chi(E.n,X))
  & f = (Partial_Sums F)/.(len F) holds
  (for x be Element of X, m,n be Nat st
     m in dom F & n in dom F & x in E.m & m <> n holds (F/.n).x = 0) &
  (for x be Element of X, m,n be Nat st
     m in dom F & n in dom F & x in E.m & n < m holds
       ((Partial_Sums F)/.n).x = 0) &
  (for x be Element of X, m,n be Nat st
     m in dom F & n in dom F & x in E.m & n >= m holds
       ((Partial_Sums F)/.n).x = f.x) &
  (for x be Element of X, m be Nat st
     m in dom F & x in E.m holds (F/.m).x = f.x) &
  f is_simple_func_in S
proof
    let X be non empty set, S be SigmaField of X, f be Function of X,ExtREAL,
    E be Finite_Sep_Sequence of S,
    F be summable FinSequence of Funcs(X,ExtREAL);
    assume that
A1:  dom E = dom F and
A2:  dom f = union rng E and
A3:  for n be Nat st n in dom F ex r be Real st F/.n = r(#)chi(E.n,X) and
A4:  f = (Partial_Sums F)/.(len F);

    E <> {} by A2,ZFMISC_1:2; then
    1 <= len E by FINSEQ_1:20; then
    1 <= len F by A1,FINSEQ_3:29; then
A5: len F in dom F by FINSEQ_3:25;

    thus
A6: for x be Element of X, m,n be Nat st
      m in dom F & n in dom F & x in E.m & m <> n holds (F/.n).x = 0
    proof
     let x be Element of X, m,n be Nat;
     assume A7: m in dom F & n in dom F & x in E.m; then
     consider rn be Real such that
A8:   F/.n = rn(#)chi(E.n,X) by A3;

     dom(F/.n) = X by FUNCT_2:def 1; then
A9:  (F/.n).x = rn * chi(E.n,X).x by A8,MESFUNC1:def 6;
     thus m <> n implies (F/.n).x = 0
     proof
      assume m <> n; then
      not x in E.n by A7,XBOOLE_0:3,PROB_2:def 2; then
      chi(E.n,X).x = 0 by FUNCT_3:def 3;
      hence (F/.n).x = 0 by A9;
     end;
    end;

    thus
A10:for x be Element of X, m,n be Nat st
     m in dom F & n in dom F & x in E.m & n < m holds
       ((Partial_Sums F)/.n).x = 0
    proof
     let x be Element of X, m,n be Nat;
     assume A11: m in dom F & n in dom F & x in E.m & n < m;
     defpred P[Nat] means
      $1 in dom F & $1 < m implies ((Partial_Sums F)/.$1).x = 0;

A12: P[0] by FINSEQ_3:25;

A13: for k be Nat st P[k] holds P[k+1]
     proof
      let k be Nat;
      assume A14: P[k];
      assume A15: k+1 in dom F & k+1 < m; then
A16:  (F/.(k+1)).x = 0 by A6,A11;
      per cases;
      suppose A17: k+1 = 1;
       ((Partial_Sums F)/.(k+1)) = (Partial_Sums F).(k+1) by A15,Th10
       .= F.(k+1) by A17,MEASUR11:def 11
       .= F/.(k+1) by A15,PARTFUN1:def 6;
       hence ((Partial_Sums F)/.(k+1)).x = 0 by A6,A11,A15;
      end;
      suppose A18: k+1 <> 1;
       1 <= k+1 <= len F by A15,FINSEQ_3:25; then
       1 < k+1 <= len F by A18,XXREAL_0:1; then
       1 <= k < len F by NAT_1:13; then
       ((Partial_Sums F)/.(k+1)).x = 0 + (F/.(k+1)).x
          by A14,A15,NAT_1:13,FINSEQ_3:25,Th10;
       hence ((Partial_Sums F)/.(k+1)).x = 0 by A16;
      end;
     end;
     for k be Nat holds P[k] from NAT_1:sch 2(A12,A13);
     hence ((Partial_Sums F)/.n).x = 0 by A11;
    end;

    thus
A17:for x be Element of X, m,n be Nat st
     m in dom F & n in dom F & x in E.m & n >= m holds
       ((Partial_Sums F)/.n).x = f.x
    proof
     let x be Element of X, m,n be Nat;
     assume A18: m in dom F & n in dom F & x in E.m & n >= m; then
A24: 1 <= m by FINSEQ_3:25;
     defpred P[Nat] means
      $1 in dom F & $1 >= m implies ((Partial_Sums F)/.$1).x = (F/.m).x;

A19: P[0] by FINSEQ_3:25;
A20: for k be Nat st P[k] holds P[k+1]
     proof
      let k be Nat;
      assume A21: P[k];
      assume A22: k+1 in dom F & k+1 >= m;
      per cases;
      suppose A23: k+1 = 1;
       ((Partial_Sums F)/.(k+1)) = (Partial_Sums F).(k+1) by A22,Th10
       .= F.(k+1) by A23,MEASUR11:def 11
       .= F/.(k+1) by A22,PARTFUN1:def 6;
       hence ((Partial_Sums F)/.(k+1)).x = (F/.m).x by A22,A23,A24,XXREAL_0:1;
      end;
      suppose A25: k+1 <> 1;
       1 <= k+1 <= len F by A22,FINSEQ_3:25; then
       1 < k+1 <= len F by A25,XXREAL_0:1; then
A26:   1 <= k < len F by NAT_1:13; then
A27:   k in dom F by FINSEQ_3:25;
       per cases;
       suppose A28: k+1 = m; then
         k < m by NAT_1:13; then
         ((Partial_Sums F)/.k).x = 0 by A10,A18,A27; then
         ((Partial_Sums F)/.(k+1)).x = 0 + (F/.(k+1)).x by A26,Th10;
         hence ((Partial_Sums F)/.(k+1)).x = (F/.m).x by A28,XXREAL_3:4;
       end;
       suppose A29: k+1 <> m; then
        m < k+1 by A22,XXREAL_0:1; then
        ((Partial_Sums F)/.(k+1)).x
         = (F/.m).x + (F/.(k+1)).x by A21,A26,FINSEQ_3:25,NAT_1:13,Th10
        .= (F/.m).x + 0 by A6,A18,A22,A29;
        hence ((Partial_Sums F)/.(k+1)).x = (F/.m).x by XXREAL_3:4;
       end;
      end;
     end;

A30: for k be Nat holds P[k] from NAT_1:sch 2(A19,A20); then
     ((Partial_Sums F)/.n).x = (F/.m).x by A18;
     hence ((Partial_Sums F)/.n).x = f.x by A4,A5,A18,A30,FINSEQ_3:25;
    end;

    thus
A31:for x be Element of X, m be Nat st
      m in dom F & x in E.m holds (F/.m).x = f.x
    proof
     let x be Element of X, m be Nat;
     assume A32: m in dom F & x in E.m; then
A33: 1 <= m <= len F by FINSEQ_3:25;
A34: ((Partial_Sums F)/.m).x = f.x by A17,A32;

     per cases;
     suppose m = 1; then
      (Partial_Sums F).m = F.m by MEASUR11:def 11; then
      (Partial_Sums F)/.m = F.m by A32,Th10;
      hence (F/.m).x = f.x by A32,A34,PARTFUN1:def 6;
     end;
     suppose m <> 1; then
A35:  m > 1 by A33,XXREAL_0:1;

      reconsider m1 = m-1 as Nat by A33;
A36:  m = m1 + 1; then
A37:  1 <= m1 < len F by A33,A35,NAT_1:13; then
      m1 in dom F & m1 < m by A36,NAT_1:19,FINSEQ_3:25; then
      ((Partial_Sums F)/.m1).x = 0 by A10,A32; then
      f.x = 0 + (F/.(m1+1)).x by A34,A37,Th10;
      hence (F/.m).x = f.x by XXREAL_3:4;
     end;
    end;

A38:for x be Element of X st x in dom f holds |. f.x .| < +infty
    proof
     let x be Element of X;
     assume x in dom f; then
     consider A be set such that
A39:  x in A & A in rng E by A2,TARSKI:def 4;
     consider k be object such that
A40:  k in dom E & A = E.k by A39,FUNCT_1:def 3;
     reconsider k as Nat by A40;

     consider r be Real such that
A41:  F/.k = r(#)chi(E.k,X) by A1,A3,A40;
     dom chi(E.k,X) = X by FUNCT_2:def 1; then
     x in dom chi(E.k,X); then
A42: x in dom (r(#)chi(E.k,X)) by MESFUNC1:def 6;
A43: chi(E.k,X).x = 1 by A39,A40,FUNCT_3:def 3;

     f.x = (r(#)chi(E.k,X)).x by A31,A39,A1,A40,A41; then
     f.x = r * chi(E.k,X).x by A42,MESFUNC1:def 6;
     hence |. f.x .| < +infty by A43,EXTREAL1:41,XREAL_0:def 1;
    end;

    for n be Nat, x,y be Element of X st
     n in dom E & x in E.n & y in E.n holds f.x = f.y
    proof
     let n be Nat, x,y be Element of X;
     assume A44: n in dom E & x in E.n & y in E.n; then
     consider r be Real such that
A45:  F/.n = r(#)chi(E.n,X) by A3,A1;
     dom chi(E.n,X) = X by FUNCT_2:def 1; then
     x in dom chi(E.n,X) & y in dom chi(E.n,X); then
A46: x in dom(r(#)chi(E.n,X)) & y in dom(r(#)chi(E.n,X)) by MESFUNC1:def 6;

A47: chi(E.n,X).x = 1 & chi(E.n,X).y = 1 by A44,FUNCT_3:def 3;
     (F/.n).x = r * chi(E.n,X).x & (F/.n).y = r * chi(E.n,X).y
       by A45,A46,MESFUNC1:def 6; then
     (F/.n).x = r & (F/.n).y = r by A47,XXREAL_3:81; then
     f.x = r & f.y = r by A1,A31,A44;
     hence thesis;
    end;
    hence f is_simple_func_in S by A2,A38,MESFUNC2:def 1,def 4;
end;

theorem Th12:
for X be non empty set, S be SigmaField of X,
 E be Element of S holds chi(E,X) is_simple_func_in S
proof
   let X be non empty set, S be SigmaField of X,
   E be Element of S;
   X in S by MEASURE1:7; then
   reconsider E2 = X \ E as Element of S by MEASURE1:6;
   E misses E2 by XBOOLE_1:79; then
   reconsider EE = <*E,E2*> as Finite_Sep_Sequence of S by Th6;

   1(#)chi(E,X) = chi(1,E,X) & 0(#)chi(E2,X) = chi(0,E2,X) by Th1; then
   reconsider F = <*1(#)chi(E,X),0(#)chi(E2,X)*> as
     summable FinSequence of Funcs(X,ExtREAL) by Th7;
A1:dom EE = {1,2} & dom F = {1,2} by FINSEQ_1:92;

   rng EE = rng <*E*> \/ rng <*E2*> by FINSEQ_1:31; then
   rng EE = {E} \/ rng <*E2*> by FINSEQ_1:38; then
   rng EE = {E} \/ {E2} by FINSEQ_1:38; then
   rng EE = {E,E2} by ENUMSET1:1; then
   union rng EE = E \/ E2 by ZFMISC_1:75; then
   union rng EE = E \/ X by XBOOLE_1:39; then
   union rng EE = X by XBOOLE_1:12; then
A2:dom chi(E,X) = union rng EE by FUNCT_2:def 1;

A3:for n be Nat st n in dom F ex r be Real st F/.n = r(#)chi(EE.n,X)
   proof
    let n be Nat;
    assume A4: n in dom F;
    per cases by A1,A4,TARSKI:def 2;
    suppose n = 1; then
     F.n = 1(#)chi(E,X) & EE.n = E;
     hence ex r be Real st F/.n = r(#)chi(EE.n,X) by A4,PARTFUN1:def 6;
    end;
    suppose n = 2; then
     F.n = 0(#)chi(E2,X) & EE.n = E2;
     hence ex r be Real st F/.n = r(#)chi(EE.n,X) by A4,PARTFUN1:def 6;
    end;
   end;

   1 in dom F & 2 in dom F by A1,TARSKI:def 2; then
   F/.1 = F.1 & F/.2 = F.2 by PARTFUN1:def 6; then
   F/.1 = 1(#)chi(E,X) & F/.2 = 0(#)chi(E2,X); then
A4:F/.1 = chi(E,X) & F/.2 = X --> 0 by MESFUNC2:1,MESFUN11:22;
   len F = 2 by FINSEQ_1:44; then
   (Partial_Sums F)/.(len F) = F/.1 + F/.2 by Th8; then
   (Partial_Sums F)/.(len F) = chi(E,X) by A4,Th9;
   hence chi(E,X) is_simple_func_in S by A1,A2,A3,Th11;
end;

theorem Th13:
for X be non empty set, S be SigmaField of X,
 A,B be Element of S, er be ExtReal holds
   chi(er,A,X) is B-measurable
proof
   let X be non empty set, S be SigmaField of X,
   A,B be Element of S, er be ExtReal;
a1:Xchi(A,X) is B-measurable by MEASUR10:32;
a2:dom Xchi(A,X) = X by FUNCT_2:def 1;
   per cases;
   suppose er = +infty;
    hence chi(er,A,X) is B-measurable by a1,Th2;
   end;
   suppose er = -infty; then
W:  chi(er,A,X) = -Xchi(A,X) by Th2;
    Xchi(A,X) is B-measurable by MEASUR10:32; then
    -Xchi(A,X) is B-measurable by a2,MEASUR11:63;
    hence chi(er,A,X) is B-measurable by W;
   end;
   suppose er <> +infty & er <> -infty; then
    er in REAL by XXREAL_0:14; then
    reconsider r = er as Real;
a3: chi(er,A,X) = r(#)chi(A,X) by Th1;
    dom chi(A,X) = X by FUNCT_3:def 3;
    hence chi(er,A,X) is B-measurable by a3,MESFUNC1:37,MESFUNC2:29;
   end;
end;

theorem Th14:
for X be set, A1,A2 be Subset of X, er be ExtReal holds
 chi(er,A1,X)|A2 = chi(er,A1/\A2,X)|A2
proof
   let X be set, A1,A2 be Subset of X, er be ExtReal;
a1:dom(chi(er,A1,X)|A2) = dom chi(er,A1,X) /\ A2 by RELAT_1:61
    .= X /\ A2 by FUNCT_2:def 1;
a2:dom(chi(er,A1/\A2,X)|A2) = dom chi(er,A1/\A2,X) /\ A2 by RELAT_1:61
    .= dom(chi(er,A1,X)|A2) by a1,FUNCT_2:def 1;
   now let x be Element of X;
    assume b1: x in dom(chi(er,A1,X)|A2); then
a3: x in X & x in A2 by a1,XBOOLE_0:def 4; then
a4: (chi(er,A1,X)|A2).x = chi(er,A1,X).x
  & (chi(er,A1/\A2,X)|A2).x = chi(er,A1/\A2,X).x by FUNCT_1:49;
    per cases;
    suppose a5: x in A1; then
a6:  (chi(er,A1,X)|A2).x = er by a4,Def1;
     x in A1 /\ A2 by a3,a5,XBOOLE_0:def 4;
     hence (chi(er,A1/\A2,X)|A2).x = (chi(er,A1,X)|A2).x by a4,a6,Def1;
    end;
    suppose a7: not x in A1; then
a8:  (chi(er,A1,X)|A2).x = 0 by a4,Def1,b1;
     not x in A1 /\ A2 by a7,XBOOLE_0:def 4;
     hence (chi(er,A1/\A2,X)|A2).x = (chi(er,A1,X)|A2).x
       by b1,a4,a8,Def1;
    end;
   end;
   hence chi(er,A1,X)|A2 = chi(er,A1/\A2,X)|A2 by a2,PARTFUN1:5;
end;

theorem Th15:
for X be non empty set, S be SigmaField of X,
 A,B,C be Element of S, er be ExtReal st C c= B holds
   chi(er,A,X)|B is C-measurable
proof
   let X be non empty set, S be SigmaField of X,
   A,B,C be Element of S, er be ExtReal;
   assume a1: C c= B;
   dom chi(er,A,X) = X by FUNCT_2:def 1; then
B: B = dom chi(er,A,X) /\ B by XBOOLE_1:28;
   chi(er,A,X) is B-measurable by Th13; then
   chi(er,A,X)|B is B-measurable by MESFUNC5:42,B;
   hence thesis by a1,MESFUNC1:30;
end;

theorem Th16:
for X be set, A1,A2 be Subset of X, er be ExtReal, x be object st A1 misses A2
 holds (chi(er,A1,X)|A2).x = 0
proof
   let X be set, A1,A2 be Subset of X, er be ExtReal, x be object;
   assume a1: A1 misses A2;
   per cases;
   suppose a2: x in dom(chi(er,A1,X)|A2); then
    x in dom chi(er,A1,X) /\ A2 by RELAT_1:61; then
    x in X & x in A2 by XBOOLE_0:def 4; then
    not x in A1 by a1,XBOOLE_0:3; then
    chi(er,A1,X).x = 0 by a2,Def1;
    hence (chi(er,A1,X)|A2).x = 0 by a2,FUNCT_1:47;
   end;
   suppose not x in dom(chi(er,A1,X)|A2);
    hence (chi(er,A1,X)|A2).x = 0 by FUNCT_1:def 2;
   end;
end;

theorem Th17:
for X be set, A be Subset of X, er be ExtReal holds
  (er >= 0 implies chi(er,A,X) is nonnegative)
& (er <= 0 implies chi(er,A,X) is nonpositive)
proof
   let X be set, A be Subset of X, er be ExtReal;
   hereby assume a1: er >= 0;
    now let x be object;
     assume a2: x in dom chi(er,A,X);
     x in A implies chi(er,A,X).x >= 0 by a1,Def1;
     hence chi(er,A,X).x >= 0 by a2,Def1;
    end;
    hence chi(er,A,X) is nonnegative by SUPINF_2:52;
   end;
   assume a3: er <= 0;
   now let x be set;
    assume a4: x in dom chi(er,A,X);
    x in A implies chi(er,A,X).x <= 0 by a3,Def1;
    hence chi(er,A,X).x <= 0 by a4,Def1;
   end;
   hence chi(er,A,X) is nonpositive by MESFUNC5:9;
end;

theorem Th18:
for A,X be set, B be Subset of X holds dom(chi(A,X)|B) = B
proof
   let A,X be set, B be Subset of X;
   dom(chi(A,X)|B) = dom chi(A,X) /\ B by RELAT_1:61
    .= X /\ B by FUNCT_2:def 1;
   hence thesis by XBOOLE_1:28;
end;

begin :: Some properties of integration

theorem Th19:
for X be non empty set, S be SigmaField of X, f be PartFunc of X,ExtREAL
 st f is empty holds f is_simple_func_in S
proof
   let X be non empty set, S be SigmaField of X, f be PartFunc of X,ExtREAL;
   reconsider EMP = {} as Element of S by MEASURE1:7;
   reconsider F = <*EMP*> as Finite_Sep_Sequence of S;
   assume A1: f is empty; then
   dom f = {} & rng F = {EMP} by FINSEQ_1:38; then
A2:dom f = union rng F by ZFMISC_1:25;
   for n be Nat, x,y be Element of X st n in dom F & x in F.n & y in F.n holds
    f.x = f.y
   proof
    let n be Nat, x,y be Element of X;
    assume A3: n in dom F & x in F.n & y in F.n; then
    n in {1} by FINSEQ_1:2,38; then
    n = 1 by TARSKI:def 1;
    hence f.x = f.y by A3;
   end;
   hence f is_simple_func_in S by A1,A2,MESFUNC2:def 4;
end;

theorem Th20:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E1,E2 be Element of S holds Integral(M,(chi(E1,X))|E2) = M.(E1/\ E2)
proof
   let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
   E1,E2 be Element of S;
   reconsider XX = X as Element of S by MEASURE1:7;
A1:E2 = (E1 /\ E2) \/ (E2 \ E1) by XBOOLE_1:51;
   set F = E2\E1;
A2:dom((chi(E1,X))|(E1/\E2)) = dom(chi(E1,X)) /\ (E1/\E2) by RELAT_1:61
    .= X /\ (E1/\E2) by FUNCT_3:def 3;
A3:dom(chi(E1/\E2,X)|(E1/\E2)) = dom(chi(E1/\E2,X)) /\ (E1/\E2) by RELAT_1:61
    .= X /\ (E1/\E2) by FUNCT_3:def 3;
   now
    let x be Element of X;
    assume
A4: x in dom((chi(E1,X))|(E1/\E2)); then
A5: (chi(E1/\E2,X)|(E1/\E2)).x = (chi(E1/\E2,X)).x by A2,A3,FUNCT_1:47;
A6: x in E1 /\ E2 by A2,A4,XBOOLE_0:def 4; then
A7: x in E1 by XBOOLE_0:def 4;
    ((chi(E1,X))|(E1/\E2)).x = (chi(E1,X)).x by A4,FUNCT_1:47
      .= 1 by A7,FUNCT_3:def 3;
    hence ((chi(E1,X))|(E1/\E2)).x = (chi(E1/\E2,X)|(E1/\E2)).x
      by A6,A5,FUNCT_3:def 3;
   end; then
   (chi(E1,X))|(E1/\E2) = chi(E1/\E2,X)|(E1/\E2) by A2,A3,PARTFUN1:5; then
A9:Integral(M,(chi(E1,X))|(E1/\E2)) = M.(E1/\E2) by MESFUNC9:14;
A10:XX = dom chi(E1,X) by FUNCT_3:def 3; then
A11:F = dom((chi(E1,X))|(E2\E1)) by RELAT_1:62; then
   F = dom(chi(E1,X)) /\ F by RELAT_1:61; then
A12: (chi(E1,X))|(E2\E1) is F-measurable by MESFUNC2:29,MESFUNC5:42;

   now
    let x be Element of X;
    assume
A15: x in dom ((chi(E1,X))|(E2\E1));
    E2 \ E1 c= X \ E1 by XBOOLE_1:33;
    then (chi(E1,X)).x = 0 by A11,A15,FUNCT_3:37;
    hence 0= ((chi(E1,X))|(E2\E1)).x by A15,FUNCT_1:47;
   end;
   then integral+(M,(chi(E1,X))|(E2\E1)) = 0 by A11,A12,MESFUNC5:87;
   then
A16: Integral(M,(chi(E1,X))|(E2\E1)) = 0. by A11,A12,MESFUNC5:15,88;
   chi(E1,X) is XX-measurable by MESFUNC2:29;
   then Integral(M,(chi(E1,X))|E2) = Integral(M,(chi(E1,X))|(E1/\E2)) +
   Integral(M,(chi(E1,X))|(E2\E1)) by A10,A1,MESFUNC5:91,XBOOLE_1:89;
   hence thesis by A9,A16,XXREAL_3:4;
end;

theorem Th21:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E1,E2 be Element of S, f,g be PartFunc of X,ExtREAL st
 E1 = dom f & f is nonnegative & f is E1-measurable &
 E2 = dom g & g is nonnegative & g is E2-measurable
 holds
  Integral(M,f+g) = Integral(M,f|dom(f+g)) + Integral(M,g|dom(f+g))
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    A,B be Element of S, f,g be PartFunc of X,ExtREAL;
    assume that
A1:  A = dom f and
A2:  f is nonnegative and
A3:  f is A-measurable and
A4:  B = dom g and
A5:  g is nonnegative and
A6:  g is B-measurable;

    set f1 = f|(A/\B), g1 = g|(A/\B);

A7: dom(f+g) = A /\ B by A1,A2,A4,A5,MESFUNC5:22;

A8: dom f1 = A /\ B & dom g1 = A /\ B
  & dom f /\ (A /\ B) = A /\ B & dom g /\ (A /\ B) = A /\ B
      by A1,A4,XBOOLE_1:17,28,RELAT_1:62;

A9: f is (A/\B)-measurable & g is (A/\B)-measurable
      by A3,A6,XBOOLE_1:17,MESFUNC1:30;

A10:f+g is nonnegative by A2,A5,MESFUNC5:22;

    f1 is nonnegative & g1 is nonnegative by A2,A5,MESFUNC5:15; then
A11:Integral(M,f1) = integral+(M,f1)
  & Integral(M,g1) = integral+(M,g1) by A8,A9,MESFUNC5:42,88;
    ex C be Element of S st C = dom(f+g)
   & integral+(M,f+g) = integral+(M,f|C) + integral+(M,g|C)
      by A1,A2,A3,A4,A5,A6,MESFUNC5:78;
    hence thesis by A2,A5,A7,A9,A10,A11,MESFUNC5:31,88;
end;

theorem Th22:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E1,E2 be Element of S, f,g be PartFunc of X,ExtREAL st
 E1 = dom f & f is nonpositive & f is E1-measurable &
 E2 = dom g & g is nonpositive & g is E2-measurable
 holds
  Integral(M,f+g) = Integral(M,f|dom(f+g)) + Integral(M,g|dom(f+g))
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    A,B be Element of S, f,g be PartFunc of X,ExtREAL;
    assume that
A1:  A = dom f and
A2:  f is nonpositive and
A3:  f is A-measurable and
A4:  B = dom g and
A5:  g is nonpositive and
A6:  g is B-measurable;

    reconsider f1 = -f as nonnegative PartFunc of X,ExtREAL by A2;
    reconsider g1 = -g as nonnegative PartFunc of X,ExtREAL by A5;

A7: f1+g1 = -(f+g) by MEASUR11:64; then
A13: f+g = -(f1+g1) by MESFUN11:36;

A8: dom f1 = A & dom g1 = B by A1,A4,MESFUNC1:def 7; then
A9: dom(f1+g1) = A /\ B by MESFUNC5:22; then
A10:dom(f+g) = A /\ B by A7,MESFUNC1:def 7; then
A11:dom(f|dom(f+g)) = A /\ B & dom(g|dom(f+g)) = A /\ B
      by A1,A4,XBOOLE_1:17,RELAT_1:62;

A12:dom f /\ (A /\ B) = A /\ B & dom g /\ (A /\ B) = A /\ B
      by A1,A4,XBOOLE_1:17,28;

A14:f is (A/\B)-measurable & g is (A/\B)-measurable
      by A3,A6,XBOOLE_1:17,MESFUNC1:30; then
A15:f|dom(f+g) is (A/\B)-measurable
  & g|dom(f+g) is (A/\B)-measurable by A10,A12,MESFUNC5:42;
A16:f|dom(f+g) is nonpositive & g|dom(f+g) is nonpositive by A2,A5,MESFUN11:1;
    f1|dom(f1+g1) = -(f|dom(f+g)) & g1|dom(f1+g1) = -(g|dom(f+g))
     by A9,A10,MESFUN11:3; then
A17:Integral(M,f|dom(f+g)) = - Integral(M,f1|dom(f1+g1))
  & Integral(M,g|dom(f+g)) = - Integral(M,g1|dom(f1+g1))
       by A11,A15,A16,MESFUN11:57;
    f+g = (-1)(#)(f1+g1) & f1+g1 is nonnegative
      by A13,MESFUNC2:9,MESFUNC5:19; then
A18:f+g is nonpositive by MESFUNC5:20;
    f+g is (A/\B)-measurable by A2,A5,A10,A14,MEASUR11:65; then
A19:Integral(M,f+g) = -Integral(M,f1+g1) by A7,A10,A18,MESFUN11:57;
    f1 is A-measurable & g1 is B-measurable
      by A1,A3,A4,A6,MEASUR11:63; then
    Integral(M,f1+g1) = Integral(M,f1|dom(f1+g1)) + Integral(M,g1|dom(f1+g1))
      by A8,Th21;
    hence thesis by A17,A19,XXREAL_3:9;
end;

theorem
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E1,E2 be Element of S, f,g be PartFunc of X,ExtREAL st
 E1 = dom f & f is nonnegative & f is E1-measurable &
 E2 = dom g & g is nonpositive & g is E2-measurable
 holds
  Integral(M,f-g) = Integral(M,f|dom(f-g)) - Integral(M,g|dom(f-g))
& Integral(M,g-f) = Integral(M,g|dom(g-f)) - Integral(M,f|dom(g-f))
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    A,B be Element of S, f,g be PartFunc of X,ExtREAL;
    assume that
A1:  A = dom f and
A2:  f is nonnegative and
A3:  f is A-measurable and
A4:  B = dom g and
A5:  g is nonpositive and
A6:  g is B-measurable;

    reconsider g1 = -g as nonnegative PartFunc of X,ExtREAL by A5;

A7: B = dom g1 by A4,MESFUNC1:def 7;
A8: g1 is B-measurable by A4,A6,MEASUR11:63;
A9: f is (A/\B)-measurable & g is (A/\B)-measurable
      by A3,A6,XBOOLE_1:17,MESFUNC1:30;
A10:dom(f-g) = A/\B by A1,A2,A4,A5,MESFUNC5:17; then
A11:A/\B = dom(g|dom(f-g)) by A4,XBOOLE_1:17,RELAT_1:62; then
    A/\B = dom g /\ dom(f-g) by RELAT_1:61; then
A12:g|dom(f-g) is (A/\B)-measurable by A9,A10,MESFUNC5:42;
    f+g1 = f-g by MESFUNC2:8; then
A14:Integral(M,f-g) = Integral(M,f|dom(f-g)) + Integral(M,g1|dom(f-g))
      by A1,A2,A3,A7,A8,Th21;
A15:g|dom(f-g) is nonpositive by A5,MESFUN11:1;
    g1|dom(f-g) = -(g|dom(f-g)) by MESFUN11:3; then
    Integral(M,g|dom(f-g)) = -Integral(M,g1|dom(f-g))
      by A12,A11,A15,MESFUN11:57; then
    -Integral(M,g|dom(f-g)) = Integral(M,g1|dom(f-g));
    hence
A20: Integral(M,f-g) = Integral(M,f|dom(f-g)) - Integral(M,g|dom(f-g))
      by A14,XXREAL_3:def 4;
A16:g-f = -(f-g) by MEASUR11:64; then
A17:dom(g-f) = A/\B by A10,MESFUNC1:def 7;
    f-g is (A/\B)-measurable by A2,A5,A9,A10,MEASUR11:67; then
    Integral(M,g-f) = -Integral(M,f-g) by A10,A16,MESFUN11:52;
    hence Integral(M,g-f) = Integral(M,g|dom(g-f)) - Integral(M,f|dom(g-f))
      by A20,A17,A10,XXREAL_3:26;
end;

Lm1:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E be Element of S, f be PartFunc of X,ExtREAL, r be Real st
 E = dom f & f is nonnegative & f is E-measurable holds
  Integral(M,r(#)f) = r * Integral(M,f)
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    E be Element of S, f be PartFunc of X,ExtREAL, r be Real;
    assume that
A1:  E = dom f and
A2:  f is nonnegative and
A3:  f is E-measurable;

A7: dom(r(#)f) = E by A1,MESFUNC1:def 6;
A8: r(#)f is E-measurable by A1,A3,MESFUNC1:37;
    per cases;
    suppose A9: r >= 0;
     Integral(M,r(#)f)
       = integral+(M,r(#)f) by A2,A7,A8,A9,MESFUNC5:20,88
      .= r * integral+(M,f) by A1,A3,A9,A2,MESFUNC5:86
      .= r * Integral(M,f) by A1,A3,A2,MESFUNC5:88;
      hence Integral(M,r(#)f) = r * Integral(M,f);
    end;
    suppose A10: r < 0;
     set r2 = -r;

     r = (-1)*r2; then
     r(#)f = (-1)(#)(r2(#)f) by MESFUN11:35; then
A11:  r(#)f = -(r2(#)f) by MESFUNC2:9;

A12:  r(#)f is nonpositive by A2,A10,MESFUNC5:20;

     Integral(M,r(#)f)
       = -integral+(M,-(r(#)f)) by A12,A7,A8,MESFUN11:57
      .= -integral+(M,r2(#)f) by A11,MESFUN11:36
      .= -(r2*integral+(M,f))
         by A1,A3,A10,A2,MESFUNC5:86
      .= (-r2) * integral+(M,f) by XXREAL_3:92
      .= r * Integral(M,f) by A1,A3,A2,MESFUNC5:88;
     hence Integral(M,r(#)f) = r * Integral(M,f);
    end;
end;

Lm2:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E be Element of S, f be PartFunc of X,ExtREAL, r be Real st
 E = dom f & f is nonpositive & f is E-measurable holds
  Integral(M,r(#)f) = r * Integral(M,f)
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    E be Element of S, f be PartFunc of X,ExtREAL, r be Real;
    assume that
A1:  E = dom f and
A2:  f is nonpositive and
A3:  f is E-measurable;

    set f2 = -f;
A4: dom f2 = E by A1,MESFUNC1:def 7; then
A5: E = dom(r(#)f2) by MESFUNC1:def 6;
A6: f2 is E-measurable by A1,A3,MEASUR11:63;

    f = -f2 by MESFUN11:36; then
    f = (-1)(#)f2 by MESFUNC2:9; then
    r(#)f = (r*(-1))(#)f2 by MESFUN11:35; then
    r(#)f = (-1)(#)(r(#)f2) by MESFUN11:35; then
    r(#)f = -(r(#)f2) by MESFUNC2:9; then
    Integral(M,r(#)f)
      = -Integral(M,r(#)f2) by A5,A6,A4,MESFUNC1:37,MESFUN11:52
     .= (-1) * Integral(M,r(#)f2) by XXREAL_3:91
     .= (-1) * (r * Integral(M,f2)) by A2,A4,Lm1,A1,A3,MEASUR11:63
     .= ((-1)*r) * Integral(M,f2) by XXREAL_3:66
     .= (-r) * (-Integral(M,f)) by A1,A3,MESFUN11:52
     .= (-r) * ((-1) * Integral(M,f)) by XXREAL_3:91
     .= ((-r) * (-1)) * Integral(M,f) by XXREAL_3:66;
    hence Integral(M,r(#)f) = r * Integral(M,f);
end;

theorem
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E be Element of S, f be PartFunc of X,ExtREAL, r be Real st
 E = dom f & (f is nonpositive or f is nonnegative) & f is E-measurable
  holds Integral(M,r(#)f) = r * Integral(M,f) by Lm1,Lm2;

begin :: Sections of partial function

theorem Th25:
for X,Y be non empty set, A be Element of bool [:X,Y:], x,y be set
 st x in X & y in Y holds
  ([x,y] in A iff x in Y-section(A,y)) & ([x,y] in A iff y in X-section(A,x))
proof
   let X,Y be non empty set, E be Element of bool [:X,Y:], x,y be set;
   assume A1: x in X & y in Y;
A2:now assume y in X-section(E,x); then
    y in {y where y is Element of Y: [x,y] in E} by MEASUR11:def 4; then
    ex y1 be Element of Y st y = y1 & [x,y1] in E;
    hence [x,y] in E;
   end;
A3:now assume [x,y] in E; then
    y in {y where y is Element of Y: [x,y] in E} by A1;
    hence y in X-section(E,x) by MEASUR11:def 4;
   end;
A4:now assume x in Y-section(E,y); then
    x in {x where x is Element of X: [x,y] in E} by MEASUR11:def 5; then
    ex x1 be Element of X st x = x1 & [x1,y] in E;
    hence [x,y] in E;
   end;
   now assume [x,y] in E; then
    x in {x where x is Element of X: [x,y] in E} by A1;
    hence x in Y-section(E,y) by MEASUR11:def 5;
   end;
   hence thesis by A2,A3,A4;
end;

definition
  let X1,X2 be non empty set;
  let Y be set;
  let f be PartFunc of [:X1,X2:],Y;
  let x be Element of X1;
  func ProjPMap1(f,x) -> PartFunc of X2,Y means :Def3:
  dom it = X-section(dom f,x) &
  for y be Element of X2 st [x,y] in dom f holds it.y = f.(x,y);
existence
proof
   deffunc F(object) = f.(x,$1);
   defpred P[object] means $1 in X-section(dom f,x);
A1:now let d be object;
    assume d in X-section(dom f,x); then
    d in {y where y is Element of X2: [x,y] in dom f} by MEASUR11:def 4; then
    ex d1 be Element of X2 st d = d1 & [x,d1] in dom f;
    hence d in X2 & [x,d] in dom f;
   end;

A3:for d be object st P[d] holds F(d) in Y by A1,PARTFUN1:4;

   consider P be PartFunc of X2,Y such that
A4: (for x be object holds x in dom P iff x in X2 & P[x])
  & for x be object st x in dom P holds P.x = F(x) from PARTFUN1:sch 3(A3);

   take P;

A5:dom P c= X-section(dom f,x) by A4;
   X-section(dom f,x) c= dom P by A4;
   hence dom P = X-section(dom f,x) by A5;

   thus for d be Element of X2 st [x,d] in dom f holds P.d = f.(x,d)
   proof
    let d be Element of X2;
    assume [x,d] in dom f; then
    d in {y where y is Element of X2: [x,y] in dom f}; then
    d in X-section(dom f,x) by MEASUR11:def 4;
    hence P.d = f.(x,d) by A4;
   end;
end;
uniqueness
proof
   let P1,P2 be PartFunc of X2,Y;
   assume that
A1: dom P1 = X-section(dom f,x) and
A2: for d be Element of X2 st [x,d] in dom f holds P1.d = f.(x,d) and
A3: dom P2 = X-section(dom f,x) and
A4: for d be Element of X2 st [x,d] in dom f holds P2.d = f.(x,d);

A5:now let d be object;
    assume d in X-section(dom f,x); then
    d in {y where y is Element of X2: [x,y] in dom f} by MEASUR11:def 4; then
    ex d1 be Element of X2 st d = d1 & [x,d1] in dom f;
    hence d in X2 & [x,d] in dom f;
   end;

   now let d be Element of X2;
    assume d in dom P1; then
    P1.d = f.(x,d) & P2.d = f.(x,d) by A1,A2,A4,A5;
    hence P1.d = P2.d;
   end;
   hence P1 = P2 by A1,A3,PARTFUN1:5;
end;
end;

definition
  let X1,X2 be non empty set;
  let Y be set;
  let f be PartFunc of [:X1,X2:],Y;
  let y be Element of X2;
  func ProjPMap2(f,y) -> PartFunc of X1,Y means :Def4:
 dom it = Y-section(dom f,y) &
 for x be Element of X1 st [x,y] in dom f holds it.x = f.(x,y);
existence
proof
   deffunc F(object) = f.($1,y);
   defpred P[object] means $1 in Y-section(dom f,y);

A1:now let c be object;
    assume c in Y-section(dom f,y); then
    c in {x where x is Element of X1: [x,y] in dom f} by MEASUR11:def 5; then
    ex c1 be Element of X1 st c = c1 & [c1,y] in dom f;
    hence c in X1 & [c,y] in dom f;
   end;

A3:for c be object st P[c] holds F(c) in Y by A1,PARTFUN1:4;

   consider P be PartFunc of X1,Y such that
A4: (for x be object holds x in dom P iff x in X1 & P[x])
  & for x be object st x in dom P holds P.x = F(x) from PARTFUN1:sch 3(A3);

   take P;

A5:dom P c= Y-section(dom f,y) by A4;
   Y-section(dom f,y) c= dom P by A4;
   hence dom P = Y-section(dom f,y) by A5;

   thus for c be Element of X1 st [c,y] in dom f holds P.c = f.(c,y)
   proof
    let c be Element of X1;
    assume [c,y] in dom f; then
    c in {x where x is Element of X1: [x,y] in dom f}; then
    c in Y-section(dom f,y) by MEASUR11:def 5;
    hence P.c = f.(c,y) by A4;
   end;
end;
uniqueness
proof
   let P1,P2 be PartFunc of X1,Y;
   assume that
A1: dom P1 = Y-section(dom f,y) and
A2: for c be Element of X1 st [c,y] in dom f holds P1.c = f.(c,y) and
A3: dom P2 = Y-section(dom f,y) and
A4: for c be Element of X1 st [c,y] in dom f holds P2.c = f.(c,y);

A5:now let c be object;
    assume c in Y-section(dom f,y); then
    c in {x where x is Element of X1: [x,y] in dom f} by MEASUR11:def 5; then
    ex c1 be Element of X1 st c = c1 & [c1,y] in dom f;
    hence c in X1 & [c,y] in dom f;
   end;

   now let c be Element of X1;
    assume c in dom P1; then
    P1.c = f.(c,y) & P2.c = f.(c,y) by A1,A2,A4,A5;
    hence P1.c = P2.c;
   end;
   hence P1 = P2 by A1,A3,PARTFUN1:5;
end;
end;

theorem Th26:
for X1,X2 be non empty set, Y be set, f be PartFunc of [:X1,X2:],Y,
 x be Element of X1, y be Element of X2 holds
  ( x in dom ProjPMap2(f,y) implies ProjPMap2(f,y).x = f.(x,y) )
& ( y in dom ProjPMap1(f,x) implies ProjPMap1(f,x).y = f.(x,y) )
proof
   let X1,X2 be non empty set, Y be set, f be PartFunc of [:X1,X2:],Y,
   c be Element of X1, d be Element of X2;
   hereby assume c in dom ProjPMap2(f,d); then
    c in Y-section(dom f,d) by Def4; then
    c in {x where x is Element of X1: [x,d] in dom f} by MEASUR11:def 5; then
    ex x be Element of X1 st c = x & [x,d] in dom f;
    hence ProjPMap2(f,d).c = f.(c,d) by Def4;
   end;
   assume d in dom ProjPMap1(f,c); then
   d in X-section(dom f,c) by Def3; then
   d in {y where y is Element of X2: [c,y] in dom f} by MEASUR11:def 4; then
   ex y be Element of X2 st d=y & [c,y] in dom f;
   hence ProjPMap1(f,c).d = f.(c,d) by Def3;
end;

theorem Th27:
for X1,X2,Y be non empty set, f be Function of [:X1,X2:],Y,
  x be Element of X1, y be Element of X2
  holds ProjPMap1(f,x) = ProjMap1(f,x) & ProjPMap2(f,y) = ProjMap2(f,y)
proof
   let X1,X2,Y be non empty set, f be Function of [:X1,X2:],Y,
   x be Element of X1, y be Element of X2;

   dom f = [:X1,X2:] by FUNCT_2:def 1; then
A1:dom f = [#][:X1,X2:] by SUBSET_1:def 3; then
   X-section(dom f,x) = X2 by MEASUR11:24; then
   dom ProjPMap1(f,x) = X2 by Def3; then
A2:dom ProjPMap1(f,x) = dom ProjMap1(f,x) by FUNCT_2:def 1;

   for y be Element of X2 st y in dom ProjPMap1(f,x) holds
    ProjPMap1(f,x).y = ProjMap1(f,x).y
   proof
    let y be Element of X2;
    assume y in dom ProjPMap1(f,x); then
    ProjPMap1(f,x).y = f.(x,y) by Th26;
    hence ProjPMap1(f,x).y = ProjMap1(f,x).y by MESFUNC9:def 6;
   end;
   hence ProjPMap1(f,x) = ProjMap1(f,x) by A2,PARTFUN1:5;

   Y-section(dom f,y) = X1 by A1,MEASUR11:24; then
   dom ProjPMap2(f,y) = X1 by Def4; then
A3:dom ProjPMap2(f,y) = dom ProjMap2(f,y) by FUNCT_2:def 1;

   for x be Element of X1 st x in dom ProjPMap2(f,y) holds
    ProjPMap2(f,y).x = ProjMap2(f,y).x
   proof
    let x be Element of X1;
    assume x in dom ProjPMap2(f,y); then
    ProjPMap2(f,y).x = f.(x,y) by Th26;
    hence ProjPMap2(f,y).x = ProjMap2(f,y).x by MESFUNC9:def 7;
   end;
   hence ProjPMap2(f,y) = ProjMap2(f,y) by A3,PARTFUN1:5;
end;

theorem
for X,Y,Z be non empty set, f be PartFunc of [:X,Y:],Z,
 x be Element of X, y be Element of Y, A be set holds
  X-section(f"A,x) = ProjPMap1(f,x)"A & Y-section(f"A,y) = ProjPMap2(f,y)"A
proof
    let X,Y,Z be non empty set, f be PartFunc of [:X,Y:],Z,
    x be Element of X, y be Element of Y, A be set;
    reconsider E = f"A as Subset of [:X,Y:];
    now let y be object;
     assume y in X-section(f"A,x); then
     y in {y where y is Element of Y: [x,y] in E} by MEASUR11:def 4; then
     consider y1 be Element of Y such that
A1:   y1 = y & [x,y1] in E;

A2:  [x,y] in dom f & f.[x,y] in A by A1,FUNCT_1:def 7; then
     y in {y where y is Element of Y: [x,y] in dom f} by A1; then
     y in X-section(dom f,x) by MEASUR11:def 4; then
A3:  y in dom(ProjPMap1(f,x)) by Def3;

     ProjPMap1(f,x).y1 = f.(x,y1) by A1,A2,Def3;
     hence y in ProjPMap1(f,x)"A by A1,A2,A3,FUNCT_1:def 7;
    end; then
A4: X-section(f"A,x) c= ProjPMap1(f,x)"A;

    now let y be object;
     assume y in ProjPMap1(f,x)"A; then
A5:  y in dom(ProjPMap1(f,x)) & ProjPMap1(f,x).y in A by FUNCT_1:def 7; then
     y in X-section(dom f,x) by Def3; then
     y in {y where y is Element of Y: [x,y] in dom f} by MEASUR11:def 4; then
     consider y1 be Element of Y such that
A6:   y1 = y & [x,y1] in dom f;

     f.(x,y1) in A by A5,A6,Def3; then
     [x,y1] in f"A by A6,FUNCT_1:def 7; then
     y in {y where y is Element of Y: [x,y] in f"A} by A6;
     hence y in X-section(f"A,x) by MEASUR11:def 4;
    end; then
    ProjPMap1(f,x)"A c= X-section(f"A,x);
    hence X-section(f"A,x) = ProjPMap1(f,x)"A by A4;

    now let x be object;
     assume x in Y-section(f"A,y); then
     x in {x where x is Element of X: [x,y] in E} by MEASUR11:def 5; then
     consider x1 be Element of X such that
A7:   x1 = x & [x1,y] in E;

A8:  [x,y] in dom f & f.[x,y] in A by A7,FUNCT_1:def 7; then
     x in {x where x is Element of X: [x,y] in dom f} by A7; then
     x in Y-section(dom f,y) by MEASUR11:def 5; then
A9:  x in dom(ProjPMap2(f,y)) by Def4;

     ProjPMap2(f,y).x1 = f.(x1,y) by A7,A8,Def4;
     hence x in ProjPMap2(f,y)"A by A7,A8,A9,FUNCT_1:def 7;
    end; then
A10:Y-section(f"A,y) c= ProjPMap2(f,y)"A;

    now let x be object;
     assume x in ProjPMap2(f,y)"A; then
A11: x in dom(ProjPMap2(f,y)) & ProjPMap2(f,y).x in A by FUNCT_1:def 7; then
     x in Y-section(dom f,y) by Def4; then
     x in {x where x is Element of X: [x,y] in dom f} by MEASUR11:def 5; then
     consider x1 be Element of X such that
A12:   x1 = x & [x1,y] in dom f;

     f.(x1,y) in A by A11,A12,Def4; then

     [x1,y] in f"A by A12,FUNCT_1:def 7; then
     x in {x where x is Element of X: [x,y] in f"A} by A12;
     hence x in Y-section(f"A,y) by MEASUR11:def 5;
    end; then
    ProjPMap2(f,y)"A c= Y-section(f"A,y);
    hence Y-section(f"A,y) = ProjPMap2(f,y)"A by A10;
end;

theorem Th29:
for X1,X2 be non empty set, x be Element of X1, y be Element of X2,
 r be Real, f be PartFunc of [:X1,X2:],ExtREAL holds
  ProjPMap1(r(#)f,x) = r(#)ProjPMap1(f,x) &
  ProjPMap2(r(#)f,y) = r(#)ProjPMap2(f,y)
proof
    let X1,X2 be non empty set, x be Element of X1, y be Element of X2,
    r be Real, f be PartFunc of [:X1,X2:],ExtREAL;
    dom(ProjPMap1(r(#)f,x)) = X-section(dom(r(#)f),x)
  & dom(ProjPMap2(r(#)f,y)) = Y-section(dom(r(#)f),y)
      by Def3,Def4; then
A1: dom(ProjPMap1(r(#)f,x)) = X-section(dom f,x)
  & dom(ProjPMap2(r(#)f,y)) = Y-section(dom f,y) by MESFUNC1:def 6;
    dom(r(#)ProjPMap1(f,x)) = dom(ProjPMap1(f,x))
  & dom(r(#)ProjPMap2(f,y)) = dom(ProjPMap2(f,y)) by MESFUNC1:def 6; then
A2: dom(r(#)ProjPMap1(f,x)) = X-section(dom f,x)
  & dom(r(#)ProjPMap2(f,y)) = Y-section(dom f,y) by Def3,Def4;

    now let y be Element of X2;
     assume A3: y in dom(ProjPMap1(r(#)f,x)); then
     y in {y where y is Element of X2: [x,y] in dom f}
       by A1,MEASUR11:def 4; then
A4:  ex y1 be Element of X2 st y1 = y & [x,y1] in dom f; then
A5:  [x,y] in dom(r(#)f) by MESFUNC1:def 6;

A6:  f.(x,y) = f.[x,y];
     (r(#)ProjPMap1(f,x)).y = r * ProjPMap1(f,x).y by A1,A2,A3,MESFUNC1:def 6
      .= r * (f.[x,y]) by A4,A6,Def3
      .= (r(#)f).(x,y) by A5,MESFUNC1:def 6;
     hence ProjPMap1(r(#)f,x).y = (r(#)ProjPMap1(f,x)).y by A5,Def3;
    end;
    hence ProjPMap1(r(#)f,x) = r(#)ProjPMap1(f,x) by A1,A2,PARTFUN1:5;

    now let x be Element of X1;
     assume A7: x in dom(ProjPMap2(r(#)f,y)); then
     x in {x where x is Element of X1: [x,y] in dom f}
       by A1,MEASUR11:def 5; then
A8:  ex x1 be Element of X1 st x1 = x & [x1,y] in dom f; then
A9:  [x,y] in dom(r(#)f) by MESFUNC1:def 6;

A10: f.(x,y) = f.[x,y];
     (r(#)ProjPMap2(f,y)).x = r * ProjPMap2(f,y).x by A1,A2,A7,MESFUNC1:def 6
      .= r * (f.[x,y]) by A8,A10,Def4
      .= (r(#)f).(x,y) by A9,MESFUNC1:def 6;
     hence ProjPMap2(r(#)f,y).x = (r(#)ProjPMap2(f,y)).x by A9,Def4;
    end;
    hence ProjPMap2(r(#)f,y) = r(#)ProjPMap2(f,y) by A1,A2,PARTFUN1:5;
end;

theorem
for X1,X2 be non empty set, f be PartFunc of [:X1,X2:],ExtREAL,
 x be Element of X1, y be Element of X2
 st (for z be Element of [:X1,X2:] st z in dom f holds f.z = 0)
 holds ProjPMap2(f,y).x = 0 & ProjPMap1(f,x).y = 0
proof
   let X1,X2 be non empty set, f be PartFunc of [:X1,X2:],ExtREAL,
   x be Element of X1, y be Element of X2;
   assume
A1: for z be Element of [:X1,X2:] st z in dom f holds f.z = 0;

   now assume x in dom(ProjPMap2(f,y)); then
    x in Y-section(dom f,y) by Def4; then
    x in {x where x is Element of X1: [x,y] in dom f} by MEASUR11:def 5; then
    consider x1 be Element of X1 such that
A2:  x1 = x & [x1,y] in dom f;
    f.(x1,y) = 0 by A1,A2;
    hence ProjPMap2(f,y).x = 0 by A2,Def4;
   end;
   hence ProjPMap2(f,y).x = 0 by FUNCT_1:def 2;

   now assume y in dom(ProjPMap1(f,x)); then
    y in X-section(dom f,x) by Def3; then
    y in {y where y is Element of X2: [x,y] in dom f} by MEASUR11:def 4; then
    consider y1 be Element of X2 such that
A3:  y1 = y & [x,y1] in dom f;
    f.(x,y1) = 0 by A1,A3;
    hence ProjPMap1(f,x).y = 0 by A3,Def3;
   end;
   hence ProjPMap1(f,x).y = 0 by FUNCT_1:def 2;
end;

theorem Th31:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  x be Element of X1, y be Element of X2, f be PartFunc of [:X1,X2:],ExtREAL
 st f is_simple_func_in sigma measurable_rectangles(S1,S2) holds
  ProjPMap1(f,x) is_simple_func_in S2 & ProjPMap2(f,y) is_simple_func_in S1
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   x be Element of X1, y be Element of X2, f be PartFunc of [:X1,X2:],ExtREAL;
   assume AS: f is_simple_func_in sigma measurable_rectangles(S1,S2); then
A1:f is real-valued &
   ex F be Finite_Sep_Sequence of sigma measurable_rectangles(S1,S2) st
    (dom f = union rng F & for n be Nat, x,y be Element of [:X1,X2:] st
       n in dom F & x in F.n & y in F.n holds f.x = f.y)
     by MESFUNC2:def 4;
   consider F be Finite_Sep_Sequence of sigma measurable_rectangles(S1,S2)
    such that
A2: dom f = union rng F and
A3: for n be Nat, z1,z2 be Element of [:X1,X2:] st
       n in dom F & z1 in F.n & z2 in F.n holds f.z1 = f.z2
         by AS,MESFUNC2:def 4;

A4:rng f c= REAL by A1,VALUED_0:def 3;

   now let a be object;
    assume a in rng ProjPMap1(f,x); then
    consider y1 be Element of X2 such that
A5:  y1 in dom ProjPMap1(f,x) & a = ProjPMap1(f,x).y1 by PARTFUN1:3;
A6: a = f.(x,y1) by A5,Th26;
    y1 in X-section(dom f,x) by A5,Def3; then
    y1 in {y where y is Element of X2: [x,y] in dom f} by MEASUR11:def 4; then
    ex y be Element of X2 st y1 = y & [x,y] in dom f;
    hence a in REAL by A4,A6,FUNCT_1:3;
   end; then
   rng ProjPMap1(f,x) c= REAL; then
A7:ProjPMap1(f,x) is real-valued by VALUED_0:def 3;

   deffunc F1(Nat) = Measurable-X-section(F.$1,x);

   consider F1 be FinSequence of S2 such that
A8: len F1 = len F & for n be Nat st n in dom F1 holds F1.n = F1(n)
      from FINSEQ_2:sch 1;
A9:dom F1 = dom F by A8,FINSEQ_3:29;

   reconsider FF = F as FinSequence of bool [:X1,X2:] by FINSEQ_2:24;

   now let m,n be Nat;
    assume A10: m in dom F1 & n in dom F1 & m <> n;
    Measurable-X-section(F.m,x) = X-section(F.m,x)
  & Measurable-X-section(F.n,x) = X-section(F.n,x) by MEASUR11:def 6; then
A11:F1.m = X-section(F.m,x) & F1.n = X-section(F.n,x) by A10,A8;
    F.m misses F.n by A9,A10,Def2;
    hence F1.m misses F1.n by A11,MEASUR11:35;
   end; then
   F1 is disjoint_valued; then
   reconsider F1 as Finite_Sep_Sequence of S2;

   reconsider FF1 = F1 as FinSequence of bool X2 by FINSEQ_2:24;

A12:for n be Nat st n in dom FF1 holds FF1.n = X-section(FF.n,x)
   proof
    let n be Nat;
    assume n in dom FF1; then
    FF1.n = Measurable-X-section(F.n,x) by A8;
    hence FF1.n = X-section(FF.n,x) by MEASUR11:def 6;
   end; then
   X-section(union rng FF,x) = union rng FF1 by A9,MEASUR11:28; then
A13:dom ProjPMap1(f,x) = union rng F1 by A2,Def3;

   for n be Nat, y1,y2 be Element of X2 st n in dom F1 & y1 in F1.n
    & y2 in F1.n holds ProjPMap1(f,x).y1 = ProjPMap1(f,x).y2
   proof
    let n be Nat, y1,y2 be Element of X2;
    assume A14: n in dom F1 & y1 in F1.n & y2 in F1.n; then
A15:F1.n = X-section(FF.n,x) by A12;
A17:FF.n in rng F by A9,A14,FUNCT_1:3; then
    FF.n c= union rng F by TARSKI:def 4; then
    F1.n c= X-section(dom f,x) by A2,A15,MEASUR11:20; then
    y1 in X-section(dom f,x) & y2 in X-section(dom f,x) by A14; then
    y1 in dom ProjPMap1(f,x) & y2 in dom ProjPMap1(f,x) by Def3; then
A16:ProjPMap1(f,x).y1 = f.(x,y1) & ProjPMap1(f,x).y2 = f.(x,y2) by Th26;

A18:[x,y1] in union rng F implies [x,y1] in F.n
    proof
     assume [x,y1] in union rng F; then
     consider A be set such that
A19:  [x,y1] in A & A in rng F by TARSKI:def 4;
     consider m be object such that
A20:  m in dom F & A = F.m by A19,FUNCT_1:def 3;
     reconsider m as Nat by A20;
     now assume m <> n; then
      for y be Element of X2 st y1=y holds not [x,y] in F.n
        by A19,A20,XBOOLE_0:3,PROB_2:def 2; then
      not y1 in {y where y is Element of X2: [x,y] in F.n}; then
      not y1 in X-section(F.n,x) by MEASUR11:def 4;
      hence contradiction by A14,A12;
     end;
     hence [x,y1] in F.n by A19,A20;
    end;

A21:[x,y1] in union rng F
    proof
     assume not [x,y1] in union rng F; then
     for y be Element of X2 st y1=y holds not [x,y] in F.n
       by A17,TARSKI:def 4; then
     not y1 in {y where y is Element of X2: [x,y] in F.n}; then
     not y1 in X-section(F.n,x) by MEASUR11:def 4;
     hence contradiction by A14,A12;
    end;

    now assume not [x,y2] in F.n; then
     for y be Element of X2 st y2=y holds not [x,y] in F.n; then
     not y2 in {y where y is Element of X2: [x,y] in F.n}; then
     not y2 in X-section(F.n,x) by MEASUR11:def 4;
     hence contradiction by A14,A12;
    end;
    hence ProjPMap1(f,x).y1 = ProjPMap1(f,x).y2 by A3,A14,A9,A16,A18,A21;
   end;
   hence ProjPMap1(f,x) is_simple_func_in S2 by A7,A13,MESFUNC2:def 4;

   now let a be object;
    assume a in rng ProjPMap2(f,y); then
    consider x1 be Element of X1 such that
A25: x1 in dom ProjPMap2(f,y) & a = ProjPMap2(f,y).x1 by PARTFUN1:3;
A26:a = f.(x1,y) by A25,Th26;
    x1 in Y-section(dom f,y) by A25,Def4; then
    x1 in {x where x is Element of X1: [x,y] in dom f} by MEASUR11:def 5; then
    ex x be Element of X1 st x1 = x & [x,y] in dom f;
    hence a in REAL by A4,A26,FUNCT_1:3;
   end; then
   rng ProjPMap2(f,y) c= REAL; then
A27:ProjPMap2(f,y) is real-valued by VALUED_0:def 3;

   deffunc G1(Nat) = Measurable-Y-section(F.$1,y);

   consider G1 be FinSequence of S1 such that
A28:len G1 = len F & for n be Nat st n in dom G1 holds G1.n = G1(n)
      from FINSEQ_2:sch 1;
A29:dom G1 = dom F by A28,FINSEQ_3:29;

   now let m,n be Nat;
    assume A30: m in dom G1 & n in dom G1 & m <> n;
    Measurable-Y-section(F.m,y) = Y-section(F.m,y)
  & Measurable-Y-section(F.n,y) = Y-section(F.n,y) by MEASUR11:def 7; then
A31:G1.m = Y-section(F.m,y) & G1.n = Y-section(F.n,y) by A30,A28;
    F.m misses F.n by A29,A30,Def2;
    hence G1.m misses G1.n by A31,MEASUR11:35;
   end; then
   G1 is disjoint_valued; then
   reconsider G1 as Finite_Sep_Sequence of S1;

   reconsider GG1 = G1 as FinSequence of bool X1 by FINSEQ_2:24;

A32:for n be Nat st n in dom GG1 holds GG1.n = Y-section(FF.n,y)
   proof
    let n be Nat;
    assume n in dom GG1; then
    GG1.n = Measurable-Y-section(F.n,y) by A28;
    hence GG1.n = Y-section(FF.n,y) by MEASUR11:def 7;
   end; then
   Y-section(union rng FF,y) = union rng GG1 by A29,MEASUR11:29; then
A33:dom ProjPMap2(f,y) = union rng G1 by A2,Def4;

   for n be Nat, x1,x2 be Element of X1 st n in dom G1 & x1 in G1.n
    & x2 in G1.n holds ProjPMap2(f,y).x1 = ProjPMap2(f,y).x2
   proof
    let n be Nat, x1,x2 be Element of X1;
    assume A34: n in dom G1 & x1 in G1.n & x2 in G1.n; then
A35:G1.n = Y-section(FF.n,y) by A32;
A37:FF.n in rng F by A29,A34,FUNCT_1:3; then
    FF.n c= union rng F by TARSKI:def 4; then
    G1.n c= Y-section(dom f,y) by A2,A35,MEASUR11:21; then
    x1 in Y-section(dom f,y) & x2 in Y-section(dom f,y) by A34; then
    x1 in dom ProjPMap2(f,y) & x2 in dom ProjPMap2(f,y) by Def4; then
A36:ProjPMap2(f,y).x1 = f.(x1,y) & ProjPMap2(f,y).x2 = f.(x2,y) by Th26;

A38:[x1,y] in union rng F implies [x1,y] in F.n
    proof
     assume [x1,y] in union rng F; then
     consider A be set such that
A39:  [x1,y] in A & A in rng F by TARSKI:def 4;
     consider m be object such that
A40:  m in dom F & A = F.m by A39,FUNCT_1:def 3;
     reconsider m as Nat by A40;
     now assume m <> n; then
      for x be Element of X1 st x1=x holds not [x,y] in F.n
        by A39,A40,XBOOLE_0:3,PROB_2:def 2; then
      not x1 in {x where x is Element of X1: [x,y] in F.n}; then
      not x1 in Y-section(F.n,y) by MEASUR11:def 5;
      hence contradiction by A34,A32;
     end;
     hence [x1,y] in F.n by A39,A40;
    end;

A41:[x1,y] in union rng F
    proof
     assume not [x1,y] in union rng F; then
     for x be Element of X1 st x1=x holds not [x,y] in F.n
       by A37,TARSKI:def 4; then
     not x1 in {x where x is Element of X1: [x,y] in F.n}; then
     not x1 in Y-section(F.n,y) by MEASUR11:def 5;
     hence contradiction by A34,A32;
    end;

    now assume not [x2,y] in F.n; then
     for x be Element of X1 st x2=x holds not [x,y] in F.n; then
     not x2 in {x where x is Element of X1: [x,y] in F.n}; then
     not x2 in Y-section(F.n,y) by MEASUR11:def 5;
     hence contradiction by A34,A32;
    end;
    hence ProjPMap2(f,y).x1 = ProjPMap2(f,y).x2 by A3,A34,A29,A36,A38,A41;
   end;
   hence ProjPMap2(f,y) is_simple_func_in S1 by A27,A33,MESFUNC2:def 4;
end;

theorem Th32:
for X1,X2 be non empty set, x be Element of X1, y be Element of X2,
  f be PartFunc of [:X1,X2:],ExtREAL
 st f is nonnegative holds
  ProjPMap1(f,x) is nonnegative & ProjPMap2(f,y) is nonnegative
proof
   let X1,X2 be non empty set, x be Element of X1, y be Element of X2,
   f be PartFunc of [:X1,X2:],ExtREAL;
   assume A1: f is nonnegative;

   for q be object st q in dom (ProjPMap1(f,x)) holds 0 <= (ProjPMap1(f,x)).q
   proof
    let q be object;
    assume A2: q in dom(ProjPMap1(f,x)); then
    reconsider y1 = q as Element of X2;
    ProjPMap1(f,x).q = f.(x,y1) by A2,Th26;
    hence 0 <= (ProjPMap1(f,x)).q by A1,SUPINF_2:51;
   end;
   hence ProjPMap1(f,x) is nonnegative by SUPINF_2:52;

   for p be object st p in dom(ProjPMap2(f,y)) holds 0 <= (ProjPMap2(f,y)).p
   proof
    let p be object;
    assume A3: p in dom(ProjPMap2(f,y)); then
    reconsider x1 = p as Element of X1;
    ProjPMap2(f,y).p = f.(x1,y) by A3,Th26;
    hence 0 <= (ProjPMap2(f,y)).p by A1,SUPINF_2:51;
   end;
   hence ProjPMap2(f,y) is nonnegative by SUPINF_2:52;
end;

theorem Th33:
for X1,X2 be non empty set, x be Element of X1, y be Element of X2,
  f be PartFunc of [:X1,X2:],ExtREAL
 st f is nonpositive holds
  ProjPMap1(f,x) is nonpositive & ProjPMap2(f,y) is nonpositive
proof
   let X1,X2 be non empty set, x be Element of X1, y be Element of X2,
   f be PartFunc of [:X1,X2:],ExtREAL;
   assume A1: f is nonpositive;

   for q be set st q in dom (ProjPMap1(f,x)) holds 0 >= (ProjPMap1(f,x)).q
   proof
    let q be set;
    assume A2: q in dom(ProjPMap1(f,x)); then
    reconsider y1 = q as Element of X2;
    ProjPMap1(f,x).q = f.(x,y1) by A2,Th26;
    hence 0 >= (ProjPMap1(f,x)).q by A1,MESFUNC5:8;
   end;
   hence ProjPMap1(f,x) is nonpositive by MESFUNC5:9;

   for p be set st p in dom(ProjPMap2(f,y)) holds 0 >= (ProjPMap2(f,y)).p
   proof
    let p be set;
    assume A3: p in dom(ProjPMap2(f,y)); then
    reconsider x1 = p as Element of X1;
    ProjPMap2(f,y).p = f.(x1,y) by A3,Th26;
    hence 0 >= (ProjPMap2(f,y)).p by A1,MESFUNC5:8;
   end;
   hence ProjPMap2(f,y) is nonpositive by MESFUNC5:9;
end;

theorem Th34:
for X1,X2 be non empty set, x be Element of X1, y be Element of X2,
 A be Subset of [:X1,X2:], f be PartFunc of [:X1,X2:],ExtREAL
 holds ProjPMap1(f|A,x) = ProjPMap1(f,x)|X-section(A,x)
     & ProjPMap2(f|A,y) = ProjPMap2(f,y)|Y-section(A,y)
proof
    let X1,X2 be non empty set, x be Element of X1, y be Element of X2,
    A be Subset of [:X1,X2:], f be PartFunc of [:X1,X2:],ExtREAL;
    set f1 = f|A;

A2: dom f /\ A c= dom f by XBOOLE_1:17;

A4: dom f1 = dom f /\ A by RELAT_1:61;

A7: dom(ProjPMap1(f,x)|X-section(A,x))
    = dom(ProjPMap1(f,x)) /\ X-section(A,x) by RELAT_1:61
   .= X-section(dom f,x) /\ X-section(A,x) by Def3
   .= X-section(dom f /\ A,x) by MEASUR11:27
   .= dom(ProjPMap1(f1,x)) by A4,Def3;

    now let y be Element of X2;
     assume y in dom(ProjPMap1(f1,x)); then
A8:  y in X-section(dom f /\ A,x) by A4,Def3; then
A9:  [x,y] in dom f /\ A by Th25; then
     ProjPMap1(f1,x).y = f1.(x,y) by A4,Def3; then
A10: ProjPMap1(f1,x).y = f.(x,y) by A9,FUNCT_1:48;
b3:  ProjPMap1(f,x).y = f.(x,y) by A2,A9,Def3;
     y in X-section(dom f,x) /\ X-section(A,x) by A8,MEASUR11:27; then
     y in X-section(A,x) by XBOOLE_0:def 4;
     hence (ProjPMap1(f1,x)).y = (ProjPMap1(f,x))|(X-section(A,x)).y
       by A10,b3,FUNCT_1:49;
    end;
    hence ProjPMap1(f1,x) = (ProjPMap1(f,x))|(X-section(A,x))
      by A7,PARTFUN1:5;

A13:dom(ProjPMap2(f,y)|Y-section(A,y))
    = dom(ProjPMap2(f,y)) /\ Y-section(A,y) by RELAT_1:61
   .= Y-section(dom f,y) /\ Y-section(A,y) by Def4
   .= Y-section(dom f /\ A,y) by MEASUR11:27
   .= dom(ProjPMap2(f1,y)) by A4,Def4;

    now let x be Element of X1;
     assume x in dom(ProjPMap2(f1,y)); then
A14: x in Y-section(dom f /\ A,y) by A4,Def4; then
A15: [x,y] in dom f /\ A by Th25; then
     ProjPMap2(f1,y).x = f1.(x,y) by A4,Def4; then
A16: ProjPMap2(f1,y).x = f.(x,y) by A15,FUNCT_1:48;
b4:  ProjPMap2(f,y).x = f.(x,y) by A2,A15,Def4;
     x in Y-section(dom f,y) /\ Y-section(A,y) by A14,MEASUR11:27; then
     x in Y-section(A,y) by XBOOLE_0:def 4;
     hence (ProjPMap2(f1,y)).x = (ProjPMap2(f,y))|(Y-section(A,y)).x
      by A16,b4,FUNCT_1:49;
    end;
    hence ProjPMap2(f1,y) = (ProjPMap2(f,y))|(Y-section(A,y))
      by A13,PARTFUN1:5;
end;

theorem Th35:
for X1,X2 be non empty set, A be Subset of [:X1,X2:], x be Element of X1,
  y be Element of X2 holds
   ProjPMap1(Xchi(A,[:X1,X2:]),x) = Xchi(X-section(A,x),X2)
 & ProjPMap2(Xchi(A,[:X1,X2:]),y) = Xchi(Y-section(A,y),X1)
proof
   let X1,X2 be non empty set, A be Subset of [:X1,X2:],
   x be Element of X1, y be Element of X2;

A3:ProjPMap1(Xchi(A,[:X1,X2:]),x) = ProjMap1(Xchi(A,[:X1,X2:]),x)
 & ProjPMap2(Xchi(A,[:X1,X2:]),y) = ProjMap2(Xchi(A,[:X1,X2:]),y) by Th27;

   for y be Element of X2 holds
    ProjMap1(Xchi(A,[:X1,X2:]),x).y = Xchi(X-section(A,x),X2).y
   proof
    let y be Element of X2;
a5: [x,y] in [:X1,X2:] by ZFMISC_1:def 2;
a4: ProjMap1(Xchi(A,[:X1,X2:]),x).y = Xchi(A,[:X1,X2:]).(x,y)
      by MESFUNC9:def 6;
    per cases;
    suppose b1: [x,y] in A; then
     y in X-section(A,x) by Th25; then
     ProjMap1(Xchi(A,[:X1,X2:]),x).y = +infty
   & Xchi(X-section(A,x),X2).y = +infty by a4,b1,MEASUR10:def 7;
     hence thesis;
    end;
    suppose b2: not [x,y] in A; then
     not y in X-section(A,x) by Th25; then
     ProjMap1(Xchi(A,[:X1,X2:]),x).y = 0
   & Xchi(X-section(A,x),X2).y = 0 by a5,a4,b2,MEASUR10:def 7;
     hence thesis;
    end;
   end;
   hence ProjPMap1(Xchi(A,[:X1,X2:]),x) = Xchi(X-section(A,x),X2)
     by A3,FUNCT_2:def 8;

   for x be Element of X1 holds
    ProjMap2(Xchi(A,[:X1,X2:]),y).x = Xchi(Y-section(A,y),X1).x
   proof
    let x be Element of X1;
a5: [x,y] in [:X1,X2:] by ZFMISC_1:def 2;
a4: ProjMap2(Xchi(A,[:X1,X2:]),y).x = Xchi(A,[:X1,X2:]).(x,y)
      by MESFUNC9:def 7;
    per cases;
    suppose b1: [x,y] in A; then
     x in Y-section(A,y) by Th25; then
     ProjMap2(Xchi(A,[:X1,X2:]),y).x = +infty
   & Xchi(Y-section(A,y),X1).x = +infty by a4,b1,MEASUR10:def 7;
     hence thesis;
    end;
    suppose b2: not [x,y] in A; then
     not x in Y-section(A,y) by Th25; then
     ProjMap2(Xchi(A,[:X1,X2:]),y).x = 0
   & Xchi(Y-section(A,y),X1).x = 0 by a5,a4,b2,MEASUR10:def 7;
     hence thesis;
    end;
   end;
   hence ProjPMap2(Xchi(A,[:X1,X2:]),y) = Xchi(Y-section(A,y),X1)
     by A3,FUNCT_2:def 8;
end;

theorem Th36:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 f,g be PartFunc of X,ExtREAL, E be Element of S
  st f|E = g|E & E c= dom f & E c= dom g & f is E-measurable
  holds g is E-measurable
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
     f,g be PartFunc of X,ExtREAL, A be Element of S;
    assume that
A1:  f|A = g|A and
A2:  A c= dom f and
A3:  A c= dom g and
A4:  f is A-measurable;

    now let r be Real;
     now let x be object;
      assume x in A /\ less_dom(f,r); then
A5:   x in A & x in less_dom(f,r) by XBOOLE_0:def 4; then
A6:   x in dom f & f.x < r by MESFUNC1:def 11;
      f.x = (f|A).x by A5,FUNCT_1:49; then
      f.x = g.x by A1,A5,FUNCT_1:49; then
      x in less_dom(g,r) by A3,A5,A6,MESFUNC1:def 11;
      hence x in A /\ less_dom(g,r) by A5,XBOOLE_0:def 4;
     end; then
A7:  A /\ less_dom(f,r) c= A /\ less_dom(g,r);

     now let x be object;
      assume x in A /\ less_dom(g,r); then
A8:   x in A & x in less_dom(g,r) by XBOOLE_0:def 4; then
A9:   x in dom g & g.x < r by MESFUNC1:def 11;
      g.x = (g|A).x by A8,FUNCT_1:49; then
      g.x = f.x by A1,A8,FUNCT_1:49; then
      x in less_dom(f,r) by A2,A8,A9,MESFUNC1:def 11;
      hence x in A /\ less_dom(f,r) by A8,XBOOLE_0:def 4;
     end; then
     A /\ less_dom(g,r) c= A /\ less_dom(f,r); then
     A /\ less_dom(g,r) = A /\ less_dom(f,r) by A7;
     hence A /\ less_dom(g,r) in S by A4,MESFUNC1:def 16;
    end;
    hence thesis by MESFUNC1:def 16;
end;

theorem  Th37:
for X1,X2 be non empty set, A be Subset of [:X1,X2:],
  f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
  F be Functional_Sequence of [:X1,X2:],ExtREAL
 st A c= dom f &
   (for n be Nat holds dom(F.n) = A)
 & (for z be Element of [:X1,X2:] st z in A holds
      (F#z) is convergent & lim(F#z) = f.z)
holds
( ex FX be with_the_same_dom Functional_Sequence of X1,ExtREAL
  st (for n be Nat holds FX.n = ProjPMap2(F.n,y))
   & (for x be Element of X1 st x in Y-section(A,y) holds
       FX#x is convergent & (ProjPMap2(f,y)).x = lim(FX#x)) ) &
( ex FY be with_the_same_dom Functional_Sequence of X2,ExtREAL
  st (for n be Nat holds FY.n = ProjPMap1(F.n,x))
   & (for y be Element of X2 st y in X-section(A,x) holds
       FY#y is convergent & (ProjPMap1(f,x)).y = lim(FY#y)) )
proof
    let X1,X2 be non empty set, A be Subset of [:X1,X2:],
    f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
    F be Functional_Sequence of [:X1,X2:],ExtREAL;
    assume that
A1:  A c= dom f and
A2:  for n be Nat holds dom(F.n) = A and
A3:  for x be Element of [:X1,X2:] st x in A
       holds (F#x) is convergent & lim(F#x) = f.x;

    set f1 = f|A;
A4: dom f1 = A by A1,RELAT_1:62;

    defpred P2[Element of NAT,object] means $2 = ProjPMap2(F.$1,y);

A5: for n be Element of NAT ex f be Element of PFuncs(X1,ExtREAL) st P2[n,f]
    proof
     let n be Element of NAT;
     reconsider f = ProjPMap2(F.n,y)
       as Element of PFuncs(X1,ExtREAL) by PARTFUN1:45;
     take f;
     thus thesis;
    end;

    thus ex FX be with_the_same_dom Functional_Sequence of X1,ExtREAL
      st (for n be Nat holds FX.n = ProjPMap2(F.n,y))
       & (for x be Element of X1 st x in Y-section(A,y) holds
            FX#x is convergent & (ProjPMap2(f,y)).x = lim(FX#x))
    proof
     consider FX be sequence of PFuncs(X1,ExtREAL) such that
A6:   for n be Element of NAT holds P2[n,FX.n] from FUNCT_2:sch 3(A5);

A7:  for n be Nat holds dom(FX.n) = Y-section(A,y)
     proof
      let n be Nat;
A8:   dom(F.n) = dom(f|A) by A2,A4;
      n is Element of NAT by ORDINAL1:def 12; then
      FX.n = ProjPMap2(F.n,y) by A6;
      hence dom(FX.n) = Y-section(A,y) by A4,A8,Def4;
     end;

     for m,n be Nat holds dom(FX.m) = dom(FX.n)
     proof
      let m,n be Nat;
      dom(FX.m) = Y-section(A,y) by A7;
      hence dom(FX.m) = dom(FX.n) by A7;
     end; then
     reconsider FX as with_the_same_dom Functional_Sequence of X1,ExtREAL
       by MESFUNC8:def 2;
     take FX;

     thus for n be Nat holds FX.n = ProjPMap2(F.n,y)
     proof
      let n be Nat;
      n is Element of NAT by ORDINAL1:def 12;
      hence FX.n = ProjPMap2(F.n,y) by A6;
     end;

     thus for x be Element of X1 st x in Y-section(A,y) holds
       FX#x is convergent & (ProjPMap2(f,y)).x = lim(FX#x)
     proof
      let x be Element of X1;
      reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
      assume x in Y-section(A,y); then
A13:   [x,y] in A by Th25; then
A14:  F#z is convergent & lim(F#z) = f.z by A3;

A15:  for n be Element of NAT holds (FX#x).n = (F#z).n
      proof
       let n be Element of NAT;
A16:   [x,y] in dom(F.n) by A2,A13;
       (FX#x).n = (FX.n).x by MESFUNC5:def 13; then
       (FX#x).n = ProjPMap2(F.n,y).x by A6; then
       (FX#x).n = (F.n).(x,y) by A16,Def4;
       hence (FX#x).n = (F#z).n by MESFUNC5:def 13;
      end;
      hence FX#x is convergent by A14,FUNCT_2:63;
      (ProjPMap2(f,y)).x = f.(x,y) by A1,A13,Def4;
      hence (ProjPMap2(f,y)).x = lim(FX#x) by A14,A15,FUNCT_2:63;
     end;
    end;

    defpred P1[Element of NAT,object] means $2 = ProjPMap1(F.$1,x);

A9: for n be Element of NAT ex f be Element of PFuncs(X2,ExtREAL) st P1[n,f]
    proof
     let n be Element of NAT;
     reconsider f = ProjPMap1(F.n,x)
       as Element of PFuncs(X2,ExtREAL) by PARTFUN1:45;
     take f;
     thus thesis;
    end;

    consider FY be sequence of PFuncs(X2,ExtREAL) such that
A10: for n be Element of NAT holds P1[n,FY.n] from FUNCT_2:sch 3(A9);

A11:for n be Nat holds dom(FY.n) = X-section(A,x)
    proof
     let n be Nat;
A12: dom(F.n) = dom(f|A) by A2,A4;
     n is Element of NAT by ORDINAL1:def 12; then
     FY.n = ProjPMap1(F.n,x) by A10;
     hence dom(FY.n) = X-section(A,x) by A4,A12,Def3;
    end;

    for m,n be Nat holds dom(FY.m) = dom(FY.n)
    proof
     let m,n be Nat;
     dom(FY.m) = X-section(A,x) by A11;
     hence dom(FY.m) = dom(FY.n) by A11;
    end; then
    reconsider FY as with_the_same_dom Functional_Sequence of X2,ExtREAL
      by MESFUNC8:def 2;
    take FY;
    thus for n be Nat holds FY.n = ProjPMap1(F.n,x)
    proof
     let n be Nat;
     n is Element of NAT by ORDINAL1:def 12;
     hence FY.n = ProjPMap1(F.n,x) by A10;
    end;

    thus for y be Element of X2 st y in X-section(A,x) holds
      FY#y is convergent & (ProjPMap1(f,x)).y = lim(FY#y)
    proof
     let y be Element of X2;
     reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume y in X-section(A,x); then
A17:  [x,y] in A by Th25; then
A18: F#z is convergent & lim(F#z) = f.z by A3;

A19: for n be Element of NAT holds (FY#y).n = (F#z).n
     proof
      let n be Element of NAT;
A20:  [x,y] in dom(F.n) by A2,A17;
      (FY#y).n = (FY.n).y by MESFUNC5:def 13; then
      (FY#y).n = ProjPMap1(F.n,x).y by A10; then
      (FY#y).n = (F.n).(x,y) by A20,Def3;
      hence (FY#y).n = (F#z).n by MESFUNC5:def 13;
     end;
     hence FY#y is convergent by A18,FUNCT_2:63;
     (ProjPMap1(f,x)).y = f.(x,y) by A1,A17,Def3;
     hence (ProjPMap1(f,x)).y = lim(FY#y) by A18,A19,FUNCT_2:63;
    end;
end;

Lm3:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
  A be Element of sigma measurable_rectangles(S1,S2)
 st (f is nonnegative or f is nonpositive) & A c= dom f & f is A-measurable
 holds ProjPMap1(f,x) is (Measurable-X-section(A,x))-measurable &
       ProjPMap2(f,y) is (Measurable-Y-section(A,y))-measurable
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  (f is nonnegative or f is nonpositive) and
A2:  A c= dom f and
A3:  f is A-measurable;

    reconsider X12 = [:X1,X2:] as Element of sigma measurable_rectangles(S1,S2)
      by MEASURE1:7;
    reconsider S = sigma measurable_rectangles(S1,S2)
      as SigmaField of [:X1,X2:];

    set f1 = f|A;
A4: dom f1 = A by A2,RELAT_1:62;
    A = dom f /\ A by A2,XBOOLE_1:28; then
A5: f1 is A-measurable by A3,MESFUNC5:42;
A6: Measurable-X-section(A,x) = X-section(A,x)
  & Measurable-Y-section(A,y) = Y-section(A,y) by MEASUR11:def 6,def 7;
A7: dom(ProjPMap1(f,x)) = X-section(dom f,x)
  & dom(ProjPMap1(f1,x)) = X-section(A,x) by A4,Def3;
B7: dom(ProjPMap2(f,y)) = Y-section(dom f,y)
  & dom(ProjPMap2(f1,y)) = Y-section(A,y) by A4,Def4;

P1:ex F be Functional_Sequence of [:X1,X2:],ExtREAL st
    (for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f1) &
    (for x be Element of [:X1,X2:] st x in dom f1 holds
     (F#x) is convergent & lim(F#x) = f1.x)
   proof
    per cases by A1;
    suppose f is nonnegative; then
     ex F be Functional_Sequence of [:X1,X2:],ExtREAL st
      (for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f1)
    & (for n be Nat holds F.n is nonnegative)
    & (for n,m be Nat st n <=m holds
        for x be Element of [:X1,X2:] st x in dom f1 holds (F.n).x <= (F.m).x )
    & for x be Element of [:X1,X2:] st x in dom f1 holds
        (F#x) is convergent & lim(F#x) = f1.x by A4,A5,MESFUNC5:15,64;
     hence thesis;
    end;
    suppose f is nonpositive; then
     ex F be Functional_Sequence of [:X1,X2:],ExtREAL st
      (for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f1)
    & (for n be Nat holds F.n is nonpositive)
    & (for n,m be Nat st n <=m holds
        for x be Element of [:X1,X2:] st x in dom f1 holds (F.n).x >= (F.m).x )
    & for x be Element of [:X1,X2:] st x in dom f1 holds
        (F#x) is convergent & lim(F#x) = f1.x by A4,A5,MESFUN11:1,56;
     hence thesis;
    end;
   end;

   consider F be Functional_Sequence of [:X1,X2:],ExtREAL such that
A8: (for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f1) and
A9: for x be Element of [:X1,X2:] st x in dom f1 holds
     (F#x) is convergent & lim(F#x) = f1.x by P1;

A10:for z be Element of [:X1,X2:] st z in A holds
      (F#z) is convergent & lim(F#z) = f.z
    proof
     let z be Element of [:X1,X2:];
     assume A11: z in A;
     hence (F#z) is convergent by A4,A9;
     thus lim(F#z) = f1.z by A4,A9,A11 .= f.z by A11,FUNCT_1:49;
    end;

    consider FY be with_the_same_dom Functional_Sequence of X2,ExtREAL
      such that
A12: (for n be Nat holds FY.n = ProjPMap1(F.n,x)) and
A13: (for y be Element of X2 st y in X-section(A,x) holds
       FY#y is convergent & (ProjPMap1(f,x)).y = lim(FY#y))
         by A2,A4,A8,A10,Th37;

    for n be Nat holds dom(FY.n) = X-section(A,x)
    proof
     let n be Nat;
     FY.n = ProjPMap1(F.n,x) & dom(F.n) = A by A4,A8,A12;
     hence dom(FY.n) = X-section(A,x) by Def3;
    end; then
A14:dom(FY.0) = Measurable-X-section(A,x) by A6;

A15:for n be Nat holds FY.n is (Measurable-X-section(A,x))-measurable
    proof
     let n be Nat;
     FY.n = ProjPMap1(F.n,x) & F.n is_simple_func_in S by A8,A12;
     hence FY.n is (Measurable-X-section(A,x))-measurable
       by Th31,MESFUNC2:34;
    end;

A16:X-section(A,x) c= dom(ProjPMap1(f,x)) by A2,A7,MEASUR11:20;

A17:for y be Element of X2 st y in Measurable-X-section(A,x) holds
      FY#y is convergent & (ProjPMap1(f1,x)).y = lim(FY#y)
    proof
     let y be Element of X2;
     reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume A18: y in Measurable-X-section(A,x);
     hence FY#y is convergent by A6,A13;
     ProjPMap1(f1,x) = ProjPMap1(f,x)|X-section(A,x) by Th34; then
     (ProjPMap1(f1,x)).y = (ProjPMap1(f,x)).y by A6,A18,FUNCT_1:49;
     hence (ProjPMap1(f1,x)).y = lim(FY#y) by A6,A13,A18;
    end;

    ProjPMap1(f1,x) = ProjPMap1(f,x)|X-section(A,x) by Th34; then
    ProjPMap1(f1,x)|Measurable-X-section(A,x)
     = ProjPMap1(f,x)|Measurable-X-section(A,x) by A6;
    hence ProjPMap1(f,x) is (Measurable-X-section(A,x))-measurable
      by A6,A7,A14,A15,A16,A17,Th36,MESFUNC8:26;


    consider FX be with_the_same_dom Functional_Sequence of X1,ExtREAL
      such that
A19: (for n be Nat holds FX.n = ProjPMap2(F.n,y)) and
A20: (for x be Element of X1 st x in Y-section(A,y) holds
       FX#x is convergent & (ProjPMap2(f,y)).x = lim(FX#x))
         by A2,A4,A8,A10,Th37;

    for n be Nat holds dom(FX.n) = Y-section(A,y)
    proof
     let n be Nat;
     FX.n = ProjPMap2(F.n,y) & dom(F.n) = A by A4,A8,A19;
     hence dom(FX.n) = Y-section(A,y) by Def4;
    end; then
A21:dom(FX.0) = Measurable-Y-section(A,y) by A6;

A22:for n be Nat holds FX.n is (Measurable-Y-section(A,y))-measurable
    proof
     let n be Nat;
     FX.n = ProjPMap2(F.n,y) & F.n is_simple_func_in S by A8,A19;
     hence FX.n is (Measurable-Y-section(A,y))-measurable
       by Th31,MESFUNC2:34;
    end;

A23:Y-section(A,y) c= dom(ProjPMap2(f,y)) by A2,B7,MEASUR11:21;

A24:for x be Element of X1 st x in Measurable-Y-section(A,y) holds
      FX#x is convergent & (ProjPMap2(f1,y)).x = lim(FX#x)
    proof
     let x be Element of X1;
     reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume x in Measurable-Y-section(A,y); then
A25: x in Y-section(A,y) by MEASUR11:def 7;
     hence FX#x is convergent by A20;

     ProjPMap2(f1,y) = ProjPMap2(f,y)|Y-section(A,y) by Th34; then
     (ProjPMap2(f1,y)).x = (ProjPMap2(f,y)).x by A25,FUNCT_1:49;
     hence (ProjPMap2(f1,y)).x = lim(FX#x) by A25,A20;
    end;

    ProjPMap2(f1,y) = ProjPMap2(f,y)|Y-section(A,y) by Th34; then
    ProjPMap2(f1,y)|Measurable-Y-section(A,y)
     = ProjPMap2(f,y)|Measurable-Y-section(A,y) by A6;
    hence ProjPMap2(f,y) is (Measurable-Y-section(A,y))-measurable
      by A6,B7,A21,A22,A23,A24,Th36,MESFUNC8:26;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  E be Element of sigma measurable_rectangles(S1,S2),
  M2 be sigma_Measure of S2,
  A be Element of S1, B be Element of S2, x be Element of X1 holds
  M2.(B /\ Measurable-X-section(E,x)) * chi(A,X1).x
    = Integral(M2,ProjPMap1(chi([:A,B:],[:X1,X2:])|E,x))
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   E be Element of sigma measurable_rectangles(S1,S2),
   M2 be sigma_Measure of S2,
   A be Element of S1, B be Element of S2, x be Element of X1;

   set CAB = chi([:A,B:],[:X1,X2:])|E;

   ProjPMap1(chi([:A,B:],[:X1,X2:]),x) = ProjMap1(chi([:A,B:],[:X1,X2:]),x)
     by Th27; then
A0:dom(ProjPMap1(chi([:A,B:],[:X1,X2:]),x)) = X2 by FUNCT_2:def 1;

   ProjPMap1(CAB,x)
     = ProjPMap1(chi([:A,B:],[:X1,X2:]),x)|X-section(E,x) by Th34; then
   dom(ProjPMap1(CAB,x)) = X2 /\ X-section(E,x) by A0,RELAT_1:61; then
A1:dom(ProjPMap1(CAB,x)) = X-section(E,x) by XBOOLE_1:28;

A2:for y be Element of X2 holds
    ProjPMap1(CAB,x).y = (chi(A,X1)|Measurable-Y-section(E,y)).x * chi(B,X2).y
   proof
    let y be Element of X2;
    per cases;
    suppose A3: [x,y] in E; then
     y in X-section(E,x) by Th25; then
     ProjPMap1(CAB,x).y = CAB.(x,y) by A1,Th26; then
A4:  ProjPMap1(CAB,x).y = chi([:A,B:],[:X1,X2:]).(x,y) by A3,FUNCT_1:49;

     x in Y-section(E,y) by A3,Th25; then
     x in Measurable-Y-section(E,y) by MEASUR11:def 7; then
     (chi(A,X1)|Measurable-Y-section(E,y)).x = chi(A,X1).x by FUNCT_1:49;
     hence ProjPMap1(CAB,x).y
       = (chi(A,X1)|Measurable-Y-section(E,y)).x * chi(B,X2).y
         by A4,MEASUR10:2;
    end;
    suppose A5: not [x,y] in E; then
     not y in X-section(E,x) by Th25; then
A6:  ProjPMap1(CAB,x).y = 0 by A1,FUNCT_1:def 2;

     not x in Y-section(E,y) by A5,Th25; then
     not x in Measurable-Y-section(E,y) by MEASUR11:def 7; then
     not x in dom(chi(A,X1)|Measurable-Y-section(E,y)) by Th18; then
     (chi(A,X1)|Measurable-Y-section(E,y)).x = 0 by FUNCT_1:def 2;
     hence ProjPMap1(CAB,x).y
       = (chi(A,X1)|Measurable-Y-section(E,y)).x * chi(B,X2).y by A6;
    end;
   end;

   per cases;
   suppose x in A; then
A7: chi(A,X1).x = 1 by FUNCT_3:def 3; then
A8: M2.(B /\ Measurable-X-section(E,x)) * chi(A,X1).x
     = M2.(B /\ Measurable-X-section(E,x)) by XXREAL_3:81;

    dom (chi(B,X2)|Measurable-X-section(E,x))
     = Measurable-X-section(E,x) by Th18; then
A9: dom (ProjPMap1(CAB,x)) = dom (chi(B,X2)|Measurable-X-section(E,x))
      by A1,MEASUR11:def 6;

    for y be Element of X2 st y in dom(ProjPMap1(CAB,x)) holds
      ProjPMap1(CAB,x).y = (chi(B,X2)|Measurable-X-section(E,x)).y
    proof
     let y be Element of X2;
     assume A10: y in dom(ProjPMap1(CAB,x)); then
A11: y in Measurable-X-section(E,x) by A1,MEASUR11:def 6;
     [x,y] in E by A1,A10,Th25; then
     x in Y-section(E,y) by Th25; then
     x in Measurable-Y-section(E,y) by MEASUR11:def 7; then
A12: (chi(A,X1)|Measurable-Y-section(E,y)).x = chi(A,X1).x by FUNCT_1:49;
     ProjPMap1(CAB,x).y
      = (chi(A,X1)|Measurable-Y-section(E,y)).x * chi(B,X2).y by A2; then
     ProjPMap1(CAB,x).y = chi(B,X2).y by A7,A12,XXREAL_3:81;
     hence ProjPMap1(CAB,x).y = (chi(B,X2)|Measurable-X-section(E,x)).y
      by A11,FUNCT_1:49;
    end; then
    ProjPMap1(CAB,x) = chi(B,X2)|Measurable-X-section(E,x) by A9,PARTFUN1:5;
    hence M2.(B /\ Measurable-X-section(E,x)) * chi(A,X1).x
      = Integral(M2,ProjPMap1(CAB,x)) by A8,Th20;
   end;
   suppose not x in A; then
A13:chi(A,X1).x = 0 by FUNCT_3:def 3; then
A14:M2.(B /\ Measurable-X-section(E,x)) * chi(A,X1).x = 0;

A15:{} is Element of S2 by PROB_1:4;

A16:dom(ProjPMap1(CAB,x))
      = Measurable-X-section(E,x) by A1,MEASUR11:def 6
      .= dom (chi({},X2)|Measurable-X-section(E,x)) by Th18;
    for y be Element of X2 st y in dom(ProjPMap1(CAB,x)) holds
      ProjPMap1(CAB,x).y = (chi({},X2)|Measurable-X-section(E,x)).y
    proof
     let y be Element of X2;
     assume A17: y in dom(ProjPMap1(CAB,x)); then
     y in Measurable-X-section(E,x) by A1,MEASUR11:def 6; then
A18: (chi({},X2)|Measurable-X-section(E,x)).y = chi({},X2).y by FUNCT_1:49;
     [x,y] in E by A1,A17,Th25; then
     x in Y-section(E,y) by Th25; then
     x in Measurable-Y-section(E,y) by MEASUR11:def 7; then
A19: (chi(A,X1)|Measurable-Y-section(E,y)).x = chi(A,X1).x by FUNCT_1:49;
     ProjPMap1(CAB,x).y
      = (chi(A,X1)|Measurable-Y-section(E,y)).x * chi(B,X2).y by A2; then
     ProjPMap1(CAB,x).y = 0 by A13,A19;
     hence ProjPMap1(CAB,x).y = (chi({},X2)|Measurable-X-section(E,x)).y
       by A18,FUNCT_3:def 3;
    end; then
    ProjPMap1(CAB,x) = chi({},X2)|Measurable-X-section(E,x)
      by A16,PARTFUN1:5; then
    Integral(M2,ProjPMap1(CAB,x)) = M2.({} /\ Measurable-X-section(E,x))
      by A15,Th20;
    hence M2.(B /\ Measurable-X-section(E,x)) * chi(A,X1).x
      = Integral(M2,ProjPMap1(CAB,x)) by A14,VALUED_0:def 19;
   end;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  E be Element of sigma measurable_rectangles(S1,S2),
  M1 be sigma_Measure of S1,
  A be Element of S1, B be Element of S2, y be Element of X2 holds
  M1.(A /\ Measurable-Y-section(E,y)) * chi(B,X2).y
    = Integral(M1,ProjPMap2(chi([:A,B:],[:X1,X2:])|E,y))
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   E be Element of sigma measurable_rectangles(S1,S2),
   M1 be sigma_Measure of S1,
   A be Element of S1, B be Element of S2, y be Element of X2;

   set CAB = chi([:A,B:],[:X1,X2:])|E;

   ProjPMap2(chi([:A,B:],[:X1,X2:]),y) = ProjMap2(chi([:A,B:],[:X1,X2:]),y)
     by Th27; then
A0:dom(ProjPMap2(chi([:A,B:],[:X1,X2:]),y)) = X1 by FUNCT_2:def 1;

   ProjPMap2(CAB,y)
     = ProjPMap2(chi([:A,B:],[:X1,X2:]),y)|Y-section(E,y) by Th34; then
   dom(ProjPMap2(CAB,y)) = X1 /\ Y-section(E,y) by A0,RELAT_1:61; then
A1:dom(ProjPMap2(CAB,y)) = Y-section(E,y) by XBOOLE_1:28;

A2:for x be Element of X1 holds
    ProjPMap2(CAB,y).x = (chi(B,X2)|Measurable-X-section(E,x)).y * chi(A,X1).x
   proof
    let x be Element of X1;
    per cases;
    suppose A3: [x,y] in E; then
     x in Y-section(E,y) by Th25; then
     ProjPMap2(CAB,y).x = CAB.(x,y) by A1,Th26; then
A4:  ProjPMap2(CAB,y).x = chi([:A,B:],[:X1,X2:]).(x,y) by A3,FUNCT_1:49;

     y in X-section(E,x) by A3,Th25; then
     y in Measurable-X-section(E,x) by MEASUR11:def 6; then
     (chi(B,X2)|Measurable-X-section(E,x)).y = chi(B,X2).y by FUNCT_1:49;
     hence ProjPMap2(CAB,y).x
       = (chi(B,X2)|Measurable-X-section(E,x)).y * chi(A,X1).x
         by A4,MEASUR10:2;
    end;
    suppose A5: not [x,y] in E; then
     not x in Y-section(E,y) by Th25; then
A6:  ProjPMap2(CAB,y).x = 0 by A1,FUNCT_1:def 2;

     not y in X-section(E,x) by A5,Th25; then
     not y in Measurable-X-section(E,x) by MEASUR11:def 6; then
     not y in dom(chi(B,X2)|Measurable-X-section(E,x)) by Th18; then
     (chi(B,X2)|Measurable-X-section(E,x)).y = 0 by FUNCT_1:def 2;
     hence ProjPMap2(CAB,y).x
       = (chi(B,X2)|Measurable-X-section(E,x)).y * chi(A,X1).x by A6;
    end;
   end;

   per cases;
   suppose y in B; then
A7: chi(B,X2).y = 1 by FUNCT_3:def 3; then
A8: M1.(A /\ Measurable-Y-section(E,y)) * chi(B,X2).y
     = M1.(A /\ Measurable-Y-section(E,y)) by XXREAL_3:81;

    dom (chi(A,X1)|Measurable-Y-section(E,y))
     = Measurable-Y-section(E,y) by Th18; then
A9: dom (ProjPMap2(CAB,y)) = dom (chi(A,X1)|Measurable-Y-section(E,y))
      by A1,MEASUR11:def 7;

    for x be Element of X1 st x in dom(ProjPMap2(CAB,y)) holds
      ProjPMap2(CAB,y).x = (chi(A,X1)|Measurable-Y-section(E,y)).x
    proof
     let x be Element of X1;
     assume A10: x in dom(ProjPMap2(CAB,y)); then
A11: x in Measurable-Y-section(E,y) by A1,MEASUR11:def 7;
     [x,y] in E by A1,A10,Th25; then
     y in X-section(E,x) by Th25; then
     y in Measurable-X-section(E,x) by MEASUR11:def 6; then
A12: (chi(B,X2)|Measurable-X-section(E,x)).y = chi(B,X2).y by FUNCT_1:49;
     ProjPMap2(CAB,y).x
      = (chi(B,X2)|Measurable-X-section(E,x)).y * chi(A,X1).x by A2; then
     ProjPMap2(CAB,y).x = chi(A,X1).x by A7,A12,XXREAL_3:81;
     hence ProjPMap2(CAB,y).x = (chi(A,X1)|Measurable-Y-section(E,y)).x
      by A11,FUNCT_1:49;
    end; then
    ProjPMap2(CAB,y) = chi(A,X1)|Measurable-Y-section(E,y) by A9,PARTFUN1:5;
    hence M1.(A /\ Measurable-Y-section(E,y)) * chi(B,X2).y
      = Integral(M1,ProjPMap2(CAB,y)) by A8,Th20;
   end;
   suppose not y in B; then
A13:chi(B,X2).y = 0 by FUNCT_3:def 3; then
A14:M1.(A /\ Measurable-Y-section(E,y)) * chi(B,X2).y = 0;

A15:{} is Element of S1 by PROB_1:4;

A16:dom(ProjPMap2(CAB,y))
      = Measurable-Y-section(E,y) by A1,MEASUR11:def 7
      .= dom (chi({},X1)|Measurable-Y-section(E,y)) by Th18;
    for x be Element of X1 st x in dom(ProjPMap2(CAB,y)) holds
      ProjPMap2(CAB,y).x = (chi({},X1)|Measurable-Y-section(E,y)).x
    proof
     let x be Element of X1;
     assume A17: x in dom(ProjPMap2(CAB,y)); then
     x in Measurable-Y-section(E,y) by A1,MEASUR11:def 7; then
A18: (chi({},X1)|Measurable-Y-section(E,y)).x = chi({},X1).x by FUNCT_1:49;
     [x,y] in E by A1,A17,Th25; then
     y in X-section(E,x) by Th25; then
     y in Measurable-X-section(E,x) by MEASUR11:def 6; then
A19: (chi(B,X2)|Measurable-X-section(E,x)).y = chi(B,X2).y by FUNCT_1:49;
     ProjPMap2(CAB,y).x
      = (chi(B,X2)|Measurable-X-section(E,x)).y * chi(A,X1).x by A2; then
     ProjPMap2(CAB,y).x = 0 by A13,A19;
     hence ProjPMap2(CAB,y).x = (chi({},X1)|Measurable-Y-section(E,y)).x
       by A18,FUNCT_3:def 3;
    end; then
    ProjPMap2(CAB,y) = chi({},X1)|Measurable-Y-section(E,y)
      by A16,PARTFUN1:5; then
    Integral(M1,ProjPMap2(CAB,y)) = M1.({} /\ Measurable-Y-section(E,y))
      by A15,Th20;
    hence M1.(A /\ Measurable-Y-section(E,y)) * chi(B,X2).y
      = Integral(M1,ProjPMap2(CAB,y)) by A14,VALUED_0:def 19;
   end;
end;

theorem Th40:
for X1,X2 be non empty set, x be Element of X1, y be Element of X2,
 f be PartFunc of [:X1,X2:],ExtREAL, er be ExtReal holds
  ( [x,y] in dom f & f.(x,y) = er
       iff y in dom(ProjPMap1(f,x)) & (ProjPMap1(f,x)).y = er ) &
  ( [x,y] in dom f & f.(x,y) = er
       iff x in dom(ProjPMap2(f,y)) & (ProjPMap2(f,y)).x = er )
proof
   let X1,X2 be non empty set, x be Element of X1, y be Element of X2,
   f be PartFunc of [:X1,X2:],ExtREAL, a be ExtReal;
   hereby assume that
A2: [x,y] in dom f and
A3: f.(x,y) = a;
    y in X-section(dom f,x) by A2,Th25;
    hence y in dom(ProjPMap1(f,x)) by Def3;
    hence ProjPMap1(f,x).y = a by A3,Th26;
   end;

   hereby assume that
A4: y in dom(ProjPMap1(f,x)) and
A5: ProjPMap1(f,x).y = a;
   y in X-section(dom f,x) by A4,Def3;
   hence [x,y] in dom f by Th25;
   thus f.(x,y) = a by A4,A5,Th26;
   end;

   hereby assume that
A6: [x,y] in dom f and
A7: f.(x,y) = a;
    x in Y-section(dom f,y) by A6,Th25;
    hence x in dom(ProjPMap2(f,y)) by Def4;
    hence ProjPMap2(f,y).x = a by A7,Th26;
   end;

   assume that
A8: x in dom(ProjPMap2(f,y)) and
A9: ProjPMap2(f,y).x = a;
   x in Y-section(dom f,y) by A8,Def4;
   hence [x,y] in dom f by Th25;
   thus f.(x,y) = a by A8,A9,Th26;
end;

theorem Th41:
for X1,X2 be non empty set, A,Z be set, f be PartFunc of [:X1,X2:],Z,
 x be Element of X1 holds X-section(f"A,x) = ProjPMap1(f,x)"A
proof
    let X,Y be non empty set, A,Z be set, f be PartFunc of [:X,Y:],Z,
    x be Element of X;
    reconsider E = f"A as Subset of [:X,Y:];
    now let y be object;
     assume y in X-section(f"A,x); then
     y in {y where y is Element of Y: [x,y] in E} by MEASUR11:def 4; then
     consider y1 be Element of Y such that
A1:   y1 = y & [x,y1] in E;
A2:  [x,y] in dom f & f.[x,y] in A by A1,FUNCT_1:def 7; then
     y in {y where y is Element of Y: [x,y] in dom f} by A1; then
     y in X-section(dom f,x) by MEASUR11:def 4; then
A3:  y in dom(ProjPMap1(f,x)) by Def3;

     ProjPMap1(f,x).y1 = f.(x,y1) by A1,A2,Def3;
     hence y in ProjPMap1(f,x)"A by A1,A2,A3,FUNCT_1:def 7;
    end; then
A4: X-section(f"A,x) c= ProjPMap1(f,x)"A;

    now let y be object;
     assume y in ProjPMap1(f,x)"A; then
A5:  y in dom(ProjPMap1(f,x)) & ProjPMap1(f,x).y in A by FUNCT_1:def 7; then
     y in X-section(dom f,x) by Def3; then
     y in {y where y is Element of Y: [x,y] in dom f} by MEASUR11:def 4; then
     consider y1 be Element of Y such that
A6:   y1 = y & [x,y1] in dom f;

     f.(x,y1) in A by A5,A6,Def3; then
     [x,y1] in f"A by A6,FUNCT_1:def 7; then
     y in {y where y is Element of Y: [x,y] in f"A} by A6;
     hence y in X-section(f"A,x) by MEASUR11:def 4;
    end; then
    ProjPMap1(f,x)"A c= X-section(f"A,x);
    hence X-section(f"A,x) = ProjPMap1(f,x)"A by A4;
end;

theorem Th42:
for X1,X2 be non empty set, A,Z be set, f be PartFunc of [:X1,X2:],Z,
 y be Element of X2 holds Y-section(f"A,y) = ProjPMap2(f,y)"A
proof
    let X,Y be non empty set, A,Z be set, f be PartFunc of [:X,Y:],Z,
    y be Element of Y;
    reconsider E = f"A as Subset of [:X,Y:];
    now let x be object;
     assume x in Y-section(f"A,y); then
     x in {x where x is Element of X: [x,y] in E} by MEASUR11:def 5; then
     consider x1 be Element of X such that
A1:   x1 = x & [x1,y] in E;
A2:  [x,y] in dom f & f.[x,y] in A by A1,FUNCT_1:def 7; then
     x in {x where x is Element of X: [x,y] in dom f} by A1; then
     x in Y-section(dom f,y) by MEASUR11:def 5; then
A3:  x in dom(ProjPMap2(f,y)) by Def4;

     ProjPMap2(f,y).x1 = f.(x1,y) by A1,A2,Def4;
     hence x in ProjPMap2(f,y)"A by A1,A2,A3,FUNCT_1:def 7;
    end; then
A4: Y-section(f"A,y) c= ProjPMap2(f,y)"A;

    now let x be object;
     assume x in ProjPMap2(f,y)"A; then
A5:  x in dom(ProjPMap2(f,y)) & ProjPMap2(f,y).x in A by FUNCT_1:def 7; then
     x in Y-section(dom f,y) by Def4; then
     x in {x where x is Element of X: [x,y] in dom f} by MEASUR11:def 5; then
     consider x1 be Element of X such that
A6:   x1 = x & [x1,y] in dom f;

     f.(x1,y) in A by A5,A6,Def4; then

     [x1,y] in f"A by A6,FUNCT_1:def 7; then
     x in {x where x is Element of X: [x,y] in f"A} by A6;
     hence x in Y-section(f"A,y) by MEASUR11:def 5;
    end; then
    ProjPMap2(f,y)"A c= Y-section(f"A,y);
    hence Y-section(f"A,y) = ProjPMap2(f,y)"A by A4;
end;

theorem Th43:
for X1,X2 be non empty set, A,B be Subset of [:X1,X2:], p be set holds
  X-section(A \ B,p) = X-section(A,p) \ X-section(B,p)
& Y-section(A \ B,p) = Y-section(A,p) \ Y-section(B,p)
proof
   let X1,X2 be non empty set, E1,E2 be Subset of [:X1,X2:], p be set;
   now let q be set;
    assume q in X-section(E1 \ E2,p); then
    q in {y where y is Element of X2: [p,y] in E1 \ E2} by MEASUR11:def 4; then
A1: ex y be Element of X2 st q = y & [p,y] in E1 \ E2; then
    [p,q] in E1 & not [p,q] in E2 by XBOOLE_0:def 5; then
    q in {y where y is Element of X2: [p,y] in E1} by A1; then
A3: q in X-section(E1,p) by MEASUR11:def 4;
    now assume q in X-section(E2,p); then
     q in {y where y is Element of X2: [p,y] in E2} by MEASUR11:def 4; then
     ex y be Element of X2 st q = y & [p,y] in E2;
     hence contradiction by A1,XBOOLE_0:def 5;
    end;
    hence q in X-section(E1,p) \ X-section(E2,p) by A3,XBOOLE_0:def 5;
   end; then
A4:X-section(E1 \ E2,p) c= X-section(E1,p) \ X-section(E2,p);

   now let q be set;
    assume q in X-section(E1,p) \ X-section(E2,p); then
    q in X-section(E1,p) & not q in X-section(E2,p) by XBOOLE_0:def 5; then
A5: q in {y where y is Element of X2: [p,y] in E1} &
    not q in {y where y is Element of X2: [p,y] in E2} by MEASUR11:def 4; then
A6: ex y be Element of X2 st q = y & [p,y] in E1; then
    not [p,q] in E2 by A5; then
    [p,q] in E1 \ E2 by A6,XBOOLE_0:def 5; then
    q in {y where y is Element of X2: [p,y] in E1 \ E2} by A6;
    hence q in X-section(E1 \ E2,p) by MEASUR11:def 4;
   end; then
   X-section(E1,p) \ X-section(E2,p) c= X-section(E1 \ E2,p);
   hence X-section(E1 \ E2,p) = X-section(E1,p) \ X-section(E2,p) by A4;

   now let q be set;
    assume q in Y-section(E1 \ E2,p); then
    q in {x where x is Element of X1: [x,p] in E1 \ E2} by MEASUR11:def 5; then
B1: ex x be Element of X1 st q = x & [x,p] in E1 \ E2; then
    [q,p] in E1 & not [q,p] in E2 by XBOOLE_0:def 5; then
    q in {x where x is Element of X1: [x,p] in E1} by B1; then
B3: q in Y-section(E1,p) by MEASUR11:def 5;
    now assume q in Y-section(E2,p); then
     q in {x where x is Element of X1: [x,p] in E2} by MEASUR11:def 5; then
     ex x be Element of X1 st q = x & [x,p] in E2;
     hence contradiction by B1,XBOOLE_0:def 5;
    end;
    hence q in Y-section(E1,p) \ Y-section(E2,p) by B3,XBOOLE_0:def 5;
   end; then
B4:Y-section(E1 \ E2,p) c= Y-section(E1,p) \ Y-section(E2,p);

   now let q be set;
    assume q in Y-section(E1,p) \ Y-section(E2,p); then
    q in Y-section(E1,p) & not q in Y-section(E2,p) by XBOOLE_0:def 5; then
B5: q in {x where x is Element of X1: [x,p] in E1} &
    not q in {x where x is Element of X1: [x,p] in E2} by MEASUR11:def 5; then
B6: ex x be Element of X1 st q = x & [x,p] in E1; then
    not [q,p] in E2 by B5; then
    [q,p] in E1 \ E2 by B6,XBOOLE_0:def 5; then
    q in {x where x is Element of X1: [x,p] in E1 \ E2} by B6;
    hence q in Y-section(E1 \ E2,p) by MEASUR11:def 5;
   end; then
   Y-section(E1,p) \ Y-section(E2,p) c= Y-section(E1 \ E2,p);
   hence Y-section(E1 \ E2,p) = Y-section(E1,p) \ Y-section(E2,p) by B4;
end;

theorem Th44:
for X1,X2 be non empty set, x be Element of X1, y be Element of X2,
 f1,f2 be PartFunc of [:X1,X2:],ExtREAL holds
   ProjPMap1(f1+f2,x) = ProjPMap1(f1,x) + ProjPMap1(f2,x)
 & ProjPMap1(f1-f2,x) = ProjPMap1(f1,x) - ProjPMap1(f2,x)
 & ProjPMap2(f1+f2,y) = ProjPMap2(f1,y) + ProjPMap2(f2,y)
 & ProjPMap2(f1-f2,y) = ProjPMap2(f1,y) - ProjPMap2(f2,y)
proof
   let X1,X2 be non empty set, x be Element of X1, y be Element of X2,
   f1,f2 be PartFunc of [:X1,X2:],ExtREAL;
A1:dom(f1+f2) = (dom f1 /\ dom f2)
    \ ((f1"{-infty} /\ f2"{+infty}) \/ (f1"{+infty} /\ f2"{-infty}))
      by MESFUNC1:def 3;
B1:dom(f1-f2) = (dom f1 /\ dom f2)
    \ ((f1"{+infty} /\ f2"{+infty}) \/ (f1"{-infty} /\ f2"{-infty}))
      by MESFUNC1:def 4;

A2:dom (ProjPMap1(f1,x)) = X-section(dom f1,x) &
   dom (ProjPMap1(f2,x)) = X-section(dom f2,x) &
   dom (ProjPMap2(f1,y)) = Y-section(dom f1,y) &
   dom (ProjPMap2(f2,y)) = Y-section(dom f2,y) by Def3,Def4;

A3:X-section(f1"{-infty},x) = ProjPMap1(f1,x)"{-infty} &
   X-section(f1"{+infty},x) = ProjPMap1(f1,x)"{+infty} &
   X-section(f2"{-infty},x) = ProjPMap1(f2,x)"{-infty} &
   X-section(f2"{+infty},x) = ProjPMap1(f2,x)"{+infty} &
   Y-section(f1"{-infty},y) = ProjPMap2(f1,y)"{-infty} &
   Y-section(f1"{+infty},y) = ProjPMap2(f1,y)"{+infty} &
   Y-section(f2"{-infty},y) = ProjPMap2(f2,y)"{-infty} &
   Y-section(f2"{+infty},y) = ProjPMap2(f2,y)"{+infty} by Th42,Th41;

A4:dom(ProjPMap1(f1+f2,x))
    = X-section(dom(f1+f2),x) by Def3
   .= X-section(dom f1 /\ dom f2,x)
     \ X-section( (f1"{-infty} /\ f2"{+infty})
           \/ (f1"{+infty} /\ f2"{-infty}),x ) by A1,Th43
   .= (X-section(dom f1,x) /\ X-section(dom f2,x))
     \ X-section( (f1"{-infty} /\ f2"{+infty})
           \/ (f1"{+infty} /\ f2"{-infty}),x ) by MEASUR11:27
   .= ( dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x)) )
     \ ( X-section(f1"{-infty} /\ f2"{+infty},x)
           \/ X-section(f1"{+infty} /\ f2"{-infty},x) ) by A2,MEASUR11:26; then
A5:dom(ProjPMap1(f1+f2,x))
    = ( dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x)) )
     \ ( (X-section(f1"{-infty},x) /\ X-section(f2"{+infty},x))
           \/ X-section(f1"{+infty} /\ f2"{-infty},x) ) by MEASUR11:27
   .= ( dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x)) )
     \ ( (ProjPMap1(f1,x)"{-infty} /\ ProjPMap1(f2,x)"{+infty})
           \/ ( X-section(f1"{+infty},x) /\ X-section(f2"{-infty},x) ) )
             by A3,MEASUR11:27
   .= dom(ProjPMap1(f1,x) + ProjPMap1(f2,x)) by A3,MESFUNC1:def 3;

   for y be Element of X2 st y in dom(ProjPMap1(f1+f2,x)) holds
    ProjPMap1(f1+f2,x).y = (ProjPMap1(f1,x) + ProjPMap1(f2,x)).y
   proof
    let y be Element of X2;
    assume A6: y in dom ProjPMap1(f1+f2,x);
    reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
A7: ProjPMap1(f1+f2,x).y = (f1+f2).(x,y) by A6,Th26; then
    [x,y] in dom(f1+f2) by A6,Th40; then
A8: ProjPMap1(f1+f2,x).y = f1.z + f2.z by A7,MESFUNC1:def 3;
    y in dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x))
      by A4,A6,XBOOLE_0:def 5; then
    y in dom (ProjPMap1(f1,x)) & y in dom (ProjPMap1(f2,x))
      by XBOOLE_0:def 4; then
    ProjPMap1(f1,x).y = f1.(x,y) & ProjPMap1(f2,x).y = f2.(x,y)
      by Th26;
    hence ProjPMap1(f1+f2,x).y = (ProjPMap1(f1,x) + ProjPMap1(f2,x)).y
      by A8,A5,A6,MESFUNC1:def 3;
   end;
   hence ProjPMap1(f1+f2,x) = ProjPMap1(f1,x) + ProjPMap1(f2,x)
     by A5,PARTFUN1:5;

B4:dom(ProjPMap1(f1-f2,x))
    = X-section(dom(f1-f2),x) by Def3
   .= X-section(dom f1 /\ dom f2,x)
     \ X-section( (f1"{+infty} /\ f2"{+infty})
           \/ (f1"{-infty} /\ f2"{-infty}),x ) by B1,Th43
   .= (X-section(dom f1,x) /\ X-section(dom f2,x))
     \ X-section( (f1"{+infty} /\ f2"{+infty})
           \/ (f1"{-infty} /\ f2"{-infty}),x ) by MEASUR11:27
   .= ( dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x)) )
     \ ( X-section(f1"{+infty} /\ f2"{+infty},x)
           \/ X-section(f1"{-infty} /\ f2"{-infty},x) ) by A2,MEASUR11:26; then
B5:dom(ProjPMap1(f1-f2,x))
    = ( dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x)) )
     \ ( (X-section(f1"{+infty},x) /\ X-section(f2"{+infty},x))
           \/ X-section(f1"{-infty} /\ f2"{-infty},x) ) by MEASUR11:27
   .= ( dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x)) )
     \ ( (ProjPMap1(f1,x)"{+infty} /\ ProjPMap1(f2,x)"{+infty})
           \/ ( X-section(f1"{-infty},x) /\ X-section(f2"{-infty},x) ) )
             by A3,MEASUR11:27
   .= dom(ProjPMap1(f1,x) - ProjPMap1(f2,x)) by A3,MESFUNC1:def 4;

   for y be Element of X2 st y in dom(ProjPMap1(f1-f2,x)) holds
    ProjPMap1(f1-f2,x).y = (ProjPMap1(f1,x) - ProjPMap1(f2,x)).y
   proof
    let y be Element of X2;
    assume A6: y in dom ProjPMap1(f1-f2,x);
    reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
A7: ProjPMap1(f1-f2,x).y = (f1-f2).(x,y) by A6,Th26; then
    [x,y] in dom(f1-f2) by A6,Th40; then
A8: ProjPMap1(f1-f2,x).y = f1.z - f2.z by A7,MESFUNC1:def 4;
    y in dom (ProjPMap1(f1,x)) /\ dom (ProjPMap1(f2,x))
      by B4,A6,XBOOLE_0:def 5; then
    y in dom (ProjPMap1(f1,x)) & y in dom (ProjPMap1(f2,x))
      by XBOOLE_0:def 4; then
    ProjPMap1(f1,x).y = f1.(x,y) & ProjPMap1(f2,x).y = f2.(x,y)
      by Th26;
    hence ProjPMap1(f1-f2,x).y = (ProjPMap1(f1,x) - ProjPMap1(f2,x)).y
      by A8,B5,A6,MESFUNC1:def 4;
   end;
   hence ProjPMap1(f1-f2,x) = ProjPMap1(f1,x) - ProjPMap1(f2,x)
     by B5,PARTFUN1:5;

C4:dom(ProjPMap2(f1+f2,y))
    = Y-section(dom(f1+f2),y) by Def4
   .= Y-section(dom f1 /\ dom f2,y)
     \ Y-section( (f1"{-infty} /\ f2"{+infty})
           \/ (f1"{+infty} /\ f2"{-infty}),y ) by A1,Th43
   .= (Y-section(dom f1,y) /\ Y-section(dom f2,y))
     \ Y-section( (f1"{-infty} /\ f2"{+infty})
           \/ (f1"{+infty} /\ f2"{-infty}),y ) by MEASUR11:27
   .= ( dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y)) )
     \ ( Y-section(f1"{-infty} /\ f2"{+infty},y)
           \/ Y-section(f1"{+infty} /\ f2"{-infty},y) ) by A2,MEASUR11:26; then
C5:dom(ProjPMap2(f1+f2,y))
    = ( dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y)) )
     \ ( (Y-section(f1"{-infty},y) /\ Y-section(f2"{+infty},y))
           \/ Y-section(f1"{+infty} /\ f2"{-infty},y) ) by MEASUR11:27
   .= ( dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y)) )
     \ ( (ProjPMap2(f1,y)"{-infty} /\ ProjPMap2(f2,y)"{+infty})
           \/ ( Y-section(f1"{+infty},y) /\ Y-section(f2"{-infty},y) ) )
             by A3,MEASUR11:27
   .= dom(ProjPMap2(f1,y) + ProjPMap2(f2,y)) by A3,MESFUNC1:def 3;

   for x be Element of X1 st x in dom(ProjPMap2(f1+f2,y)) holds
    ProjPMap2(f1+f2,y).x = (ProjPMap2(f1,y) + ProjPMap2(f2,y)).x
   proof
    let x be Element of X1;
    assume C6: x in dom ProjPMap2(f1+f2,y);
    reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
C7: ProjPMap2(f1+f2,y).x = (f1+f2).(x,y) by C6,Th26; then
    [x,y] in dom(f1+f2) by C6,Th40; then
C8: ProjPMap2(f1+f2,y).x = f1.z + f2.z by C7,MESFUNC1:def 3;
    x in dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y))
      by C4,C6,XBOOLE_0:def 5; then
    x in dom (ProjPMap2(f1,y)) & x in dom (ProjPMap2(f2,y))
      by XBOOLE_0:def 4; then
    ProjPMap2(f1,y).x = f1.(x,y) & ProjPMap2(f2,y).x = f2.(x,y)
      by Th26;
    hence ProjPMap2(f1+f2,y).x = (ProjPMap2(f1,y) + ProjPMap2(f2,y)).x
      by C8,C5,C6,MESFUNC1:def 3;
   end;
   hence ProjPMap2(f1+f2,y) = ProjPMap2(f1,y) + ProjPMap2(f2,y)
     by C5,PARTFUN1:5;

D4:dom(ProjPMap2(f1-f2,y))
    = Y-section(dom(f1-f2),y) by Def4
   .= Y-section(dom f1 /\ dom f2,y)
     \ Y-section( (f1"{+infty} /\ f2"{+infty})
           \/ (f1"{-infty} /\ f2"{-infty}),y ) by B1,Th43
   .= (Y-section(dom f1,y) /\ Y-section(dom f2,y))
     \ Y-section( (f1"{+infty} /\ f2"{+infty})
           \/ (f1"{-infty} /\ f2"{-infty}),y ) by MEASUR11:27
   .= ( dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y)) )
     \ ( Y-section(f1"{+infty} /\ f2"{+infty},y)
           \/ Y-section(f1"{-infty} /\ f2"{-infty},y) ) by A2,MEASUR11:26; then
D5:dom(ProjPMap2(f1-f2,y))
    = ( dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y)) )
     \ ( (Y-section(f1"{+infty},y) /\ Y-section(f2"{+infty},y))
           \/ Y-section(f1"{-infty} /\ f2"{-infty},y) ) by MEASUR11:27
   .= ( dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y)) )
     \ ( (ProjPMap2(f1,y)"{+infty} /\ ProjPMap2(f2,y)"{+infty})
           \/ ( Y-section(f1"{-infty},y) /\ Y-section(f2"{-infty},y) ) )
             by A3,MEASUR11:27
   .= dom(ProjPMap2(f1,y) - ProjPMap2(f2,y)) by A3,MESFUNC1:def 4;

   for x be Element of X1 st x in dom(ProjPMap2(f1-f2,y)) holds
    ProjPMap2(f1-f2,y).x = (ProjPMap2(f1,y) - ProjPMap2(f2,y)).x
   proof
    let x be Element of X1;
    assume D6: x in dom ProjPMap2(f1-f2,y);
    reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
D7: ProjPMap2(f1-f2,y).x = (f1-f2).(x,y) by D6,Th26; then
    [x,y] in dom(f1-f2) by D6,Th40; then
D8: ProjPMap2(f1-f2,y).x = f1.z - f2.z by D7,MESFUNC1:def 4;
    x in dom (ProjPMap2(f1,y)) /\ dom (ProjPMap2(f2,y))
      by D4,D6,XBOOLE_0:def 5; then
    x in dom (ProjPMap2(f1,y)) & x in dom (ProjPMap2(f2,y))
      by XBOOLE_0:def 4; then
    ProjPMap2(f1,y).x = f1.(x,y) & ProjPMap2(f2,y).x = f2.(x,y)
      by Th26;
    hence ProjPMap2(f1-f2,y).x = (ProjPMap2(f1,y) - ProjPMap2(f2,y)).x
      by D8,D5,D6,MESFUNC1:def 4;
   end;
   hence ProjPMap2(f1-f2,y) = ProjPMap2(f1,y) - ProjPMap2(f2,y)
     by D5,PARTFUN1:5;
end;

Lm4:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
  E be Element of sigma measurable_rectangles(S1,S2)
 st E c= dom f & f is E-measurable
 holds
  ProjPMap1(max+f,x) is (Measurable-X-section(E,x))-measurable
& ProjPMap2(max+f,y) is (Measurable-Y-section(E,y))-measurable
& ProjPMap1(max-f,x) is (Measurable-X-section(E,x))-measurable
& ProjPMap2(max-f,y) is (Measurable-Y-section(E,y))-measurable
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
   A be Element of sigma measurable_rectangles(S1,S2);
   assume that
A1: A c= dom f and
A2: f is A-measurable;

A3:max+f is nonnegative & max-f is nonnegative by MESFUN11:5;
A4:max+f is A-measurable by A2,MESFUNC2:25;
A5:max-f is A-measurable by A1,A2,MESFUNC2:26;

   dom(max+f) = dom f by MESFUNC2:def 2;
   hence ProjPMap1(max+f,x) is (Measurable-X-section(A,x))-measurable
       & ProjPMap2(max+f,y) is (Measurable-Y-section(A,y))-measurable
     by A1,A3,A4,Lm3;

   dom(max-f) = dom f by MESFUNC2:def 3;
   hence ProjPMap1(max-f,x) is (Measurable-X-section(A,x))-measurable
       & ProjPMap2(max-f,y) is (Measurable-Y-section(A,y))-measurable
     by A1,A3,A5,Lm3;
end;

theorem Th45:
for X1,X2 be non empty set, f be PartFunc of [:X1,X2:],ExtREAL,
 x be Element of X1 holds
  ProjPMap1(max+f,x) = max+(ProjPMap1(f,x))
& ProjPMap1(max-f,x) = max-(ProjPMap1(f,x))
proof
   let X1,X2 be non empty set, f be PartFunc of [:X1,X2:],ExtREAL,
   x be Element of X1;
   dom(ProjPMap1(max+f,x)) = X-section(dom(max+f),x)
 & dom(ProjPMap1(max-f,x)) = X-section(dom(max-f),x) by Def3; then
A1:dom(ProjPMap1(max+f,x)) = X-section(dom f,x)
 & dom(ProjPMap1(max-f,x)) = X-section(dom f,x) by MESFUNC2:def 2,def 3;
   dom(max+(ProjPMap1(f,x))) = dom(ProjPMap1(f,x))
 & dom(max-(ProjPMap1(f,x))) = dom(ProjPMap1(f,x))
     by MESFUNC2:def 2,def 3; then
A2:dom(max+(ProjPMap1(f,x))) = X-section(dom f,x)
 & dom(max-(ProjPMap1(f,x))) = X-section(dom f,x) by Def3;
   for y be Element of X2 st y in dom(ProjPMap1(max+f,x))
    holds (ProjPMap1(max+f,x)).y = (max+(ProjPMap1(f,x))).y
   proof
    let y be Element of X2;
    assume A3: y in dom(ProjPMap1(max+f,x)); then
    y in {y where y is Element of X2: [x,y] in dom f}
       by A1,MEASUR11:def 4; then
A4: ex y1 be Element of X2 st y1 = y & [x,y1] in dom f;

    set z = [x,y];
A5: [x,y] in dom(max+f) by A4,MESFUNC2:def 2; then
A6: (ProjPMap1(max+f,x)).y = (max+f).(x,y) by Def3
      .= max(f.z,0) by A5,MESFUNC2:def 2;

    ProjPMap1(f,x).y = f.(x,y) by A4,Def3;
    hence thesis by A6,A1,A3,A2,MESFUNC2:def 2;
   end;
   hence ProjPMap1(max+f,x) = max+(ProjPMap1(f,x)) by A1,A2,PARTFUN1:5;

   for y be Element of X2 st y in dom(ProjPMap1(max-f,x))
    holds (ProjPMap1(max-f,x)).y = (max-(ProjPMap1(f,x))).y
   proof
    let y be Element of X2;
    assume A8: y in dom(ProjPMap1(max-f,x)); then
    y in {y where y is Element of X2: [x,y] in dom f}
      by A1,MEASUR11:def 4; then
A9: ex y1 be Element of X2 st y1 = y & [x,y1] in dom f;

    set z = [x,y];
A10:[x,y] in dom(max-f) by A9,MESFUNC2:def 3; then
A11:(ProjPMap1(max-f,x)).y = (max-f).(x,y) by Def3
      .= max(-(f.z),0) by A10,MESFUNC2:def 3;

    ProjPMap1(f,x).y = f.(x,y) by A9,Def3;
    hence thesis by A11,A1,A2,A8,MESFUNC2:def 3;
   end;
   hence ProjPMap1(max-f,x) = max-(ProjPMap1(f,x)) by A1,A2,PARTFUN1:5;
end;

theorem Th46:
for X1,X2 be non empty set, f be PartFunc of [:X1,X2:],ExtREAL,
 y be Element of X2 holds
  ProjPMap2(max+f,y) = max+(ProjPMap2(f,y))
& ProjPMap2(max-f,y) = max-(ProjPMap2(f,y))
proof
   let X1,X2 be non empty set, f be PartFunc of [:X1,X2:],ExtREAL,
   y be Element of X2;
   dom(ProjPMap2(max+f,y)) = Y-section(dom(max+f),y)
 & dom(ProjPMap2(max-f,y)) = Y-section(dom(max-f),y) by Def4; then
A1:dom(ProjPMap2(max+f,y)) = Y-section(dom f,y)
 & dom(ProjPMap2(max-f,y)) = Y-section(dom f,y) by MESFUNC2:def 2,def 3;
   dom(max+(ProjPMap2(f,y))) = dom(ProjPMap2(f,y))
 & dom(max-(ProjPMap2(f,y))) = dom(ProjPMap2(f,y))
     by MESFUNC2:def 2,def 3; then
A2:dom(max+(ProjPMap2(f,y))) = Y-section(dom f,y)
 & dom(max-(ProjPMap2(f,y))) = Y-section(dom f,y) by Def4;
   for x be Element of X1 st x in dom(ProjPMap2(max+f,y))
    holds (ProjPMap2(max+f,y)).x = (max+(ProjPMap2(f,y))).x
   proof
    let x be Element of X1;
    assume A3: x in dom(ProjPMap2(max+f,y)); then
    x in {x where x is Element of X1: [x,y] in dom f}
       by A1,MEASUR11:def 5; then
A4: ex x1 be Element of X1 st x1 = x & [x1,y] in dom f;
    set z = [x,y];
A5: [x,y] in dom(max+f) by A4,MESFUNC2:def 2; then
A6: (ProjPMap2(max+f,y)).x = (max+f).(x,y) by Def4
      .= max(f.z,0) by A5,MESFUNC2:def 2;
    ProjPMap2(f,y).x = f.(x,y) by A4,Def4;
    hence thesis by A6,A1,A3,A2,MESFUNC2:def 2;
   end;
   hence ProjPMap2(max+f,y) = max+(ProjPMap2(f,y)) by A1,A2,PARTFUN1:5;

   for x be Element of X1 st x in dom(ProjPMap2(max-f,y))
    holds (ProjPMap2(max-f,y)).x = (max-(ProjPMap2(f,y))).x
   proof
    let x be Element of X1;
    assume A8: x in dom(ProjPMap2(max-f,y)); then
    x in {x where x is Element of X1: [x,y] in dom f}
      by A1,MEASUR11:def 5; then
A9: ex x1 be Element of X1 st x1 = x & [x1,y] in dom f;
    set z = [x,y];
A10:[x,y] in dom(max-f) by A9,MESFUNC2:def 3; then
A11:(ProjPMap2(max-f,y)).x = (max-f).(x,y) by Def4
      .= max(-(f.z),0) by A10,MESFUNC2:def 3;
    ProjPMap2(f,y).x = f.(x,y) by A9,Def4;
    hence thesis by A11,A1,A8,A2,MESFUNC2:def 3;
   end;
   hence ProjPMap2(max-f,y) = max-(ProjPMap2(f,y)) by A1,A2,PARTFUN1:5;
end;

theorem Th47:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
  E be Element of sigma measurable_rectangles(S1,S2)
 st E c= dom f & f is E-measurable
 holds ProjPMap1(f,x) is (Measurable-X-section(E,x))-measurable &
       ProjPMap2(f,y) is (Measurable-Y-section(E,y))-measurable
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   f be PartFunc of [:X1,X2:],ExtREAL, x be Element of X1, y be Element of X2,
   A be Element of sigma measurable_rectangles(S1,S2);
   assume that
A1: A c= dom f and
A2: f is A-measurable;
   X-section(A,x) c= X-section(dom f,x)
 & Y-section(A,y) c= Y-section(dom f,y) by A1,MEASUR11:20,21; then
   Measurable-X-section(A,x) c= X-section(dom f,x)
 & Measurable-Y-section(A,y) c= Y-section(dom f,y)
   by MEASUR11:def 6,def 7; then
A3:Measurable-X-section(A,x) c= dom(ProjPMap1(f,x))
 & Measurable-Y-section(A,y) c= dom(ProjPMap2(f,y)) by Def3,Def4;
   ProjPMap1(max+f,x) is (Measurable-X-section(A,x))-measurable
 & ProjPMap2(max+f,y) is (Measurable-Y-section(A,y))-measurable
 & ProjPMap1(max-f,x) is (Measurable-X-section(A,x))-measurable
 & ProjPMap2(max-f,y) is (Measurable-Y-section(A,y))-measurable
    by A1,A2,Lm4; then
   max+(ProjPMap1(f,x)) is (Measurable-X-section(A,x))-measurable
 & max+(ProjPMap2(f,y)) is (Measurable-Y-section(A,y))-measurable
 & max-(ProjPMap1(f,x)) is (Measurable-X-section(A,x))-measurable
 & max-(ProjPMap2(f,y)) is (Measurable-Y-section(A,y))-measurable
    by Th45,Th46;
   hence thesis by A3,MESFUN11:10;
end;

definition
  let X1,X2,Y be non empty set;
  let F be Functional_Sequence of [:X1,X2:],Y;
  let x be Element of X1;
  func ProjPMap1(F,x) -> Functional_Sequence of X2,Y means :Def5:
 for n be Nat holds it.n = ProjPMap1(F.n,x);
existence
proof
   defpred P[Nat,object] means $2 = ProjPMap1(F.$1,x);

A1:for n be Element of NAT ex f be Element of PFuncs(X2,Y) st P[n,f]
   proof
    let n be Element of NAT;
    reconsider f = ProjPMap1(F.n,x) as Element of PFuncs(X2,Y)
      by PARTFUN1:45;
    take f;
    thus thesis;
   end;

   consider IT be Function of NAT,PFuncs(X2,Y) such that
A2: for n be Element of NAT holds P[n,IT.n] from FUNCT_2:sch 3(A1);

   take IT;
   hereby let n be Nat;
    n is Element of NAT by ORDINAL1:def 12;
    hence IT.n = ProjPMap1(F.n,x) by A2;
   end;
end;
uniqueness
proof
   let F1,F2 be Functional_Sequence of X2,Y;
   assume that
A1: for n be Nat holds F1.n = ProjPMap1(F.n,x) and
A2: for n be Nat holds F2.n = ProjPMap1(F.n,x);
   now let n be Element of NAT;
    F1.n = ProjPMap1(F.n,x) by A1;
    hence F1.n = F2.n by A2;
   end;
   hence thesis by FUNCT_2:def 8;
end;
end;

definition
  let X1,X2,Y be non empty set;
  let F be Functional_Sequence of [:X1,X2:],Y;
  let y be Element of X2;
  func ProjPMap2(F,y) -> Functional_Sequence of X1,Y means :Def6:
 for n be Nat holds it.n = ProjPMap2(F.n,y);
existence
proof
   defpred P[Nat,object] means $2 = ProjPMap2(F.$1,y);

A1:for n be Element of NAT ex f be Element of PFuncs(X1,Y) st P[n,f]
   proof
    let n be Element of NAT;
    reconsider f = ProjPMap2(F.n,y) as Element of PFuncs(X1,Y)
      by PARTFUN1:45;
    take f;
    thus thesis;
   end;

   consider IT be Function of NAT,PFuncs(X1,Y) such that
A2: for n be Element of NAT holds P[n,IT.n] from FUNCT_2:sch 3(A1);

   take IT;
   hereby let n be Nat;
    n is Element of NAT by ORDINAL1:def 12;
    hence IT.n = ProjPMap2(F.n,y) by A2;
   end;
end;
uniqueness
proof
   let F1,F2 be Functional_Sequence of X1,Y;
   assume that
A1: for n be Nat holds F1.n = ProjPMap2(F.n,y) and
A2: for n be Nat holds F2.n = ProjPMap2(F.n,y);
   now let n be Element of NAT;
    F1.n = ProjPMap2(F.n,y) by A1;
    hence F1.n = F2.n by A2;
   end;
   hence thesis by FUNCT_2:def 8;
end;
end;

theorem Th48:
for X1,X2 be non empty set, E be Subset of [:X1,X2:],
 x be Element of X1, y be Element of X2 holds
   ProjPMap1(chi(E,[:X1,X2:]),x) = chi(X-section(E,x),X2) &
   ProjPMap2(chi(E,[:X1,X2:]),y) = chi(Y-section(E,y),X1)
proof
   let X1,X2 be non empty set, E be Subset of [:X1,X2:],
   x be Element of X1, y be Element of X2;

   for y be Element of X2 holds
     ProjMap1(chi(E,[:X1,X2:]),x).y = chi(X-section(E,x),X2).y
   proof
    let y be Element of X2;
A1:ProjMap1(chi(E,[:X1,X2:]),x).y = chi(E,[:X1,X2:]).(x,y)
     by MESFUNC9:def 6; then
A2:[x,y] in E implies ProjMap1(chi(E,[:X1,X2:]),x).y = 1 by FUNCT_3:def 3;

   [x,y] is Element of [:X1,X2:] by ZFMISC_1:def 2; then
A3:not [x,y] in E implies ProjMap1(chi(E,[:X1,X2:]),x).y = 0
      by A1,FUNCT_3:def 3;
    per cases;
    suppose A4: [x,y] in E; then
     y in X-section(E,x) by Th25;
     hence ProjMap1(chi(E,[:X1,X2:]),x).y = chi(X-section(E,x),X2).y
      by A2,A4,FUNCT_3:def 3;
    end;
    suppose A5: not [x,y] in E; then
     not y in X-section(E,x) by Th25;
     hence ProjMap1(chi(E,[:X1,X2:]),x).y = chi(X-section(E,x),X2).y
       by A3,A5,FUNCT_3:def 3;
    end;
   end; then
   ProjMap1(chi(E,[:X1,X2:]),x)=chi(X-section(E,x),X2) by FUNCT_2:def 8;
   hence ProjPMap1(chi(E,[:X1,X2:]),x)=chi(X-section(E,x),X2) by Th27;

   for x be Element of X1 holds
     ProjMap2(chi(E,[:X1,X2:]),y).x = chi(Y-section(E,y),X1).x
   proof
    let x be Element of X1;
A1:ProjMap2(chi(E,[:X1,X2:]),y).x = chi(E,[:X1,X2:]).(x,y)
     by MESFUNC9:def 7; then
A2:[x,y] in E implies ProjMap2(chi(E,[:X1,X2:]),y).x = 1 by FUNCT_3:def 3;

   [x,y] is Element of [:X1,X2:] by ZFMISC_1:def 2; then
A3:not [x,y] in E implies ProjMap2(chi(E,[:X1,X2:]),y).x = 0
      by A1,FUNCT_3:def 3;
    per cases;
    suppose A4: [x,y] in E; then
     x in Y-section(E,y) by Th25;
     hence ProjMap2(chi(E,[:X1,X2:]),y).x = chi(Y-section(E,y),X1).x
       by A2,A4,FUNCT_3:def 3;
    end;
    suppose A5: not [x,y] in E; then
     not x in Y-section(E,y) by Th25;
     hence ProjMap2(chi(E,[:X1,X2:]),y).x = chi(Y-section(E,y),X1).x
       by A3,A5,FUNCT_3:def 3;
    end;
   end; then
   ProjMap2(chi(E,[:X1,X2:]),y)=chi(Y-section(E,y),X1) by FUNCT_2:def 8;
   hence ProjPMap2(chi(E,[:X1,X2:]),y)=chi(Y-section(E,y),X1) by Th27;
end;

theorem Th49:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E be Element of S, er be ExtReal holds
  Integral(M,chi(er,E,X)) = er * M.E
proof
   let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
   E be Element of S, er be ExtReal;
   reconsider XX = X as Element of S by MEASURE1:7;
   per cases;
   suppose a1: er = +infty; then
a2: chi(er,E,X) = Xchi(E,X) by Th2;
    per cases;
    suppose a3: M.E <> 0; then
a4:  M.E > 0 by MEASURE1:def 2;
     thus Integral(M,chi(er,E,X)) = +infty by a2,a3,MEASUR10:33
      .= er * M.E by a1,a4,XXREAL_3:def 5;
    end;
    suppose a5: M.E = 0; then
     Integral(M,chi(er,E,X)) = 0 by a2,MEASUR10:33;
     hence Integral(M,chi(er,E,X)) = er * M.E by a5;
    end;
   end;
   suppose a6: er = -infty; then
a7: chi(er,E,X) = -Xchi(E,X) by Th2;
a10:dom(Xchi(E,X)) = XX by FUNCT_2:def 1;
W:  Xchi(E,X) is XX-measurable by MEASUR10:32;
    per cases;
    suppose a8: M.E <> 0; then
a9:  M.E > 0 by MEASURE1:def 2;
     thus Integral(M,chi(er,E,X))
      = -Integral(M,Xchi(E,X)) by a10,a7,MESFUN11:52,W
     .= -(+infty) by a8,MEASUR10:33
     .= er * M.E by a6,a9,XXREAL_3:def 5,6;
    end;
    suppose a12: M.E = 0;
     thus Integral(M,chi(er,E,X))
      = - Integral(M,Xchi(E,X)) by a10,a7,MESFUN11:52,W
     .= - 0 by a12,MEASUR10:33
     .= er * M.E by a12;
    end;
   end;
   suppose er <> +infty & er <> -infty; then
    er in REAL by XXREAL_0:14; then
    reconsider r = er as Real;
a14:chi(E,X) is_simple_func_in S by Th12;
    chi(er,E,X) = r(#)chi(E,X) by Th1;
    hence Integral(M,chi(er,E,X))
     = r * integral'(M,chi(E,X)) by Th12,MESFUN11:59
    .= r * Integral(M,chi(E,X)) by a14,MESFUNC5:89
    .= er * M.E by MESFUNC9:14;
   end;
end;

theorem Th50:
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E be Element of S, er be ExtReal holds
  Integral(M,chi(er,E,X)|E) = er * M.E
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    E be Element of S, er be ExtReal;
    reconsider XX = X as Element of S by MEASURE1:7;
A1: XX = dom chi(er,E,X) by FUNCT_2:def 1; then
    dom(chi(er,E,X)|(XX \ E)) = XX /\ (XX \ E) by RELAT_1:61; then
A2: dom(chi(er,E,X)|(XX \ E)) = XX \ E by XBOOLE_1:28;
A3: chi(er,E,X)|(XX \ E) is (XX\E)-measurable by Th15;
A4: E \/ (XX \ E) = X \/ E by XBOOLE_1:39 .= X by XBOOLE_1:12;
A5: E misses (XX \ E) by XBOOLE_1:79;
A6: Integral(M,chi(er,E,X)) = Integral(M,chi(er,E,X)|X);
    per cases;
    suppose er = +infty; then
A7:  chi(er,E,X) = Xchi(E,X) by Th2; then
A8:  chi(er,E,X)|(XX \ E) is nonnegative by MESFUNC5:15;
     chi(er,E,X) is XX-measurable by Th13; then
V:   ex W being Element of S st W=dom chi(er,E,X) & 
     chi(er,E,X) is W-measurable by A1;
     Integral(M,chi(er,E,X))
      = Integral(M,chi(er,E,X)|E) + Integral(M,chi(er,E,X)|(XX \ E))
        by A4,V,A5,A6,A7,MESFUNC5:91; then
A9:  Integral(M,chi(er,E,X)|E) + Integral(M,chi(er,E,X)|(XX \ E))
      = er * M.E by Th49;
     for x be Element of X st x in dom(chi(er,E,X)|(XX \ E))
       holds (chi(er,E,X)|(XX \ E)).x = 0 by A5,Th16; then
     integral+(M,chi(er,E,X)|(XX \ E)) = 0 by A2,Th15,MESFUNC5:87; then
     Integral(M,chi(er,E,X)|(XX \ E)) = 0 by A2,A8,Th15,MESFUNC5:88;
     hence Integral(M,chi(er,E,X)|E) = er * M.E by A9,XXREAL_3:4;
    end;
    suppose er = -infty; then
A10: chi(er,E,X) = -Xchi(E,X) by Th2; then
A11: chi(er,E,X)|(XX \ E) is nonpositive by MESFUN11:1;
     chi(er,E,X) is XX-measurable by Th13; then
     ex W being Element of S st W = dom chi(er,E,X) & 
       chi(er,E,X) is W-measurable by A1; then
     Integral(M,chi(er,E,X))
      = Integral(M,chi(er,E,X)|E) + Integral(M,chi(er,E,X)|(XX \ E))
         by A4,A5,A6,A10,MESFUN11:62; then
A12: Integral(M,chi(er,E,X)|E) + Integral(M,chi(er,E,X)|(XX \ E))
      = er * M.E by Th49;
A13: dom((-chi(er,E,X))|(XX \ E))
      = dom(-(chi(er,E,X)|(XX \ E))) by MESFUN11:3
     .= XX \ E by A2,MESFUNC1:def 7;
     -(chi(er,E,X)|(XX \ E)) is (XX\E)-measurable
       by A2,Th15,MEASUR11:63; then
A14: (-chi(er,E,X))|(XX \ E) is (XX\E)-measurable by MESFUN11:3;
     now let x be Element of X;
      assume A15: x in dom((-chi(er,E,X))|(XX \ E)); then
      x in dom(-chi(er,E,X)) /\ (XX \ E) by RELAT_1:61; then
A16:  x in dom(-chi(er,E,X)) & x in XX \ E by XBOOLE_0:def 4; then
      x in X & not x in E by XBOOLE_0:def 5; then
      chi(er,E,X).x = 0 by Def1; then
      (-chi(er,E,X)).x = -0 by A16,MESFUNC1:def 7;
      hence (-chi(er,E,X))|(XX \ E).x = 0 by A15,FUNCT_1:47;
     end; then
     integral+(M,(-chi(er,E,X))|(XX \ E)) = 0 by A13,A14,MESFUNC5:87; then
     integral+(M,-(chi(er,E,X)|(XX \ E))) = 0 by MESFUN11:3; then
     Integral(M,chi(er,E,X)|(XX \ E)) = - 0 by A2,A3,A11,MESFUN11:57;
     hence Integral(M,chi(er,E,X)|E) = er * M.E by A12,XXREAL_3:4;
    end;
    suppose er <> +infty & er <> -infty; then
     er in REAL by XXREAL_0:14; then
     reconsider r = er as Real;
     chi(er,E,X) = r(#)chi(E,X) by Th1; then
A17: chi(er,E,X)|E = r(#)(chi(E,X)|E) by MESFUN11:2;
A18: chi(E,X)|E is nonnegative by MESFUNC5:15;
A19: chi(E,X)|E is_simple_func_in S by Th12,MESFUNC5:34;
     hence Integral(M,chi(er,E,X)|E)
      = r * integral'(M,chi(E,X)|E) by A17,MESFUNC5:15,MESFUN11:59
     .= r * Integral(M,chi(E,X)|E) by A19,A18,MESFUNC5:89
     .= er * M.E by MESFUNC9:14;
    end;
end;

theorem
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E1,E2 be Element of S, er be ExtReal holds
  Integral(M,chi(er,E1,X)|E2) = er * M.(E1/\E2)
proof
   let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
   E1,E2 be Element of S, er be ExtReal;
   reconsider XX = X as Element of S by MEASURE1:7;
   set f = chi(er,E1/\E2,X);
A1:chi(er,E1,X)|E2 = f|E2 by Th14;
A2:dom f = XX by FUNCT_2:def 1;
A3:E1 /\ E2 misses E2 \ E1 by XBOOLE_1:89;
A4:(E1 /\ E2) \/ (E2 \ E1) = E2 by XBOOLE_1:51;
   f is XX-measurable by Th13; then
X: ex W being Element of S st W = dom f & 
   f is W-measurable by A2;
   er >= 0 or er < 0; then
   f is nonnegative or f is nonpositive by Th17; then
A5:Integral(M,f|E2) = Integral(M,f|(E1/\E2)) + Integral(M,f|(E2\E1))
    by X,A3,A4,MESFUNC5:91,MESFUN11:62;
   dom(f|(E2\E1)) = dom f /\ (E2\E1) by RELAT_1:61; then
   dom(f|(E2\E1)) = X /\ (E2 \ E1) by FUNCT_2:def 1; then
A6:dom(f|(E2\E1)) = E2 \ E1 by XBOOLE_1:28;
   for x be object st x in dom(f|(E2\E1))
     holds (f|(E2\E1)).x >= 0 by Th16,XBOOLE_1:89; then
A7:f|(E2\E1) is nonnegative by SUPINF_2:52;
   for x be Element of X st x in dom(f|(E2\E1))
     holds (f|(E2\E1)).x = 0 by Th16,XBOOLE_1:89; then
   integral+(M,f|(E2\E1)) = 0 by A6,Th15,MESFUNC5:87; then
   Integral(M,f|(E2\E1)) = 0 by A6,A7,Th15,MESFUNC5:88; then
   Integral(M,f|E2) = er * M.(E1/\E2) + 0 by A5,Th50;
   hence Integral(M,chi(er,E1,X)|E2) = er * M.(E1/\E2) by A1,XXREAL_3:4;
end;

theorem  Th52:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, x be Element of X1,
  E be Element of sigma measurable_rectangles(S1,S2)
 st M2 is sigma_finite
 holds
   Y-vol(E,M2).x = Integral(M2,ProjPMap1(chi(E,[:X1,X2:]),x)) &
   Y-vol(E,M2).x = integral+(M2,ProjPMap1(chi(E,[:X1,X2:]),x)) &
   Y-vol(E,M2).x = integral'(M2,ProjPMap1(chi(E,[:X1,X2:]),x))
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   M2 be sigma_Measure of S2, x be Element of X1,
   E be Element of sigma measurable_rectangles(S1,S2);
   assume A1: M2 is sigma_finite;
A2:ProjPMap1(chi(E,[:X1,X2:]),x) = chi(X-section(E,x),X2) by Th48; then
   ProjPMap1(chi(E,[:X1,X2:]),x) = chi(Measurable-X-section(E,x),X2)
     by MEASUR11:def 6; then
A4:ProjPMap1(chi(E,[:X1,X2:]),x) is_simple_func_in S2 by Th12;
   Y-vol(E,M2).x = M2.(Measurable-X-section(E,x)) by A1,MEASUR11:def 13; then
   Y-vol(E,M2).x = Integral(M2,ProjMap1(chi(E,[:X1,X2:]),x))
     by MEASUR11:72;
   hence Y-vol(E,M2).x = Integral(M2,ProjPMap1(chi(E,[:X1,X2:]),x))
     by Th27;
   hence Y-vol(E,M2).x = integral+(M2,ProjPMap1(chi(E,[:X1,X2:]),x)) &
   Y-vol(E,M2).x = integral'(M2,ProjPMap1(chi(E,[:X1,X2:]),x))
     by A2,A4,MESFUNC5:89;
end;

theorem  Th53:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, y be Element of X2,
  E be Element of sigma measurable_rectangles(S1,S2)
 st M1 is sigma_finite
 holds
   X-vol(E,M1).y = Integral(M1,ProjPMap2(chi(E,[:X1,X2:]),y)) &
   X-vol(E,M1).y = integral+(M1,ProjPMap2(chi(E,[:X1,X2:]),y)) &
   X-vol(E,M1).y = integral'(M1,ProjPMap2(chi(E,[:X1,X2:]),y))
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   M1 be sigma_Measure of S1, y be Element of X2,
   E be Element of sigma measurable_rectangles(S1,S2);
   assume A1: M1 is sigma_finite;

A2:ProjPMap2(chi(E,[:X1,X2:]),y) = chi(Y-section(E,y),X1) by Th48; then
   ProjPMap2(chi(E,[:X1,X2:]),y) = chi(Measurable-Y-section(E,y),X1)
     by MEASUR11:def 7; then
A4:ProjPMap2(chi(E,[:X1,X2:]),y) is_simple_func_in S1 by Th12;
   X-vol(E,M1).y = M1.(Measurable-Y-section(E,y)) by A1,MEASUR11:def 14; then
   X-vol(E,M1).y = Integral(M1,ProjMap2(chi(E,[:X1,X2:]),y))
     by MEASUR11:72;
   hence X-vol(E,M1).y = Integral(M1,ProjPMap2(chi(E,[:X1,X2:]),y))
     by Th27;
   hence X-vol(E,M1).y = integral+(M1,ProjPMap2(chi(E,[:X1,X2:]),y)) &
   X-vol(E,M1).y = integral'(M1,ProjPMap2(chi(E,[:X1,X2:]),y))
     by A2,A4,MESFUNC5:89;
end;

theorem
for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
 E be Element of S, r be Real holds
  Integral(M,r(#)chi(E,X)) = r * Integral(M,chi(E,X))
proof
   let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
   E be Element of S, r be Real;
A3:chi(E,X) is_simple_func_in S by Th12;
   Integral(M,r(#)chi(E,X)) = r * integral'(M,chi(E,X)) by Th12,MESFUN11:59;
   hence Integral(M,r(#)chi(E,X)) = r * Integral(M,chi(E,X)) by A3,MESFUNC5:89;
end;

theorem Th55:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, y be Element of X2,
  E be Element of sigma measurable_rectangles(S1,S2), r be Real
st M1 is sigma_finite holds
  (r(#)X-vol(E,M1)).y = Integral(M1,ProjPMap2(chi(r,E,[:X1,X2:]),y))
 & (r >= 0 implies
      (r(#)X-vol(E,M1)).y = integral+(M1,ProjPMap2(chi(r,E,[:X1,X2:]),y)))
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   M1 be sigma_Measure of S1, y be Element of X2,
   E be Element of sigma measurable_rectangles(S1,S2), r be Real;
   assume A1: M1 is sigma_finite;

   set p2 = ProjPMap2(chi(E,[:X1,X2:]),y);

   chi(r,E,[:X1,X2:]) = r(#)chi(E,[:X1,X2:]) by Th1; then
A2:ProjPMap2(chi(r,E,[:X1,X2:]),y) = r(#)p2 by Th29;

A3:p2 is nonnegative by Th32;

A4:dom(r(#)X-vol(E,M1)) = X2 by FUNCT_2:def 1;

A5:chi(E,[:X1,X2:]) is_simple_func_in sigma measurable_rectangles(S1,S2)
     by Th12; then
   Integral(M1,ProjPMap2(chi(r,E,[:X1,X2:]),y))
     = r * integral'(M1,p2) by A2,A3,Th31,MESFUN11:59
    .= r * X-vol(E,M1).y by A1,Th53;
   hence A7: (r(#)X-vol(E,M1)).y = Integral(M1,ProjPMap2(chi(r,E,[:X1,X2:]),y))
      by A4,MESFUNC1:def 6;
   thus (r >= 0 implies
      (r(#)X-vol(E,M1)).y = integral+(M1,ProjPMap2(chi(r,E,[:X1,X2:]),y)))
   proof
    assume r >= 0; then
A8: r(#)p2 is nonnegative by A3,MESFUNC5:20;
    r(#)p2 is_simple_func_in S1 by A5,Th31,MESFUNC5:39;
    hence thesis by A2,A7,A8,MESFUNC5:89;
   end;
end;

theorem Th56:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, x be Element of X1,
  E be Element of sigma measurable_rectangles(S1,S2), r be Real
st M2 is sigma_finite holds
  (r(#)Y-vol(E,M2)).x = Integral(M2,ProjPMap1(chi(r,E,[:X1,X2:]),x))
 & (r >= 0 implies
      (r(#)Y-vol(E,M2)).x = integral+(M2,ProjPMap1(chi(r,E,[:X1,X2:]),x)))
proof
   let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
   M2 be sigma_Measure of S2,
   x be Element of X1, E be Element of sigma measurable_rectangles(S1,S2),
   r be Real;
   assume A1: M2 is sigma_finite;

   set p2 = ProjPMap1(chi(E,[:X1,X2:]),x);

   chi(r,E,[:X1,X2:]) = r(#)chi(E,[:X1,X2:]) by Th1; then
A2:ProjPMap1(chi(r,E,[:X1,X2:]),x) = r(#)p2 by Th29;

A3:p2 is nonnegative by Th32;

A4:dom(r(#)Y-vol(E,M2)) = X1 by FUNCT_2:def 1;

A5:chi(E,[:X1,X2:]) is_simple_func_in sigma measurable_rectangles(S1,S2)
     by Th12; then
   Integral(M2,ProjPMap1(chi(r,E,[:X1,X2:]),x))
     = r * integral'(M2,p2) by A2,A3,Th31,MESFUN11:59
    .= r * Y-vol(E,M2).x by A1,Th52;
   hence A7: (r(#)Y-vol(E,M2)).x = Integral(M2,ProjPMap1(chi(r,E,[:X1,X2:]),x))
      by A4,MESFUNC1:def 6;
   thus (r >= 0 implies
      (r(#)Y-vol(E,M2)).x = integral+(M2,ProjPMap1(chi(r,E,[:X1,X2:]),x)))
   proof
    assume r >= 0; then
A8: r(#)p2 is nonnegative by A3,MESFUNC5:20;
    r(#)p2 is_simple_func_in S2 by A5,Th31,MESFUNC5:39;
    hence thesis by A2,A7,A8,MESFUNC5:89;
   end;
end;

theorem Th57:
  for X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
  f be PartFunc of X,ExtREAL st dom f in S &
   (for x be Element of X st x in dom f holds 0= f.x)
  holds (for E be Element of S st E c= dom f holds f is E-measurable)
   & Integral(M,f) = 0
proof
    let X be non empty set, S be SigmaField of X, M be sigma_Measure of S,
    f be PartFunc of X,ExtREAL;
    assume that
a1:  dom f in S and
a2:  for x be Element of X st x in dom f holds f.x = 0;
    reconsider E = dom f as Element of S by a1;
    dom(chi(0,E,X)|E) = dom(chi(0,E,X)) /\ E by RELAT_1:61; then
    dom(chi(0,E,X)|E) = X /\ E by FUNCT_2:def 1; then
a3: dom(chi(0,E,X)|E) = E by XBOOLE_1:28;

    now let x be Element of X;
     assume a4: x in dom f; then
     (chi(0,E,X)|E).x = chi(0,E,X).x by FUNCT_1:49; then
     (chi(0,E,X)|E).x = 0 by a4,Def1;
     hence f.x = (chi(0,E,X)|E).x by a2,a4;
    end; then
a4: f = chi(0,E,X)|E by a3,PARTFUN1:5;
    hence for A be Element of S st A c= dom f holds f is A-measurable
     by Th15;
    Integral(M,f) = 0 * M.E by a4,Th50;
    hence Integral(M,f) = 0;
end;

Lm5:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  A be Element of sigma measurable_rectangles(S1,S2),
  f be PartFunc of [:X1,X2:],ExtREAL
 st M1 is sigma_finite
  & (f is nonnegative or f is nonpositive) & A = dom f
  & f is_simple_func_in sigma measurable_rectangles(S1,S2)
 holds
  ex I1 be Function of X2,ExtREAL st
   ( for y be Element of X2 holds
        I1.y = Integral(M1,ProjPMap2(f,y)) )
 & ( for V be Element of S2 holds I1 is V-measurable)
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A2:  (f is nonnegative or f is nonpositive) and
A3:  A = dom f and
A4:  f is_simple_func_in sigma measurable_rectangles(S1,S2);

    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;

    per cases;
    suppose f = {}; then
A5:  dom f = {}[:X1,X2:];
     reconsider E1 = {} as Element of S1 by MEASURE1:7;
     reconsider E = {} as Element of S2 by MEASURE1:7;
     reconsider I1 = chi(E,X2) as Function of X2,ExtREAL;
     take I1;
     thus for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y))
     proof
      let y be Element of X2;
      dom(ProjPMap2(f,y)) = Y-section(dom f,y) by Def4; then
A6:   dom(ProjPMap2(f,y)) = E1 by A5,MEASUR11:24;
A7:   ProjPMap2(f,y) is E1-measurable by A4,Th31,MESFUNC2:34;
      M1.E1 = 0 by VALUED_0:def 19; then
      Integral(M1,(ProjPMap2(f,y)|E1)) = 0 by A6,A7,MESFUNC5:94;
      hence I1.y = Integral(M1,ProjPMap2(f,y)) by A6,FUNCT_3:def 3;
     end;
     thus for V be Element of S2 holds I1 is V-measurable by MESFUNC2:29;
    end;

    suppose f <> {}; then
     consider E be non empty Finite_Sep_Sequence of
       sigma measurable_rectangles(S1,S2), a be FinSequence of ExtREAL,
       r be FinSequence of REAL such that
A8:   E,a are_Re-presentation_of f and
A9:   for n be Nat holds
        a.n = r.n & f|(E.n) = (chi(r.n,E.n,[:X1,X2:]))|(E.n) &
        (E.n = {} implies r.n = 0) by A4,Th5;

     defpred Q[Nat,object] means $2 = (r.$1)(#)(X-vol(E.$1,M1));

A10: for k be Nat st k in Seg len E
      ex x be Element of Funcs(X2,ExtREAL) st Q[k,x]
     proof
      let k be Nat;
      assume k in Seg len E;
      reconsider x = (r.k)(#)(X-vol(E.k,M1))
        as Element of Funcs(X2,ExtREAL) by FUNCT_2:8;
      take x;
      thus thesis;
     end;

     consider H be FinSequence of Funcs(X2,ExtREAL) such that
A11:  dom H = Seg len E and
A12:  for n be Nat st n in Seg len E holds Q[n,H.n] from FINSEQ_1:sch 5(A10);

A13: dom H = dom E by A11,FINSEQ_1:def 3;

A14: f is nonnegative implies for n be Nat holds r.n >= 0
     proof
      assume A15: f is nonnegative;
      hereby let n be Nat;
       now assume A16: E.n <> {}; then
        consider x be object such that
A17:     x in E.n by XBOOLE_0:def 1;
        n in dom E by A16,FUNCT_1:def 2; then
        a.n = f.x by A8,A17,MESFUNC3:def 1; then
        a.n >= 0 by A15,SUPINF_2:51;
        hence r.n >= 0 by A9;
       end;
       hence r.n >= 0 by A9;
      end;
     end;

A18: f is nonpositive implies for n be Nat holds r.n <= 0
     proof
      assume A19: f is nonpositive;
      hereby let n be Nat;
       now assume A20: E.n <> {}; then
        consider x be object such that
A21:     x in E.n by XBOOLE_0:def 1;
        n in dom E by A20,FUNCT_1:def 2; then
        a.n = f.x by A8,A21,MESFUNC3:def 1; then
        a.n <= 0 by A19,MESFUNC5:8;
        hence r.n <= 0 by A9;
       end;
       hence r.n <= 0 by A9;
      end;
     end;

A22:f is nonnegative implies H is without_-infty-valued
    proof
     assume A6: f is nonnegative;
      for n be Nat st n in dom H holds H.n is without-infty
      proof
       let n be Nat;
       assume A23: n in dom H; then
       H.n = (r.n)(#)(X-vol(E.n,M1)) by A11,A12; then
       H.n is nonnegative by A6,A14,MESFUNC5:20; then
       H/.n is nonnegative Function of X2,ExtREAL by A23,PARTFUN1:def 6;
       hence H.n is without-infty by A23,PARTFUN1:def 6;
      end;
      hence H is without_-infty-valued;
     end;

A24:f is nonpositive implies H is without_+infty-valued
    proof
     assume A6: f is nonpositive;
     for n be Nat st n in dom H holds H.n is without+infty
     proof
      let n be Nat;
      assume A25: n in dom H; then
      H.n = (r.n)(#)(X-vol(E.n,M1)) by A11,A12; then
      H.n is nonpositive by A6,A18,MESFUNC5:20; then
      H/.n is nonpositive Function of X2,ExtREAL by A25,PARTFUN1:def 6;
      hence H.n is without+infty by A25,PARTFUN1:def 6;
     end;
     hence thesis;
    end; then
    reconsider H as summable FinSequence of Funcs(X2,ExtREAL)
      by A2,A22;


A26:f is nonnegative implies Partial_Sums H is without_-infty-valued
      by A22,MEASUR11:61;
A27:f is nonpositive implies Partial_Sums H is without_+infty-valued
      by A24,MEASUR11:60;

    len H = len (Partial_Sums H) by MEASUR11:def 11; then
A28:dom H = dom (Partial_Sums H) by FINSEQ_3:29;

A29:H <> {} by A11; then
A30:len H >= 1 by FINSEQ_1:20;

A31:for y be Element of X2, n be Nat st n in dom E holds
      (H.n).y = Integral(M1,ProjPMap2(chi(r.n,E.n,[:X1,X2:]),y))
    & (H.n).y = Integral(M1,r.n(#)ProjPMap2(chi(E.n,[:X1,X2:]),y))
    proof
     let y be Element of X2, n be Nat;
     assume n in dom E; then
     n in Seg len E by FINSEQ_1:def 3; then
     H.n = (r.n)(#)(X-vol(E.n,M1)) by A12;
     hence (H.n).y = Integral(M1,ProjPMap2(chi(r.n,E.n,[:X1,X2:]),y))
        by A1,Th55; then
     (H.n).y = Integral(M1,ProjPMap2((r.n)(#)chi(E.n,[:X1,X2:]),y))
        by Th1;
     hence (H.n).y = Integral(M1,r.n(#)ProjPMap2(chi(E.n,[:X1,X2:]),y))
        by Th29;
    end;

    reconsider I1 = (Partial_Sums H)/.(len H) as Function of X2,ExtREAL;
    take I1;

    for y be Element of X2 holds
      ((Partial_Sums H)/.(len H)).y = Integral(M1,ProjPMap2(f,y))
    proof
     let y be Element of X2;
     f is A-measurable by A4,MESFUNC2:34; then
A32: ProjPMap2(f,y) is (Measurable-Y-section(A,y))-measurable
        by A3,Th47;
     dom(ProjPMap2(f,y)) = Y-section(dom f,y) by Def4; then
A33: dom(ProjPMap2(f,y)) = Measurable-Y-section(A,y) by A3,MEASUR11:def 7;

A34: ProjPMap2(f,y) is nonnegative or ProjPMap2(f,y) is nonpositive
       by A2,Th32,Th33;

A35: for n be Nat holds
       dom( ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y)|
         (XX1 \ Measurable-Y-section(E.n,y)) )
         = XX1 \ Measurable-Y-section(E.n,y)
     &
       ( ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y) is nonnegative
      or ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y) is nonpositive )
     &
       ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y) is XX1-measurable
     &
       (for x be Element of X1 st
        x in dom(ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y)|
                  (XX1 \ Measurable-Y-section(E.n,y)) )
        holds (ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y)|
        (XX1 \ Measurable-Y-section(E.n,y))).x = 0)
     &
       Integral(M1,ProjPMap2(chi(r.n,E.n,[:X1,X2:]),y))
        = Integral(M1,ProjPMap2(f,y)|Measurable-Y-section(E.n,y))
     & Measurable-Y-section(Union(E|n),y)
         misses Measurable-Y-section(E.(n+1),y)
     & Measurable-Y-section(Union(E|(n+1)),y)
        = Measurable-Y-section(Union(E|n),y) \/ Measurable-Y-section(E.(n+1),y)
     proof
      let n be Nat;
      set pn = ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y);
      set dn = XX1 \ Measurable-Y-section(E.n,y);
      set fn = ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y)|
        (XX1 \ Measurable-Y-section(E.n,y));

      pn = ProjMap2((chi(r.n,E.n,[:X1,X2:])),y) by Th27; then
A36:  dom pn = XX1 by FUNCT_2:def 1;
      hence
A37:   dom fn = XX1 \ Measurable-Y-section(E.n,y) by RELAT_1:62;

A38:  chi(r.n,E.n,[:X1,X2:]) = (r.n)(#)chi(E.n,[:X1,X2:]) by Th1;

      ProjPMap2(chi(E.n,[:X1,X2:]),y) = chi(Y-section(E.n,y),X1)
        by Th48; then
      ProjPMap2(chi(E.n,[:X1,X2:]),y)
        = chi(Measurable-Y-section(E.n,y),X1) by MEASUR11:def 7; then
A39:  pn = (r.n)(#)chi(Measurable-Y-section(E.n,y),X1) by A38,Th29;
      hence
A40:  pn is nonnegative or pn is nonpositive by A2,A14,A18,MESFUNC5:20;

      dom(chi(Measurable-Y-section(E.n,y),X1)) = XX1 by FUNCT_2:def 1;
      hence
A41:  pn is XX1-measurable by A39,MESFUNC1:37,MESFUNC2:29;

      thus for x be Element of X1 st x in dom fn holds fn.x = 0
      proof
       let x be Element of X1;
       assume A42: x in dom fn; then
       chi(Measurable-Y-section(E.n,y),X1).x = 0 by A37,FUNCT_3:37; then
       pn.x = r.n * 0 by A36,A39,MESFUNC1:def 6;
       hence fn.x = 0 by A42,FUNCT_1:47;
      end; then
      Integral(M1,fn) = 0 by A37,Th57; then
       Integral(M1,pn|((XX1 \ Measurable-Y-section(E.n,y))
         \/ Measurable-Y-section(E.n,y)))
        = Integral(M1,pn|Measurable-Y-section(E.n,y)) + 0
          by A36,A40,A41,XBOOLE_1:79,MESFUNC5:91,MESFUN11:62; then
       Integral(M1,pn|((XX1 \ Measurable-Y-section(E.n,y))
         \/ Measurable-Y-section(E.n,y)))
        = Integral(M1,pn|Measurable-Y-section(E.n,y)) by XXREAL_3:4; then
A43:   Integral(M1,pn|XX1)
        = Integral(M1,pn|Measurable-Y-section(E.n,y)) by XBOOLE_1:45;
       pn|Measurable-Y-section(E.n,y)
        = ProjPMap2((chi(r.n,E.n,[:X1,X2:])),y)|Y-section(E.n,y)
          by MEASUR11:def 7; then
       pn|Measurable-Y-section(E.n,y)
        = ProjPMap2(chi(r.n,E.n,[:X1,X2:])|(E.n),y) by Th34; then
       pn|Measurable-Y-section(E.n,y)
        = ProjPMap2(f|(E.n),y) by A9; then
       pn|Measurable-Y-section(E.n,y)
        = ProjPMap2(f,y)|Y-section(E.n,y) by Th34;
      hence
       Integral(M1,ProjPMap2(chi(r.n,E.n,[:X1,X2:]),y))
        = Integral(M1,ProjPMap2(f,y)|Measurable-Y-section(E.n,y))
         by A43,MEASUR11:def 7;

      union rng(E|n) misses E.(n+1) by NAT_1:16,MEASUR11:1; then
      Union(E|n) misses E.(n+1) by CARD_3:def 4; then
      Y-section(Union(E|n),y) misses Y-section(E.(n+1),y)
        by MEASUR11:35; then
      Measurable-Y-section(Union(E|n),y) misses Y-section(E.(n+1),y)
        by MEASUR11:def 7;
      hence Measurable-Y-section(Union(E|n),y)
         misses Measurable-Y-section(E.(n+1),y) by MEASUR11:def 7;

      union rng(E|(n+1)) = union rng(E|n) \/ E.(n+1) by MEASUR11:3; then
      Union(E|(n+1)) = union rng(E|n) \/ E.(n+1) by CARD_3:def 4; then
      Union(E|(n+1)) = Union(E|n) \/ E.(n+1) by CARD_3:def 4; then
      Y-section(Union(E|(n+1)),y)
        = Y-section(Union(E|n),y) \/ Y-section(E.(n+1),y) by MEASUR11:26; then
      Measurable-Y-section(Union(E|(n+1)),y)
        = Y-section(Union(E|n),y) \/ Y-section(E.(n+1),y) by MEASUR11:def 7
       .= Measurable-Y-section(Union(E|n),y) \/ Y-section(E.(n+1),y)
         by MEASUR11:def 7;
      hence Measurable-Y-section(Union(E|(n+1)),y)
        = Measurable-Y-section(Union(E|n),y)
          \/ Measurable-Y-section(E.(n+1),y) by MEASUR11:def 7;
     end;

     defpred P[Nat] means
       $1 <= len H implies
         ((Partial_Sums H)/.$1).y
           = Integral(M1,ProjPMap2(f|(union rng (E|$1)),y));

A44: P[1]
     proof
      assume A45: 1 <= len H; then
A46:  1 in dom H by FINSEQ_3:25;
      len H = len (Partial_Sums H) by MEASUR11:def 11; then
      dom H = dom(Partial_Sums H) by FINSEQ_3:29; then
      (Partial_Sums H)/.1 = (Partial_Sums H).1
         by A45,FINSEQ_3:25,PARTFUN1:def 6; then
      (Partial_Sums H)/.1 = H.1 by MEASUR11:def 11; then
A47:  ((Partial_Sums H)/.1).y
        = Integral(M1,ProjPMap2(chi(r.1,E.1,[:X1,X2:]),y)) by A13,A31,A46;

      E|1 = <* E.1 *> by FINSEQ_5:20; then
      rng(E|1) = {E.1} by FINSEQ_1:39; then
      union rng(E|1) = E.1 by ZFMISC_1:25; then
      ProjPMap2(f|(union rng(E|1)),y)
       = ProjPMap2( (chi(r.1,E.1,[:X1,X2:]))|(E.1), y) by A9; then
      ProjPMap2(f|(union rng(E|1)),y)
       = ProjPMap2( (chi(r.1,E.1,[:X1,X2:])),y)|Y-section(E.1,y)
           by Th34; then
A48:  Integral(M1,ProjPMap2(f|(union rng(E|1)),y))
       = Integral(M1,ProjPMap2( (chi(r.1,E.1,[:X1,X2:])),y)|
             Measurable-Y-section(E.1,y)) by MEASUR11:def 7;

      set p1 = ProjPMap2((chi(r.1,E.1,[:X1,X2:])),y);
      set d1 = XX1 \ Measurable-Y-section(E.1,y);
      set f1 = ProjPMap2((chi(r.1,E.1,[:X1,X2:])),y)|
                 (XX1 \ Measurable-Y-section(E.1,y));
A49:  dom f1 = XX1 \ Measurable-Y-section(E.1,y)
    & (p1 is nonnegative or p1 is nonpositive) by A35;
      p1 = ProjMap2((chi(r.1,E.1,[:X1,X2:])),y) by Th27; then
A50:  dom p1 = X1 by FUNCT_2:def 1;
A51:  (XX1 \ Measurable-Y-section(E.1,y)) misses Measurable-Y-section(E.1,y)
         by XBOOLE_1:79;
A52:  ((XX1 \ Measurable-Y-section(E.1,y)) \/ Measurable-Y-section(E.1,y))
       = XX1 by XBOOLE_1:45;
      for x be Element of X1 st x in dom f1 holds f1.x = 0 by A35; then
      Integral(M1,f1) = 0 by A49,Th57; then
      Integral(M1,p1|((XX1 \ Measurable-Y-section(E.1,y))
        \/ Measurable-Y-section(E.1,y)))
       = Integral(M1,p1|Measurable-Y-section(E.1,y)) + 0
         by A35,A49,A50,A51,MESFUNC5:91,MESFUN11:62;
      hence
      ((Partial_Sums H)/.1).y = Integral(M1,ProjPMap2(f|(union rng(E|1)),y))
         by A47,A48,A52,XXREAL_3:4;
     end;

A54: for n be non zero Nat st P[n] holds P[n+1]
     proof
      let n be non zero Nat;
      assume A55: P[n];
      assume A56: n+1 <= len H; then
      n < len H by NAT_1:13; then
A57:  n <= len(Partial_Sums H) & n+1 <= len(Partial_Sums H)
        by A56,MEASUR11:def 11;

A58:  1 <= n+1 by NAT_1:12;

A59:  n >= 1 by NAT_1:14; then
A60:  n in dom(Partial_Sums H) & n+1 in dom(Partial_Sums H) & n+1 in dom H
         by A56,A57,NAT_1:12,FINSEQ_3:25; then
A61:  (Partial_Sums H)/.(n+1) = (Partial_Sums H).(n+1) &
      (Partial_Sums H)/.n = (Partial_Sums H).n & H/.(n+1) = H.(n+1)
        by PARTFUN1:def 6;

A62:  ( (Partial_Sums H)/.n is without-infty &
         H/.(n+1) is without-infty ) or
      ( (Partial_Sums H)/.n is without+infty &
         H/.(n+1) is without+infty )
      proof
       per cases by A2;
       suppose f is nonnegative;
        hence thesis by A22,A26,A56,A57,A58,A59,A61,FINSEQ_3:25;
       end;
       suppose f is nonpositive;
        hence thesis by A24,A27,A56,A57,A58,A59,A61,FINSEQ_3:25;
       end;
      end;

A63:  Y-section(Union(E|n),y)
       = Measurable-Y-section(Union(E|n),y) by MEASUR11:def 7;

      (Partial_Sums H).(n+1)
        = (Partial_Sums H)/.n + H/.(n+1)
          by A56,A59,NAT_1:13,MEASUR11:def 11; then
      ((Partial_Sums H).(n+1)).y
        = ((Partial_Sums H)/.n).y + (H/.(n+1)).y by A62,DBLSEQ_3:7; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f|(union rng(E|n)),y))
         + Integral(M1,ProjPMap2(chi(r.(n+1),E.(n+1),[:X1,X2:]),y))
              by A13,A55,A56,A60,A61,A31,NAT_1:13; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f|(Union(E|n)),y))
         + Integral(M1,ProjPMap2(chi(r.(n+1),E.(n+1),[:X1,X2:]),y))
              by CARD_3:def 4; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f,y)|Y-section(Union(E|n),y))
         + Integral(M1,ProjPMap2(chi(r.(n+1),E.(n+1),[:X1,X2:]),y))
              by Th34; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f,y)|Y-section(Union(E|n),y))
        + Integral(M1,ProjPMap2(f,y)|Measurable-Y-section(E.(n+1),y))
              by A35; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f,y)|
             (Measurable-Y-section(Union(E|n),y) \/
              Measurable-Y-section(E.(n+1),y)))
              by A32,A33,A34,A35,A63,MESFUNC5:91,MESFUN11:62; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f,y)|Measurable-Y-section(Union(E|(n+1)),y))
              by A35; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f,y)|Y-section(Union(E|(n+1)),y))
              by MEASUR11:def 7; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f|(Union(E|(n+1))),y)) by Th34; then
      ((Partial_Sums H).(n+1)).y
        = Integral(M1,ProjPMap2(f|(union rng (E|(n+1))),y)) by CARD_3:def 4;
      hence ((Partial_Sums H)/.(n+1)).y
           = Integral(M1,ProjPMap2(f|(union rng (E|(n+1))),y))
             by A60,PARTFUN1:def 6;
     end;

     len H = len E by A11,FINSEQ_1:def 3; then
     E|len H = E|(dom E) by FINSEQ_1:def 3; then
     union rng(E|len H) = dom f by A8,MESFUNC3:def 1; then
A64: f|(union rng(E|len H)) = f;

     for n be non zero Nat holds P[n] from NAT_1:sch 10(A44,A54);
     hence ((Partial_Sums H)/.(len H)).y = Integral(M1,ProjPMap2(f,y))
       by A29,A64;
    end;
    hence for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y));

    thus for V be Element of S2 holds I1 is V-measurable
    proof
     let V be Element of S2;

A65: for n be Nat st n in dom H holds H/.n is V-measurable
     proof
      let n be Nat;
      assume n in dom H; then
A66:  H/.n = H.n & H.n = (r.n)(#)(X-vol(E.n,M1)) by A11,A12,PARTFUN1:def 6;
A67:  dom(X-vol(E.n,M1)) = XX2 by FUNCT_2:def 1;
      X-vol(E.n,M1) is V-measurable by A1,MEASUR11:def 14;
      hence H/.n is V-measurable by A66,A67,MESFUNC1:37;
     end;

     defpred P2[Nat] means
      $1 <= len H implies (Partial_Sums H)/.$1 is V-measurable;

     (Partial_Sums H)/.1
      = (Partial_Sums H).1 by A28,A30,FINSEQ_3:25,PARTFUN1:def 6; then
     (Partial_Sums H)/.1 = H.1 by MEASUR11:def 11; then
     (Partial_Sums H)/.1 = H/.1 by A30,A28,FINSEQ_3:25,PARTFUN1:def 6; then
A68: P2[1] by A65,FINSEQ_3:25;

A69: for n be non zero Nat st P2[n] holds P2[n+1]
     proof
      let n be non zero Nat;
      assume A70:P2[n];
      assume A71: n+1 <= len H; then
A72:  1 <= n < len H by NAT_1:13,14; then
A73:  n in dom H & n+1 in dom H by A71,NAT_1:11,FINSEQ_3:25; then
A74:  (Partial_Sums H)/.n = (Partial_Sums H).n &
      H.(n+1) = H/.(n+1) & (Partial_Sums H)/.(n+1) = (Partial_Sums H).(n+1)
         by A28,PARTFUN1:def 6; then
A75:  (Partial_Sums H)/.(n+1) = (Partial_Sums H)/.n + H/.(n+1)
         by A72,MEASUR11:def 11;

A76:  dom(H/.(n+1)) = XX2 & dom((Partial_Sums H)/.n) = XX2 by FUNCT_2:def 1;

A77:  H/.(n+1) is V-measurable by A73,A65;
      per cases by A2;
      suppose f is nonnegative; then
       H/.(n+1) is without-infty & (Partial_Sums H)/.n is without-infty
         by A22,A26,A28,A73,A74;
       hence (Partial_Sums H)/.(n+1) is V-measurable
         by A70,A71,A75,A77,NAT_1:13,MESFUNC5:31;
      end;
      suppose f is nonpositive; then
A78:   H/.(n+1) is without+infty & (Partial_Sums H)/.n is without+infty
        by A24,A27,A28,A73,A74; then
       dom((Partial_Sums H)/.n + H/.(n+1))
       = dom((Partial_Sums H)/.n) /\ dom(H/.(n+1)) by MESFUNC9:1;
       hence (Partial_Sums H)/.(n+1) is V-measurable
        by A70,A71,A75,A77,A76,A78,NAT_1:13,MEASUR11:65;
      end;
     end;

     for n be non zero Nat holds P2[n] from NAT_1:sch 10(A68,A69);
     hence thesis by A29;
    end;
    end;
end;

Lm6:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  A be Element of sigma measurable_rectangles(S1,S2),
  f be PartFunc of [:X1,X2:],ExtREAL
 st M2 is sigma_finite
  & (f is nonnegative or f is nonpositive) & A = dom f
  & f is_simple_func_in sigma measurable_rectangles(S1,S2)
 holds
  ex I2 be Function of X1,ExtREAL st
   ( for x be Element of X1 holds
        I2.x = Integral(M2,ProjPMap1(f,x)) )
 & ( for V be Element of S1 holds I2 is V-measurable )
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M2 is sigma_finite and
A2:  (f is nonnegative or f is nonpositive) and
A3:  A = dom f and
A4:  f is_simple_func_in sigma measurable_rectangles(S1,S2);

    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;

    per cases;
    suppose f = {}; then
A5:  dom f = {}[:X1,X2:];
     reconsider E2 = {} as Element of S2 by MEASURE1:7;
     reconsider E = {} as Element of S1 by MEASURE1:7;
     reconsider I2 = chi(E,X1) as Function of X1,ExtREAL;
     take I2;
     thus for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x))
     proof
      let x be Element of X1;
      dom(ProjPMap1(f,x)) = X-section(dom f,x) by Def3; then
A6:   dom(ProjPMap1(f,x)) = E2 by A5,MEASUR11:24;
A7:   ProjPMap1(f,x) is E2-measurable by A4,Th31,MESFUNC2:34;
      M2.E2 = 0 by VALUED_0:def 19; then
      Integral(M2,(ProjPMap1(f,x)|E2)) = 0 by A6,A7,MESFUNC5:94;
      hence I2.x = Integral(M2,ProjPMap1(f,x)) by A6,FUNCT_3:def 3;
     end;
     thus for V be Element of S1 holds I2 is V-measurable by MESFUNC2:29;
    end;

    suppose f <> {}; then
     consider E be non empty Finite_Sep_Sequence of
       sigma measurable_rectangles(S1,S2), a be FinSequence of ExtREAL,
       r be FinSequence of REAL such that
A8:   E,a are_Re-presentation_of f and
A9:   for n be Nat holds
        a.n = r.n & f|(E.n) = (chi(r.n,E.n,[:X1,X2:]))|(E.n) &
        (E.n = {} implies r.n = 0) by A4,Th5;

     defpred Q[Nat,object] means $2 = (r.$1)(#)(Y-vol(E.$1,M2));

A10: for k be Nat st k in Seg len E
      ex x be Element of Funcs(X1,ExtREAL) st Q[k,x]
     proof
      let k be Nat;
      assume k in Seg len E;
      reconsider x = (r.k)(#)(Y-vol(E.k,M2))
        as Element of Funcs(X1,ExtREAL) by FUNCT_2:8;
      take x;
      thus thesis;
     end;

     consider H be FinSequence of Funcs(X1,ExtREAL) such that
A11:  dom H = Seg len E and
A12:  for n be Nat st n in Seg len E holds Q[n,H.n] from FINSEQ_1:sch 5(A10);

A13: dom H = dom E by A11,FINSEQ_1:def 3;

A14: f is nonnegative implies for n be Nat holds r.n >= 0
     proof
      assume A15: f is nonnegative;
      hereby let n be Nat;
       now assume A16: E.n <> {}; then
        consider x be object such that
A17:     x in E.n by XBOOLE_0:def 1;
        n in dom E by A16,FUNCT_1:def 2; then
        a.n = f.x by A8,A17,MESFUNC3:def 1; then
        a.n >= 0 by A15,SUPINF_2:51;
        hence r.n >= 0 by A9;
       end;
       hence r.n >= 0 by A9;
      end;
     end;

A18: f is nonpositive implies for n be Nat holds r.n <= 0
     proof
      assume A19: f is nonpositive;
      hereby let n be Nat;
       now assume A20: E.n <> {}; then
        consider x be object such that
A21:     x in E.n by XBOOLE_0:def 1;
        n in dom E by A20,FUNCT_1:def 2; then
        a.n = f.x by A8,A21,MESFUNC3:def 1; then
        a.n <= 0 by A19,MESFUNC5:8;
        hence r.n <= 0 by A9;
       end;
       hence r.n <= 0 by A9;
      end;
     end;

A22:f is nonnegative implies H is without_-infty-valued
    proof
     assume A6: f is nonnegative;

      for n be Nat st n in dom H holds H.n is without-infty
      proof
       let n be Nat;
       assume A23: n in dom H; then
       H.n = (r.n)(#)(Y-vol(E.n,M2)) by A11,A12; then
       H.n is nonnegative by A6,A14,MESFUNC5:20; then
       H/.n is nonnegative Function of X1,ExtREAL by A23,PARTFUN1:def 6;
       hence H.n is without-infty by A23,PARTFUN1:def 6;
      end;
      hence H is without_-infty-valued;
     end;

A24:f is nonpositive implies H is without_+infty-valued
    proof
     assume A6: f is nonpositive;

     for n be Nat st n in dom H holds H.n is without+infty
     proof
      let n be Nat;
      assume A25: n in dom H; then
      H.n = (r.n)(#)(Y-vol(E.n,M2)) by A11,A12; then
      H.n is nonpositive by A6,A18,MESFUNC5:20; then
      H/.n is nonpositive Function of X1,ExtREAL by A25,PARTFUN1:def 6;
      hence H.n is without+infty by A25,PARTFUN1:def 6;
     end;
     hence thesis;
    end; then
    reconsider H as summable FinSequence of Funcs(X1,ExtREAL)
      by A2,A22;


A26:f is nonnegative implies Partial_Sums H is without_-infty-valued
      by A22,MEASUR11:61;
A27:f is nonpositive implies Partial_Sums H is without_+infty-valued
      by A24,MEASUR11:60;

    len H = len (Partial_Sums H) by MEASUR11:def 11; then
A28:dom H = dom (Partial_Sums H) by FINSEQ_3:29;

A29:H <> {} by A11; then
A30:len H >= 1 by FINSEQ_1:20;

A31:for x be Element of X1, n be Nat st n in dom E holds
      (H.n).x = Integral(M2,ProjPMap1(chi(r.n,E.n,[:X1,X2:]),x))
    & (H.n).x = Integral(M2,r.n(#)ProjPMap1(chi(E.n,[:X1,X2:]),x))
    proof
     let x be Element of X1, n be Nat;
     assume n in dom E; then
     n in Seg len E by FINSEQ_1:def 3; then
     H.n = (r.n)(#)(Y-vol(E.n,M2)) by A12;
     hence (H.n).x = Integral(M2,ProjPMap1(chi(r.n,E.n,[:X1,X2:]),x))
        by A1,Th56; then
     (H.n).x = Integral(M2,ProjPMap1((r.n)(#)chi(E.n,[:X1,X2:]),x))
        by Th1;
     hence (H.n).x = Integral(M2,r.n(#)ProjPMap1(chi(E.n,[:X1,X2:]),x))
        by Th29;
    end;

    reconsider I2 = (Partial_Sums H)/.(len H) as Function of X1,ExtREAL;
    take I2;

    for x be Element of X1 holds
      ((Partial_Sums H)/.(len H)).x = Integral(M2,ProjPMap1(f,x))
    proof
     let x be Element of X1;

     f is A-measurable by A4,MESFUNC2:34; then
A32: ProjPMap1(f,x) is (Measurable-X-section(A,x))-measurable
        by A3,Th47;

     dom(ProjPMap1(f,x)) = X-section(dom f,x) by Def3; then
A33: dom(ProjPMap1(f,x)) = Measurable-X-section(A,x) by A3,MEASUR11:def 6;

A34: ProjPMap1(f,x) is nonnegative or ProjPMap1(f,x) is nonpositive
       by A2,Th32,Th33;

A35: for n be Nat holds
       dom( ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x)|
         (XX2 \ Measurable-X-section(E.n,x)) )
         = XX2 \ Measurable-X-section(E.n,x)
     &
       ( ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x) is nonnegative
      or ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x) is nonpositive )
     &
       ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x) is XX2-measurable
     &
       (for y be Element of X2 st
        y in dom(ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x)|
                  (XX2 \ Measurable-X-section(E.n,x)) )
        holds (ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x)|
        (XX2 \ Measurable-X-section(E.n,x))).y = 0)
     &
       Integral(M2,ProjPMap1(chi(r.n,E.n,[:X1,X2:]),x))
        = Integral(M2,ProjPMap1(f,x)|Measurable-X-section(E.n,x))
     & Measurable-X-section(Union(E|n),x)
         misses Measurable-X-section(E.(n+1),x)
     & Measurable-X-section(Union(E|(n+1)),x)
        = Measurable-X-section(Union(E|n),x) \/ Measurable-X-section(E.(n+1),x)
     proof
      let n be Nat;
      set pn = ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x);
      set dn = XX2 \ Measurable-X-section(E.n,x);
      set fn = ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x)|
        (XX2 \ Measurable-X-section(E.n,x));

      pn = ProjMap1((chi(r.n,E.n,[:X1,X2:])),x) by Th27; then
A36:  dom pn = XX2 by FUNCT_2:def 1;
      hence
A37:   dom fn = XX2 \ Measurable-X-section(E.n,x) by RELAT_1:62;

A38:  chi(r.n,E.n,[:X1,X2:]) = (r.n)(#)chi(E.n,[:X1,X2:]) by Th1;

      ProjPMap1(chi(E.n,[:X1,X2:]),x) = chi(X-section(E.n,x),X2)
        by Th48; then
      ProjPMap1(chi(E.n,[:X1,X2:]),x)
        = chi(Measurable-X-section(E.n,x),X2) by MEASUR11:def 6; then
A39:  pn = (r.n)(#)chi(Measurable-X-section(E.n,x),X2) by A38,Th29;
      hence
A40:  pn is nonnegative or pn is nonpositive by A2,A14,A18,MESFUNC5:20;

      dom(chi(Measurable-X-section(E.n,x),X2)) = XX2 by FUNCT_2:def 1;
      hence
A41:  pn is XX2-measurable by A39,MESFUNC1:37,MESFUNC2:29;

      thus for y be Element of X2 st y in dom fn holds fn.y = 0
      proof
       let y be Element of X2;
       assume A42: y in dom fn; then
       chi(Measurable-X-section(E.n,x),X2).y = 0 by A37,FUNCT_3:37; then
       pn.y = r.n * 0 by A36,A39,MESFUNC1:def 6;
       hence fn.y = 0 by A42,FUNCT_1:47;
      end; then
      Integral(M2,fn) = 0 by A37,Th57; then
       Integral(M2,pn|((XX2 \ Measurable-X-section(E.n,x))
         \/ Measurable-X-section(E.n,x)))
        = Integral(M2,pn|Measurable-X-section(E.n,x)) + 0
          by A36,A40,A41,XBOOLE_1:79,MESFUNC5:91,MESFUN11:62; then
       Integral(M2,pn|((XX2 \ Measurable-X-section(E.n,x))
         \/ Measurable-X-section(E.n,x)))
        = Integral(M2,pn|Measurable-X-section(E.n,x)) by XXREAL_3:4; then
A43:   Integral(M2,pn|XX2)
        = Integral(M2,pn|Measurable-X-section(E.n,x)) by XBOOLE_1:45;
       pn|Measurable-X-section(E.n,x)
        = ProjPMap1((chi(r.n,E.n,[:X1,X2:])),x)|X-section(E.n,x)
          by MEASUR11:def 6; then
       pn|Measurable-X-section(E.n,x)
        = ProjPMap1(chi(r.n,E.n,[:X1,X2:])|(E.n),x) by Th34; then
       pn|Measurable-X-section(E.n,x)
        = ProjPMap1(f|(E.n),x) by A9; then
       pn|Measurable-X-section(E.n,x)
        = ProjPMap1(f,x)|X-section(E.n,x) by Th34;
      hence
       Integral(M2,ProjPMap1(chi(r.n,E.n,[:X1,X2:]),x))
        = Integral(M2,ProjPMap1(f,x)|Measurable-X-section(E.n,x))
         by A43,MEASUR11:def 6;

      union rng(E|n) misses E.(n+1) by NAT_1:16,MEASUR11:1; then
      Union(E|n) misses E.(n+1) by CARD_3:def 4; then
      X-section(Union(E|n),x) misses X-section(E.(n+1),x)
        by MEASUR11:35; then
      Measurable-X-section(Union(E|n),x) misses X-section(E.(n+1),x)
        by MEASUR11:def 6;
      hence Measurable-X-section(Union(E|n),x)
         misses Measurable-X-section(E.(n+1),x) by MEASUR11:def 6;

      union rng(E|(n+1)) = union rng(E|n) \/ E.(n+1) by MEASUR11:3; then
      Union(E|(n+1)) = union rng(E|n) \/ E.(n+1) by CARD_3:def 4; then
      Union(E|(n+1)) = Union(E|n) \/ E.(n+1) by CARD_3:def 4; then
      X-section(Union(E|(n+1)),x)
        = X-section(Union(E|n),x) \/ X-section(E.(n+1),x) by MEASUR11:26; then
      Measurable-X-section(Union(E|(n+1)),x)
        = X-section(Union(E|n),x) \/ X-section(E.(n+1),x) by MEASUR11:def 6
       .= Measurable-X-section(Union(E|n),x) \/ X-section(E.(n+1),x)
         by MEASUR11:def 6;
      hence Measurable-X-section(Union(E|(n+1)),x)
        = Measurable-X-section(Union(E|n),x)
          \/ Measurable-X-section(E.(n+1),x) by MEASUR11:def 6;
     end;

     defpred P[Nat] means
       $1 <= len H implies
         ((Partial_Sums H)/.$1).x
           = Integral(M2,ProjPMap1(f|(union rng (E|$1)),x));

A44: P[1]
     proof
      assume A45: 1 <= len H; then
A46:  1 in dom H by FINSEQ_3:25;
      len H = len (Partial_Sums H) by MEASUR11:def 11; then
      dom H = dom(Partial_Sums H) by FINSEQ_3:29; then
      (Partial_Sums H)/.1 = (Partial_Sums H).1
         by A45,FINSEQ_3:25,PARTFUN1:def 6; then
      (Partial_Sums H)/.1 = H.1 by MEASUR11:def 11; then
A47:  ((Partial_Sums H)/.1).x
        = Integral(M2,ProjPMap1(chi(r.1,E.1,[:X1,X2:]),x)) by A13,A31,A46;

      E|1 = <* E.1 *> by FINSEQ_5:20; then
      rng(E|1) = {E.1} by FINSEQ_1:39; then
      union rng(E|1) = E.1 by ZFMISC_1:25; then
      ProjPMap1(f|(union rng(E|1)),x)
       = ProjPMap1( (chi(r.1,E.1,[:X1,X2:]))|(E.1), x) by A9; then
      ProjPMap1(f|(union rng(E|1)),x)
       = ProjPMap1( (chi(r.1,E.1,[:X1,X2:])),x)|X-section(E.1,x)
           by Th34; then
A48:  Integral(M2,ProjPMap1(f|(union rng(E|1)),x))
       = Integral(M2,ProjPMap1( (chi(r.1,E.1,[:X1,X2:])),x)|
             Measurable-X-section(E.1,x)) by MEASUR11:def 6;


      set p1 = ProjPMap1((chi(r.1,E.1,[:X1,X2:])),x);
      set d1 = XX2 \ Measurable-X-section(E.1,x);
      set f1 = ProjPMap1((chi(r.1,E.1,[:X1,X2:])),x)|
                 (XX2 \ Measurable-X-section(E.1,x));

A49:  dom f1 = XX2 \ Measurable-X-section(E.1,x)
    & (p1 is nonnegative or p1 is nonpositive) by A35;

      p1 = ProjMap1((chi(r.1,E.1,[:X1,X2:])),x) by Th27; then
A50:  dom p1 = X2 by FUNCT_2:def 1;

A51:  (XX2 \ Measurable-X-section(E.1,x)) misses Measurable-X-section(E.1,x)
         by XBOOLE_1:79;

A52:  ((XX2 \ Measurable-X-section(E.1,x)) \/ Measurable-X-section(E.1,x))
       = XX2 by XBOOLE_1:45;

      for y be Element of X2 st y in dom f1 holds f1.y = 0 by A35; then
      Integral(M2,f1) = 0 by A49,Th57; then
      Integral(M2,p1|((XX2 \ Measurable-X-section(E.1,x))
        \/ Measurable-X-section(E.1,x)))
       = Integral(M2,p1|Measurable-X-section(E.1,x)) + 0
         by A35,A49,A50,A51,MESFUNC5:91,MESFUN11:62;
      hence
      ((Partial_Sums H)/.1).x = Integral(M2,ProjPMap1(f|(union rng(E|1)),x))
         by A47,A48,A52,XXREAL_3:4;
     end;

A54: for n be non zero Nat st P[n] holds P[n+1]
     proof
      let n be non zero Nat;
      assume A55: P[n];
      assume A56: n+1 <= len H; then
      n < len H by NAT_1:13; then
A57:  n <= len(Partial_Sums H) & n+1 <= len(Partial_Sums H)
        by A56,MEASUR11:def 11;

A58:  1 <= n+1 by NAT_1:12;

A59:  n >= 1 by NAT_1:14; then
A60:  n in dom(Partial_Sums H) & n+1 in dom(Partial_Sums H) & n+1 in dom H
         by A56,A57,NAT_1:12,FINSEQ_3:25; then
A61:  (Partial_Sums H)/.(n+1) = (Partial_Sums H).(n+1) &
      (Partial_Sums H)/.n = (Partial_Sums H).n & H/.(n+1) = H.(n+1)
        by PARTFUN1:def 6;

A62:  ( (Partial_Sums H)/.n is without-infty &
         H/.(n+1) is without-infty ) or
      ( (Partial_Sums H)/.n is without+infty &
         H/.(n+1) is without+infty )
      proof
       per cases by A2;
       suppose f is nonnegative;
        hence thesis by A22,A26,A56,A57,A58,A59,A61,FINSEQ_3:25;
       end;
       suppose f is nonpositive;
        hence thesis by A24,A27,A56,A57,A58,A59,A61,FINSEQ_3:25;
       end;
      end;

A63:  X-section(Union(E|n),x)
       = Measurable-X-section(Union(E|n),x) by MEASUR11:def 6;

      (Partial_Sums H).(n+1)
        = (Partial_Sums H)/.n + H/.(n+1)
          by A56,A59,NAT_1:13,MEASUR11:def 11; then
      ((Partial_Sums H).(n+1)).x
        = ((Partial_Sums H)/.n).x + (H/.(n+1)).x by A62,DBLSEQ_3:7; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f|(union rng(E|n)),x))
         + Integral(M2,ProjPMap1(chi(r.(n+1),E.(n+1),[:X1,X2:]),x))
              by A13,A55,A56,A60,A61,A31,NAT_1:13; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f|(Union(E|n)),x))
         + Integral(M2,ProjPMap1(chi(r.(n+1),E.(n+1),[:X1,X2:]),x))
              by CARD_3:def 4; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f,x)|X-section(Union(E|n),x))
         + Integral(M2,ProjPMap1(chi(r.(n+1),E.(n+1),[:X1,X2:]),x))
              by Th34; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f,x)|X-section(Union(E|n),x))
        + Integral(M2,ProjPMap1(f,x)|Measurable-X-section(E.(n+1),x))
              by A35; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f,x)|
             (Measurable-X-section(Union(E|n),x) \/
              Measurable-X-section(E.(n+1),x)))
              by A32,A33,A34,A35,A63,MESFUNC5:91,MESFUN11:62; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f,x)|Measurable-X-section(Union(E|(n+1)),x))
              by A35; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f,x)|X-section(Union(E|(n+1)),x))
              by MEASUR11:def 6; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f|(Union(E|(n+1))),x)) by Th34; then
      ((Partial_Sums H).(n+1)).x
        = Integral(M2,ProjPMap1(f|(union rng (E|(n+1))),x)) by CARD_3:def 4;
      hence ((Partial_Sums H)/.(n+1)).x
           = Integral(M2,ProjPMap1(f|(union rng (E|(n+1))),x))
             by A60,PARTFUN1:def 6;
     end;

     len H = len E by A11,FINSEQ_1:def 3; then
     E|len H = E|(dom E) by FINSEQ_1:def 3; then
     union rng(E|len H) = dom f by A8,MESFUNC3:def 1; then
A64: f|(union rng(E|len H)) = f;

     for n be non zero Nat holds P[n] from NAT_1:sch 10(A44,A54);
     hence ((Partial_Sums H)/.(len H)).x = Integral(M2,ProjPMap1(f,x))
       by A29,A64;
    end;
    hence for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x));

    thus for V be Element of S1 holds I2 is V-measurable
    proof
     let V be Element of S1;

A65: for n be Nat st n in dom H holds H/.n is V-measurable
     proof
      let n be Nat;
      assume n in dom H; then
A66:  H/.n = H.n & H.n = (r.n)(#)(Y-vol(E.n,M2)) by A11,A12,PARTFUN1:def 6;
A67:  dom(Y-vol(E.n,M2)) = XX1 by FUNCT_2:def 1;
      Y-vol(E.n,M2) is V-measurable by A1,MEASUR11:def 13;
      hence H/.n is V-measurable by A66,A67,MESFUNC1:37;
     end;

     defpred P2[Nat] means
      $1 <= len H implies (Partial_Sums H)/.$1 is V-measurable;

     (Partial_Sums H)/.1
      = (Partial_Sums H).1 by A28,A30,FINSEQ_3:25,PARTFUN1:def 6; then
     (Partial_Sums H)/.1 = H.1 by MEASUR11:def 11; then
     (Partial_Sums H)/.1 = H/.1 by A30,A28,FINSEQ_3:25,PARTFUN1:def 6; then
A68: P2[1] by A65,FINSEQ_3:25;

A69: for n be non zero Nat st P2[n] holds P2[n+1]
     proof
      let n be non zero Nat;
      assume A70:P2[n];
      assume A71: n+1 <= len H; then
A72:  1 <= n < len H by NAT_1:13,14; then
A73:  n in dom H & n+1 in dom H by A71,NAT_1:11,FINSEQ_3:25; then
A74:  (Partial_Sums H)/.n = (Partial_Sums H).n &
      H.(n+1) = H/.(n+1) & (Partial_Sums H)/.(n+1) = (Partial_Sums H).(n+1)
         by A28,PARTFUN1:def 6; then
A75:  (Partial_Sums H)/.(n+1) = (Partial_Sums H)/.n + H/.(n+1)
         by A72,MEASUR11:def 11;

A76:  dom(H/.(n+1)) = XX1 & dom((Partial_Sums H)/.n) = XX1 by FUNCT_2:def 1;

A77:  H/.(n+1) is V-measurable by A73,A65;

      per cases by A2;
      suppose f is nonnegative; then
       H/.(n+1) is without-infty & (Partial_Sums H)/.n is without-infty
         by A22,A26,A28,A73,A74;
       hence (Partial_Sums H)/.(n+1) is V-measurable
         by A70,A71,A75,A77,NAT_1:13,MESFUNC5:31;
      end;
      suppose f is nonpositive; then
A78:   H/.(n+1) is without+infty & (Partial_Sums H)/.n is without+infty
        by A24,A27,A28,A73,A74; then
       dom((Partial_Sums H)/.n + H/.(n+1))
       = dom((Partial_Sums H)/.n) /\ dom(H/.(n+1)) by MESFUNC9:1;
       hence (Partial_Sums H)/.(n+1) is V-measurable
        by A70,A71,A75,A77,A76,A78,NAT_1:13,MEASUR11:65;
      end;
     end;

     for n be non zero Nat holds P2[n] from NAT_1:sch 10(A68,A69);
     hence thesis by A29;
    end;
    end;
end;

theorem Th58:
for X1,X2,Y be non empty set, F be Functional_Sequence of [:X1,X2:],Y,
  x be Element of X1, y be Element of X2 st F is with_the_same_dom
  holds ProjPMap1(F,x) is with_the_same_dom
      & ProjPMap2(F,y) is with_the_same_dom
proof
    let X1,X2,Y be non empty set, F be Functional_Sequence of [:X1,X2:],Y,
     x1 be Element of X1, x2 be Element of X2;
    assume A1: F is with_the_same_dom;

    now let m,n be Nat;
     dom(ProjPMap1(F,x1).m) = dom(ProjPMap1(F.m,x1)) by Def5
      .= X-section(dom(F.m),x1) by Def3
      .= X-section(dom(F.n),x1) by A1,MESFUNC8:def 2
      .= dom(ProjPMap1(F.n,x1)) by Def3;
     hence dom(ProjPMap1(F,x1).m) = dom(ProjPMap1(F,x1).n) by Def5;
    end;
    hence ProjPMap1(F,x1) is with_the_same_dom by MESFUNC8:def 2;

    now let m,n be Nat;
     dom(ProjPMap2(F,x2).m) = dom(ProjPMap2(F.m,x2)) by Def6
      .= Y-section(dom(F.m),x2) by Def4
      .= Y-section(dom(F.n),x2) by A1,MESFUNC8:def 2
      .= dom(ProjPMap2(F.n,x2)) by Def4;
     hence dom(ProjPMap2(F,x2).m) = dom(ProjPMap2(F,x2).n) by Def6;
    end;
    hence ProjPMap2(F,x2) is with_the_same_dom by MESFUNC8:def 2;
end;

begin :: Fubini's theorem for nonnegative or nonpositive functions

Lm7:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  A be Element of sigma measurable_rectangles(S1,S2),
  f be PartFunc of [:X1,X2:],ExtREAL
 st M1 is sigma_finite
  & f is nonnegative & A = dom f & f is A-measurable
 holds
  ex I1 be Function of X2,ExtREAL st
   ( for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y)) )
 & ( for V be Element of S2 holds I1 is V-measurable )
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A3:  f is nonnegative & A = dom f & f is A-measurable;

    set S = sigma measurable_rectangles(S1,S2);
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider M = product_sigma_Measure(M1,M2) as sigma_Measure of S
      by MEASUR11:8;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;

    consider F be Functional_Sequence of [:X1,X2:],ExtREAL such that
A4:  for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f and
A5:  for n be Nat holds F.n is nonnegative and
A6:  for n,m be Nat st n <=m holds for z be Element of [:X1,X2:] st z in dom f
       holds (F.n).z <= (F.m).z and
A7:  for z be Element of [:X1,X2:] st z in dom f holds
       (F#z) is convergent & lim(F#z) = f.z by A3,MESFUNC5:64;

    now let m,n be Nat;
     dom(F.m) = dom f by A4;
     hence dom(F.m) = dom(F.n) by A4;
    end; then
A8: F is with_the_same_dom by MESFUNC8:def 2;

    defpred P[Nat,object] means
      ex Fy be Function of X2,ExtREAL st
        $2 = Fy & dom Fy = X2 &
        (for y1 be Element of X2 st y1 in dom Fy holds
           Fy.y1 = Integral(M1,ProjPMap2(F.$1,y1)) );

A10:for n be Element of NAT ex FI1 be Element of PFuncs(X2,ExtREAL) st P[n,FI1]
    proof
     let n be Element of NAT;

     deffunc F(Element of X2) = Integral(M1,ProjPMap2(F.n,$1));

     consider FI1 be Function such that
A11:  dom FI1 = X2 & for y1 be Element of X2 holds FI1.y1 = F(y1)
        from FUNCT_1:sch 4;

A12: for y2 be object st y2 in X2 holds FI1.y2 in ExtREAL
     proof
      let y2 be object;
      assume y2 in X2; then
      reconsider y1 = y2 as Element of X2;
      FI1.y2 = Integral(M1,ProjPMap2(F.n,y1)) by A11;
      hence FI1.y2 in ExtREAL;
     end; then
     FI1 is Function of X2,ExtREAL by A11,FUNCT_2:3; then
     reconsider FI1 as Element of PFuncs(X2,ExtREAL) by PARTFUN1:45;
     take FI1;

     reconsider Fy = FI1 as Function of X2,ExtREAL by A12,A11,FUNCT_2:3;
     for y1 be Element of X2 st y1 in dom Fy holds
             Fy.y1 = Integral(M1,ProjPMap2(F.n,y1)) by A11;
     hence ex Fy be Function of X2,ExtREAL st FI1 = Fy & dom Fy = X2 &
       (for y1 be Element of X2 st y1 in dom Fy holds
          Fy.y1 = Integral(M1,ProjPMap2(F.n,y1)) ) by A11;
    end;

    consider FI1 be Function of NAT,PFuncs(X2,ExtREAL) such that
A13: for n be Element of NAT holds P[n,FI1.n] from FUNCT_2:sch 3(A10);

A14:for n be Nat holds dom(FI1.n) = X2
    proof
     let n be Nat;
     n is Element of NAT by ORDINAL1:def 12; then
     ex Fy be Function of X2,ExtREAL st
      FI1.n = Fy & dom Fy = X2 &
      (for y1 be Element of X2 st y1 in dom Fy
        holds Fy.y1 = Integral(M1,ProjPMap2(F.n,y1)) ) by A13;
     hence dom(FI1.n) = X2;
    end;

A15:for n be Nat, y1 be Element of X2 st y1 in dom(FI1.n) holds
     (FI1.n).y1 = Integral(M1,ProjPMap2(F.n,y1))
    proof
     let n be Nat, y1 be Element of X2;
     assume  y1 in dom(FI1.n);
     n is Element of NAT by ORDINAL1:def 12; then
     P[n,FI1.n] by A13;
     hence (FI1.n).y1 = Integral(M1,ProjPMap2(F.n,y1));
    end;

A16:for y1 be Element of X2, x1 be Element of X1 st x1 in dom ProjPMap2(f,y1)
     holds (ProjPMap2(F,y1))#x1 is convergent &
           lim((ProjPMap2(F,y1))#x1) = ProjPMap2(f,y1).x1
    proof
     let y1 be Element of X2, x1 be Element of X1;
     reconsider z1 = [x1,y1] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume x1 in dom ProjPMap2(f,y1); then
     x1 in Y-section(A,y1) by A3,Def4; then
A17: z1 in dom f by A3,Th25; then
A18: F#z1 is convergent by A7;

A19: for n be Element of NAT holds (F#z1).n = ((ProjPMap2(F,y1))#x1).n
     proof
      let n be Element of NAT;
A20:  [x1,y1] in dom(F.n) by A4,A17;
      (F#z1).n = (F.n).(x1,y1) by MESFUNC5:def 13; then
      (F#z1).n = ProjPMap2(F.n,y1).x1 by A20,Def4; then
      (F#z1).n = (ProjPMap2(F,y1).n).x1 by Def6;
      hence (F#z1).n = ((ProjPMap2(F,y1))#x1).n by MESFUNC5:def 13;
     end;
     hence (ProjPMap2(F,y1))#x1 is convergent by A18,FUNCT_2:def 8;
     F#z1 = (ProjPMap2(F,y1))#x1 by A19,FUNCT_2:def 8; then
     lim((ProjPMap2(F,y1))#x1) = f.(x1,y1) by A7,A17;
     hence lim((ProjPMap2(F,y1))#x1) = ProjPMap2(f,y1).x1 by A17,Def4;
    end;

A21:for y be Element of X2 holds
     lim(ProjPMap2(F,y)) = ProjPMap2(f,y)
   & FI1#y is convergent
   & lim(FI1#y) = Integral(M1,lim(ProjPMap2(F,y)))
    proof
     let y be Element of X2;

     dom(lim(ProjPMap2(F,y))) = dom((ProjPMap2(F,y)).0) by MESFUNC8:def 9; then
     dom(lim(ProjPMap2(F,y))) = dom(ProjPMap2(F.0,y)) by Def6; then
     dom(lim(ProjPMap2(F,y))) = Y-section(dom(F.0),y) by Def4; then
     dom(lim(ProjPMap2(F,y))) = Y-section(dom f,y) by A4; then
A22: dom(lim(ProjPMap2(F,y))) = dom(ProjPMap2(f,y)) by Def4;
     for x be Element of X1 st x in dom(lim(ProjPMap2(F,y)))
       holds (lim(ProjPMap2(F,y))).x = (ProjPMap2(f,y)).x
     proof
      let x be Element of X1;
      assume A23: x in dom(lim(ProjPMap2(F,y))); then
      (lim(ProjPMap2(F,y))).x = lim((ProjPMap2(F,y))#x)
        by MESFUNC8:def 9;
      hence (lim(ProjPMap2(F,y))).x = (ProjPMap2(f,y)).x by A16,A22,A23;
     end;
     hence lim(ProjPMap2(F,y)) = ProjPMap2(f,y) by A22,PARTFUN1:5;

A24: ProjPMap2(F,y).0 = ProjPMap2(F.0,y) by Def6; then
     dom(ProjPMap2(F,y).0) = Y-section(dom(F.0),y) by Def4; then
     dom(ProjPMap2(F,y).0) = Y-section(A,y) by A4,A3; then
A25: dom(ProjPMap2(F,y).0) = Measurable-Y-section(A,y) by MEASUR11:def 7;

     F.0 is nonnegative by A5; then
A26: ProjPMap2(F,y).0 is nonnegative by A24,Th32;

A27: for n be Nat holds
       (ProjPMap2(F,y).n) is (Measurable-Y-section(A,y))-measurable
     proof
      let n be Nat;
A28:  dom(F.n) = A by A3,A4;
      F.n is A-measurable by A4,MESFUNC2:34; then
      ProjPMap2(F.n,y) is (Measurable-Y-section(A,y))-measurable
        by A28,Th47;
      hence ProjPMap2(F,y).n is (Measurable-Y-section(A,y))-measurable
        by Def6;
     end;

A29: for n,m be Nat st n<=m holds for x be Element of X1
       st x in Measurable-Y-section(A,y) holds
         (ProjPMap2(F,y).n).x <= (ProjPMap2(F,y).m).x
     proof
      let n,m be Nat;
      assume A30: n<=m;
      let x be Element of X1;

      assume A31: x in Measurable-Y-section(A,y); then
      x in dom(ProjPMap2(F.0,y)) by A25,Def6; then
      x in Y-section(dom(F.0),y) by Def4; then
      x in Y-section(dom f,y) by A4; then
A32:  [x,y] in dom f by Th25;

A33:  dom(ProjPMap2(F,y).n) = dom(ProjPMap2(F,y).0) &
      dom(ProjPMap2(F,y).m) = dom(ProjPMap2(F,y).0)
        by A8,Th58,MESFUNC8:def 2;
      ProjPMap2(F,y).n = ProjPMap2(F.n,y)
    & ProjPMap2(F,y).m = ProjPMap2(F.m,y) by Def6; then
      (ProjPMap2(F,y).n).x = (F.n).(x,y)
    & (ProjPMap2(F,y).m).x = (F.m).(x,y) by A25,A31,A33,Th26;
      hence (ProjPMap2(F,y).n).x <= (ProjPMap2(F,y).m).x
       by A6,A30,A32;
     end;

     for x be Element of X1 st x in Measurable-Y-section(A,y)
       holds (ProjPMap2(F,y))#x is convergent
     proof
      let x be Element of X1;
      assume x in Measurable-Y-section(A,y); then
      x in Y-section(dom f,y) by A3,MEASUR11:def 7; then
      x in dom(ProjPMap2(f,y)) by Def4;

      hence (ProjPMap2(F,y))#x is convergent by A16;
     end; then
     consider J be ExtREAL_sequence such that
A34:  (for n be Nat holds J.n = Integral(M1,ProjPMap2(F,y).n)) and
A35:  J is convergent and
A36:  Integral(M1,lim(ProjPMap2(F,y))) = lim J
         by A8,A25,A26,A27,A29,Th58,MESFUNC9:52;

     for n be Element of NAT holds J.n = (FI1#y).n
     proof
      let n be Element of NAT;
A37:  dom(FI1.n) = X2 by A14;
      (FI1#y).n = (FI1.n).y by MESFUNC5:def 13; then
      (FI1#y).n = Integral(M1,ProjPMap2(F.n,y)) by A15,A37; then
      (FI1#y).n = Integral(M1,ProjPMap2(F,y).n) by Def6;
      hence J.n = (FI1#y).n by A34;
     end;
     hence FI1#y is convergent
         & lim(FI1#y) = Integral(M1,lim(ProjPMap2(F,y)))
         by A35,A36,FUNCT_2:63;
    end;

    dom(lim FI1) = dom(FI1.0) by MESFUNC8:def 9; then
A38:dom(lim FI1) = X2 by A14; then
    reconsider I1 = lim FI1 as Function of X2,ExtREAL by FUNCT_2:def 1;
    take I1;

    for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y))
    proof
     let y be Element of X2;
     I1.y = lim(FI1#y) by A38,MESFUNC8:def 9; then
     I1.y = Integral(M1,lim(ProjPMap2(F,y))) by A21;
     hence I1.y = Integral(M1,ProjPMap2(f,y)) by A21;
    end;
    hence for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y));

    thus for V be Element of S2 holds I1 is V-measurable
    proof
     let V be Element of S2;
     now let m,n be Nat;
      dom(FI1.m) = X2 & dom(FI1.n) = X2 by A14;
      hence dom(FI1.m) = dom(FI1.n);
     end; then
A39: FI1 is with_the_same_dom by MESFUNC8:def 2;
A40: dom(FI1.0) = XX2 by A14;
A41: for n be Nat holds FI1.n is XX2-measurable
     proof
      let n be Nat;
      dom(F.n) = A
    & F.n is_simple_func_in sigma measurable_rectangles(S1,S2) by A4,A3; then
      consider L be Function of X2,ExtREAL such that
A42:   (for y be Element of X2 holds L.y = Integral(M1,ProjPMap2(F.n,y)))
     & (for W be Element of S2 holds L is W-measurable)
         by A1,A5,Lm5;

A43:  dom(FI1.n) = X2 by A14; then
A44:  FI1.n is Function of X2,ExtREAL by FUNCT_2:def 1;
      for y be Element of X2 holds (FI1.n).y = L.y
      proof
       let y be Element of X2;
       (FI1.n).y = Integral(M1,ProjPMap2(F.n,y)) by A15,A43;
       hence (FI1.n).y = L.y by A42;
      end; then
      FI1.n = L by A44,FUNCT_2:63;
      hence FI1.n is XX2-measurable by A42;
     end;

     for y be Element of X2 st y in XX2 holds FI1#y is convergent by A21;
     hence I1 is V-measurable by A39,A40,A41,MESFUNC8:25,MESFUNC1:30;
    end;
end;

Lm8:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  A be Element of sigma measurable_rectangles(S1,S2),
  f be PartFunc of [:X1,X2:],ExtREAL
 st M1 is sigma_finite
  & f is nonpositive & A = dom f & f is A-measurable
 holds
  ex I1 be Function of X2,ExtREAL st
   ( for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y)) )
 & ( for V be Element of S2 holds I1 is V-measurable )
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A3:  f is nonpositive & A = dom f & f is A-measurable;

    set S = sigma measurable_rectangles(S1,S2);
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider M = product_sigma_Measure(M1,M2) as sigma_Measure of S
      by MEASUR11:8;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;

    consider F be Functional_Sequence of [:X1,X2:],ExtREAL such that
A4:  for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f and
A5:  for n be Nat holds F.n is nonpositive and
A6:  for n,m be Nat st n <=m holds for z be Element of [:X1,X2:] st z in dom f
       holds (F.n).z >= (F.m).z and
A7:  for z be Element of [:X1,X2:] st z in dom f holds
       (F#z) is convergent & lim(F#z) = f.z by A3,MESFUN11:56;

    now let m,n be Nat;
     dom(F.m) = dom f by A4;
     hence dom(F.m) = dom(F.n) by A4;
    end; then
A8: F is with_the_same_dom by MESFUNC8:def 2;

    defpred P[Nat,object] means
      ex Fy be Function of X2,ExtREAL st
        $2 = Fy & dom Fy = X2 &
        (for y1 be Element of X2 st y1 in dom Fy holds
           Fy.y1 = Integral(M1,ProjPMap2(F.$1,y1)) );

A10:for n be Element of NAT ex FI1 be Element of PFuncs(X2,ExtREAL) st P[n,FI1]
    proof
     let n be Element of NAT;

     deffunc F(Element of X2) = Integral(M1,ProjPMap2(F.n,$1));

     consider FI1 be Function such that
A11:  dom FI1 = X2 & for y1 be Element of X2 holds FI1.y1 = F(y1)
        from FUNCT_1:sch 4;

A12: for y2 be object st y2 in X2 holds FI1.y2 in ExtREAL
     proof
      let y2 be object;
      assume y2 in X2; then
      reconsider y1 = y2 as Element of X2;
      FI1.y2 = Integral(M1,ProjPMap2(F.n,y1)) by A11;
      hence FI1.y2 in ExtREAL;
     end; then
     FI1 is Function of X2,ExtREAL by A11,FUNCT_2:3; then
     reconsider FI1 as Element of PFuncs(X2,ExtREAL) by PARTFUN1:45;
     take FI1;

     reconsider Fy = FI1 as Function of X2,ExtREAL by A12,A11,FUNCT_2:3;
     for y1 be Element of X2 st y1 in dom Fy holds
             Fy.y1 = Integral(M1,ProjPMap2(F.n,y1)) by A11;
     hence ex Fy be Function of X2,ExtREAL st FI1 = Fy & dom Fy = X2 &
       (for y1 be Element of X2 st y1 in dom Fy holds
          Fy.y1 = Integral(M1,ProjPMap2(F.n,y1)) ) by A11;
    end;

    consider FI1 be Function of NAT,PFuncs(X2,ExtREAL) such that
A13: for n be Element of NAT holds P[n,FI1.n] from FUNCT_2:sch 3(A10);

A14:for n be Nat holds dom(FI1.n) = X2
    proof
     let n be Nat;
     n is Element of NAT by ORDINAL1:def 12; then
     ex Fy be Function of X2,ExtREAL st
      FI1.n = Fy & dom Fy = X2 &
      (for y1 be Element of X2 st y1 in dom Fy
        holds Fy.y1 = Integral(M1,ProjPMap2(F.n,y1)) ) by A13;
     hence dom(FI1.n) = X2;
    end;

A15:for n be Nat, y1 be Element of X2 st y1 in dom(FI1.n) holds
     (FI1.n).y1 = Integral(M1,ProjPMap2(F.n,y1))
    proof
     let n be Nat, y1 be Element of X2;
     assume  y1 in dom(FI1.n);
     n is Element of NAT by ORDINAL1:def 12; then
     P[n,FI1.n] by A13;
     hence (FI1.n).y1 = Integral(M1,ProjPMap2(F.n,y1));
    end;

A16:for y1 be Element of X2, x1 be Element of X1 st x1 in dom ProjPMap2(f,y1)
     holds (ProjPMap2(F,y1))#x1 is convergent &
           lim((ProjPMap2(F,y1))#x1) = ProjPMap2(f,y1).x1
    proof
     let y1 be Element of X2, x1 be Element of X1;
     reconsider z1 = [x1,y1] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume x1 in dom ProjPMap2(f,y1); then
     x1 in Y-section(A,y1) by A3,Def4; then
A17: z1 in dom f by A3,Th25; then
A18: F#z1 is convergent by A7;

A19: for n be Element of NAT holds (F#z1).n = ((ProjPMap2(F,y1))#x1).n
     proof
      let n be Element of NAT;
A20:  [x1,y1] in dom(F.n) by A4,A17;
      (F#z1).n = (F.n).(x1,y1) by MESFUNC5:def 13; then
      (F#z1).n = ProjPMap2(F.n,y1).x1 by A20,Def4; then
      (F#z1).n = (ProjPMap2(F,y1).n).x1 by Def6;
      hence (F#z1).n = ((ProjPMap2(F,y1))#x1).n by MESFUNC5:def 13;
     end;
     hence (ProjPMap2(F,y1))#x1 is convergent by A18,FUNCT_2:def 8;
     F#z1 = (ProjPMap2(F,y1))#x1 by A19,FUNCT_2:def 8; then
     lim((ProjPMap2(F,y1))#x1) = f.(x1,y1) by A7,A17;
     hence lim((ProjPMap2(F,y1))#x1) = ProjPMap2(f,y1).x1 by A17,Def4;
    end;

A21:for y be Element of X2 holds
     lim(ProjPMap2(F,y)) = ProjPMap2(f,y)
   & FI1#y is convergent
   & lim(FI1#y) = Integral(M1,lim(ProjPMap2(F,y)))
    proof
     let y be Element of X2;

     dom(lim(ProjPMap2(F,y))) = dom((ProjPMap2(F,y)).0) by MESFUNC8:def 9; then
     dom(lim(ProjPMap2(F,y))) = dom(ProjPMap2(F.0,y)) by Def6; then
     dom(lim(ProjPMap2(F,y))) = Y-section(dom(F.0),y) by Def4; then
     dom(lim(ProjPMap2(F,y))) = Y-section(dom f,y) by A4; then
A22: dom(lim(ProjPMap2(F,y))) = dom(ProjPMap2(f,y)) by Def4;
     for x be Element of X1 st x in dom(lim(ProjPMap2(F,y)))
       holds (lim(ProjPMap2(F,y))).x = (ProjPMap2(f,y)).x
     proof
      let x be Element of X1;
      assume A23: x in dom(lim(ProjPMap2(F,y))); then
      (lim(ProjPMap2(F,y))).x = lim((ProjPMap2(F,y))#x)
        by MESFUNC8:def 9;
      hence (lim(ProjPMap2(F,y))).x = (ProjPMap2(f,y)).x by A16,A22,A23;
     end;
     hence lim(ProjPMap2(F,y)) = ProjPMap2(f,y) by A22,PARTFUN1:5;

A24: ProjPMap2(F,y).0 = ProjPMap2(F.0,y) by Def6; then
     dom(ProjPMap2(F,y).0) = Y-section(dom(F.0),y) by Def4; then
     dom(ProjPMap2(F,y).0) = Y-section(A,y) by A4,A3; then
A25: dom(ProjPMap2(F,y).0) = Measurable-Y-section(A,y) by MEASUR11:def 7;

     F.0 is nonpositive by A5; then
A26: ProjPMap2(F,y).0 is nonpositive by A24,Th33;

A27: for n be Nat holds
       (ProjPMap2(F,y).n) is (Measurable-Y-section(A,y))-measurable
     proof
      let n be Nat;
A28:  dom(F.n) = A by A3,A4;
      F.n is A-measurable by A4,MESFUNC2:34; then
      ProjPMap2(F.n,y) is (Measurable-Y-section(A,y))-measurable
        by A28,Th47;
      hence ProjPMap2(F,y).n is (Measurable-Y-section(A,y))-measurable
        by Def6;
     end;

A29: for n,m be Nat st n<=m holds for x be Element of X1
       st x in Measurable-Y-section(A,y) holds
         (ProjPMap2(F,y).n).x >= (ProjPMap2(F,y).m).x
     proof
      let n,m be Nat;
      assume A30: n<=m;
      let x be Element of X1;

      assume A31: x in Measurable-Y-section(A,y); then
      x in dom(ProjPMap2(F.0,y)) by A25,Def6; then
      x in Y-section(dom(F.0),y) by Def4; then
      x in Y-section(dom f,y) by A4; then
A32:  [x,y] in dom f by Th25;

A33:  dom(ProjPMap2(F,y).n) = dom(ProjPMap2(F,y).0) &
      dom(ProjPMap2(F,y).m) = dom(ProjPMap2(F,y).0)
        by A8,Th58,MESFUNC8:def 2;
      ProjPMap2(F,y).n = ProjPMap2(F.n,y)
    & ProjPMap2(F,y).m = ProjPMap2(F.m,y) by Def6; then
      (ProjPMap2(F,y).n).x = (F.n).(x,y)
    & (ProjPMap2(F,y).m).x = (F.m).(x,y) by A25,A31,A33,Th26;
      hence (ProjPMap2(F,y).n).x >= (ProjPMap2(F,y).m).x
       by A6,A30,A32;
     end;

     for x be Element of X1 st x in Measurable-Y-section(A,y)
       holds (ProjPMap2(F,y))#x is convergent
     proof
      let x be Element of X1;
      assume x in Measurable-Y-section(A,y); then
      x in Y-section(dom f,y) by A3,MEASUR11:def 7; then
      x in dom(ProjPMap2(f,y)) by Def4;

      hence (ProjPMap2(F,y))#x is convergent by A16;
     end; then
     consider J be ExtREAL_sequence such that
A34:  (for n be Nat holds J.n = Integral(M1,ProjPMap2(F,y).n)) and
A35:  J is convergent and
A36:  Integral(M1,lim(ProjPMap2(F,y))) = lim J
         by A8,A25,A26,A27,A29,Th58,MESFUN11:74;

     for n be Element of NAT holds J.n = (FI1#y).n
     proof
      let n be Element of NAT;
A37:  dom(FI1.n) = X2 by A14;
      (FI1#y).n = (FI1.n).y by MESFUNC5:def 13; then
      (FI1#y).n = Integral(M1,ProjPMap2(F.n,y)) by A15,A37; then
      (FI1#y).n = Integral(M1,ProjPMap2(F,y).n) by Def6;
      hence J.n = (FI1#y).n by A34;
     end;
     hence FI1#y is convergent
         & lim(FI1#y) = Integral(M1,lim(ProjPMap2(F,y)))
         by A35,A36,FUNCT_2:63;
    end;

    dom(lim FI1) = dom(FI1.0) by MESFUNC8:def 9; then
A38:dom(lim FI1) = X2 by A14; then
    reconsider I1 = lim FI1 as Function of X2,ExtREAL by FUNCT_2:def 1;
    take I1;

    for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y))
    proof
     let y be Element of X2;
     I1.y = lim(FI1#y) by A38,MESFUNC8:def 9; then
     I1.y = Integral(M1,lim(ProjPMap2(F,y))) by A21;
     hence I1.y = Integral(M1,ProjPMap2(f,y)) by A21;
    end;
    hence for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y));

    thus for V be Element of S2 holds I1 is V-measurable
    proof
     let V be Element of S2;
     now let m,n be Nat;
      dom(FI1.m) = X2 & dom(FI1.n) = X2 by A14;
      hence dom(FI1.m) = dom(FI1.n);
     end; then
A39: FI1 is with_the_same_dom by MESFUNC8:def 2;
A40: dom(FI1.0) = XX2 by A14;
A41: for n be Nat holds FI1.n is XX2-measurable
     proof
      let n be Nat;
      dom(F.n) = A
    & F.n is_simple_func_in sigma measurable_rectangles(S1,S2) by A4,A3; then
      consider L be Function of X2,ExtREAL such that
A42:   (for y be Element of X2 holds L.y = Integral(M1,ProjPMap2(F.n,y)))
     & (for W be Element of S2 holds L is W-measurable)
         by A1,A5,Lm5;

A43:  dom(FI1.n) = X2 by A14; then
A44:  FI1.n is Function of X2,ExtREAL by FUNCT_2:def 1;
      for y be Element of X2 holds (FI1.n).y = L.y
      proof
       let y be Element of X2;
       (FI1.n).y = Integral(M1,ProjPMap2(F.n,y)) by A15,A43;
       hence (FI1.n).y = L.y by A42;
      end; then
      FI1.n = L by A44,FUNCT_2:63;
      hence FI1.n is XX2-measurable by A42;
     end;

     for y be Element of X2 st y in XX2 holds FI1#y is convergent by A21;
     hence I1 is V-measurable by A39,A40,A41,MESFUNC8:25,MESFUNC1:30;
    end;
end;

Lm9:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  A be Element of sigma measurable_rectangles(S1,S2),
  f be PartFunc of [:X1,X2:],ExtREAL
 st M2 is sigma_finite
  & f is nonnegative & A = dom f & f is A-measurable
 holds
  ex I2 be Function of X1,ExtREAL st
   ( for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x)) )
 & ( for V be Element of S1 holds I2 is V-measurable )
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M2 is sigma_finite and
A3:  f is nonnegative & A = dom f & f is A-measurable;

    set S = sigma measurable_rectangles(S1,S2);
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider M = product_sigma_Measure(M1,M2) as sigma_Measure of S
      by MEASUR11:8;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;

    consider F be Functional_Sequence of [:X1,X2:],ExtREAL such that
A4:  for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f and
A5:  for n be Nat holds F.n is nonnegative and
A6:  for n,m be Nat st n <=m holds for z be Element of [:X1,X2:] st z in dom f
       holds (F.n).z <= (F.m).z and
A7:  for z be Element of [:X1,X2:] st z in dom f holds
       (F#z) is convergent & lim(F#z) = f.z by A3,MESFUNC5:64;

    now let m,n be Nat;
     dom(F.m) = dom f by A4;
     hence dom(F.m) = dom(F.n) by A4;
    end; then
A8: F is with_the_same_dom by MESFUNC8:def 2;

    defpred P[Nat,object] means
      ex Fx be Function of X1,ExtREAL st
        $2 = Fx & dom Fx = X1 &
        (for x1 be Element of X1 st x1 in dom Fx holds
           Fx.x1 = Integral(M2,ProjPMap1(F.$1,x1)) );

A10:for n be Element of NAT ex FI2 be Element of PFuncs(X1,ExtREAL) st P[n,FI2]
    proof
     let n be Element of NAT;

     deffunc F(Element of X1) = Integral(M2,ProjPMap1(F.n,$1));

     consider FI2 be Function such that
A11:  dom FI2 = X1 & for x1 be Element of X1 holds FI2.x1 = F(x1)
        from FUNCT_1:sch 4;

A12: for x2 be object st x2 in X1 holds FI2.x2 in ExtREAL
     proof
      let x2 be object;
      assume x2 in X1; then
      reconsider x1 = x2 as Element of X1;
      FI2.x2 = Integral(M2,ProjPMap1(F.n,x1)) by A11;
      hence FI2.x2 in ExtREAL;
     end; then
     FI2 is Function of X1,ExtREAL by A11,FUNCT_2:3; then
     reconsider FI2 as Element of PFuncs(X1,ExtREAL) by PARTFUN1:45;
     take FI2;

     reconsider Fx = FI2 as Function of X1,ExtREAL by A12,A11,FUNCT_2:3;
     for x1 be Element of X1 st x1 in dom Fx holds
             Fx.x1 = Integral(M2,ProjPMap1(F.n,x1)) by A11;
     hence ex Fx be Function of X1,ExtREAL st FI2 = Fx & dom Fx = X1 &
       (for x1 be Element of X1 st x1 in dom Fx holds
          Fx.x1 = Integral(M2,ProjPMap1(F.n,x1)) ) by A11;
    end;

    consider FI2 be Function of NAT,PFuncs(X1,ExtREAL) such that
A13: for n be Element of NAT holds P[n,FI2.n] from FUNCT_2:sch 3(A10);

A14:for n be Nat holds dom(FI2.n) = X1
    proof
     let n be Nat;
     n is Element of NAT by ORDINAL1:def 12; then
     ex Fx be Function of X1,ExtREAL st
      FI2.n = Fx & dom Fx = X1 &
      (for x1 be Element of X1 st x1 in dom Fx
        holds Fx.x1 = Integral(M2,ProjPMap1(F.n,x1)) ) by A13;
     hence dom(FI2.n) = X1;
    end;

A15:for n be Nat, x1 be Element of X1 st x1 in dom(FI2.n) holds
     (FI2.n).x1 = Integral(M2,ProjPMap1(F.n,x1))
    proof
     let n be Nat, x1 be Element of X1;
     assume  x1 in dom(FI2.n);
     n is Element of NAT by ORDINAL1:def 12; then
     P[n,FI2.n] by A13;
     hence (FI2.n).x1 = Integral(M2,ProjPMap1(F.n,x1));
    end;

A16:for x1 be Element of X1, y1 be Element of X2 st y1 in dom ProjPMap1(f,x1)
     holds (ProjPMap1(F,x1))#y1 is convergent &
           lim((ProjPMap1(F,x1))#y1) = ProjPMap1(f,x1).y1
    proof
     let x1 be Element of X1, y1 be Element of X2;
     reconsider z1 = [x1,y1] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume y1 in dom ProjPMap1(f,x1); then
     y1 in X-section(A,x1) by A3,Def3; then
A17: z1 in dom f by A3,Th25; then
A18: F#z1 is convergent by A7;

A19: for n be Element of NAT holds (F#z1).n = ((ProjPMap1(F,x1))#y1).n
     proof
      let n be Element of NAT;
A20:  [x1,y1] in dom(F.n) by A4,A17;
      (F#z1).n = (F.n).(x1,y1) by MESFUNC5:def 13; then
      (F#z1).n = ProjPMap1(F.n,x1).y1 by A20,Def3; then
      (F#z1).n = (ProjPMap1(F,x1).n).y1 by Def5;
      hence (F#z1).n = ((ProjPMap1(F,x1))#y1).n by MESFUNC5:def 13;
     end;
     hence (ProjPMap1(F,x1))#y1 is convergent by A18,FUNCT_2:def 8;
     F#z1 = (ProjPMap1(F,x1))#y1 by A19,FUNCT_2:def 8; then
     lim((ProjPMap1(F,x1))#y1) = f.(x1,y1) by A7,A17;
     hence lim((ProjPMap1(F,x1))#y1) = ProjPMap1(f,x1).y1 by A17,Def3;
    end;

A21:for x be Element of X1 holds
     lim(ProjPMap1(F,x)) = ProjPMap1(f,x)
   & FI2#x is convergent
   & lim(FI2#x) = Integral(M2,lim(ProjPMap1(F,x)))
    proof
     let x be Element of X1;

     dom(lim(ProjPMap1(F,x))) = dom((ProjPMap1(F,x)).0) by MESFUNC8:def 9; then
     dom(lim(ProjPMap1(F,x))) = dom(ProjPMap1(F.0,x)) by Def5; then
     dom(lim(ProjPMap1(F,x))) = X-section(dom(F.0),x) by Def3; then
     dom(lim(ProjPMap1(F,x))) = X-section(dom f,x) by A4; then
A22: dom(lim(ProjPMap1(F,x))) = dom(ProjPMap1(f,x)) by Def3;
     for y be Element of X2 st y in dom(lim(ProjPMap1(F,x)))
       holds (lim(ProjPMap1(F,x))).y = (ProjPMap1(f,x)).y
     proof
      let y be Element of X2;
      assume A23: y in dom(lim(ProjPMap1(F,x))); then
      (lim(ProjPMap1(F,x))).y = lim((ProjPMap1(F,x))#y)
        by MESFUNC8:def 9;
      hence (lim(ProjPMap1(F,x))).y = (ProjPMap1(f,x)).y by A16,A22,A23;
     end;
     hence lim(ProjPMap1(F,x)) = ProjPMap1(f,x) by A22,PARTFUN1:5;

A24: ProjPMap1(F,x).0 = ProjPMap1(F.0,x) by Def5; then
     dom(ProjPMap1(F,x).0) = X-section(dom(F.0),x) by Def3; then
     dom(ProjPMap1(F,x).0) = X-section(A,x) by A4,A3; then
A25: dom(ProjPMap1(F,x).0) = Measurable-X-section(A,x) by MEASUR11:def 6;

     F.0 is nonnegative by A5; then
A26: ProjPMap1(F,x).0 is nonnegative by A24,Th32;

A27: for n be Nat holds
       (ProjPMap1(F,x).n) is (Measurable-X-section(A,x))-measurable
     proof
      let n be Nat;
A28:  dom(F.n) = A by A3,A4;
      F.n is A-measurable by A4,MESFUNC2:34; then
      ProjPMap1(F.n,x) is (Measurable-X-section(A,x))-measurable
        by A28,Th47;
      hence ProjPMap1(F,x).n is (Measurable-X-section(A,x))-measurable
        by Def5;
     end;

A29: for n,m be Nat st n<=m holds for y be Element of X2
       st y in Measurable-X-section(A,x) holds
         (ProjPMap1(F,x).n).y <= (ProjPMap1(F,x).m).y
     proof
      let n,m be Nat;
      assume A30: n<=m;
      let y be Element of X2;

      assume A31: y in Measurable-X-section(A,x); then
      y in dom(ProjPMap1(F.0,x)) by A25,Def5; then
      y in X-section(dom(F.0),x) by Def3; then
      y in X-section(dom f,x) by A4; then
A32:  [x,y] in dom f by Th25;

A33:  dom(ProjPMap1(F,x).n) = dom(ProjPMap1(F,x).0) &
      dom(ProjPMap1(F,x).m) = dom(ProjPMap1(F,x).0)
        by A8,Th58,MESFUNC8:def 2;
      ProjPMap1(F,x).n = ProjPMap1(F.n,x)
    & ProjPMap1(F,x).m = ProjPMap1(F.m,x) by Def5; then
      (ProjPMap1(F,x).n).y = (F.n).(x,y)
    & (ProjPMap1(F,x).m).y = (F.m).(x,y) by A25,A31,A33,Th26;
      hence (ProjPMap1(F,x).n).y <= (ProjPMap1(F,x).m).y
       by A6,A30,A32;
     end;

     for y be Element of X2 st y in Measurable-X-section(A,x)
       holds (ProjPMap1(F,x))#y is convergent
     proof
      let y be Element of X2;
      assume y in Measurable-X-section(A,x); then
      y in X-section(dom f,x) by A3,MEASUR11:def 6; then
      y in dom(ProjPMap1(f,x)) by Def3;

      hence (ProjPMap1(F,x))#y is convergent by A16;
     end; then
     consider J be ExtREAL_sequence such that
A34:  (for n be Nat holds J.n = Integral(M2,ProjPMap1(F,x).n)) and
A35:  J is convergent and
A36:  Integral(M2,lim(ProjPMap1(F,x))) = lim J
         by A8,A25,A26,A27,A29,Th58,MESFUNC9:52;

     for n be Element of NAT holds J.n = (FI2#x).n
     proof
      let n be Element of NAT;
A37:  dom(FI2.n) = X1 by A14;
      (FI2#x).n = (FI2.n).x by MESFUNC5:def 13; then
      (FI2#x).n = Integral(M2,ProjPMap1(F.n,x)) by A15,A37; then
      (FI2#x).n = Integral(M2,ProjPMap1(F,x).n) by Def5;
      hence J.n = (FI2#x).n by A34;
     end;
     hence FI2#x is convergent
         & lim(FI2#x) = Integral(M2,lim(ProjPMap1(F,x)))
         by A35,A36,FUNCT_2:63;
    end;

    dom(lim FI2) = dom(FI2.0) by MESFUNC8:def 9; then
A38:dom(lim FI2) = X1 by A14; then
    reconsider I2 = lim FI2 as Function of X1,ExtREAL by FUNCT_2:def 1;
    take I2;

    for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x))
    proof
     let x be Element of X1;
     I2.x = lim(FI2#x) by A38,MESFUNC8:def 9; then
     I2.x = Integral(M2,lim(ProjPMap1(F,x))) by A21;
     hence I2.x = Integral(M2,ProjPMap1(f,x)) by A21;
    end;
    hence for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x));

    thus for V be Element of S1 holds I2 is V-measurable
    proof
     let V be Element of S1;
     now let m,n be Nat;
      dom(FI2.m) = X1 & dom(FI2.n) = X1 by A14;
      hence dom(FI2.m) = dom(FI2.n);
     end; then
A39: FI2 is with_the_same_dom by MESFUNC8:def 2;
A40: dom(FI2.0) = XX1 by A14;
A41: for n be Nat holds FI2.n is XX1-measurable
     proof
      let n be Nat;
      dom(F.n) = A
    & F.n is_simple_func_in sigma measurable_rectangles(S1,S2) by A4,A3; then
      consider L be Function of X1,ExtREAL such that
A42:   (for x be Element of X1 holds L.x = Integral(M2,ProjPMap1(F.n,x)))
     & (for W be Element of S1 holds L is W-measurable)
         by A1,A5,Lm6;

A43:  dom(FI2.n) = X1 by A14; then
A44:  FI2.n is Function of X1,ExtREAL by FUNCT_2:def 1;
      for x be Element of X1 holds (FI2.n).x = L.x
      proof
       let x be Element of X1;
       (FI2.n).x = Integral(M2,ProjPMap1(F.n,x)) by A15,A43;
       hence (FI2.n).x = L.x by A42;
      end; then
      FI2.n = L by A44,FUNCT_2:63;
      hence FI2.n is XX1-measurable by A42;
     end;

     for x be Element of X1 st x in XX1 holds FI2#x is convergent by A21;
     hence I2 is V-measurable by A39,A40,A41,MESFUNC8:25,MESFUNC1:30;
    end;
end;

Lm10:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  A be Element of sigma measurable_rectangles(S1,S2),
  f be PartFunc of [:X1,X2:],ExtREAL
 st M2 is sigma_finite
  & f is nonpositive & A = dom f & f is A-measurable
 holds
  ex I2 be Function of X1,ExtREAL st
   ( for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x)) )
 & ( for V be Element of S1 holds I2 is V-measurable )
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M2 is sigma_finite and
A3:  f is nonpositive & A = dom f & f is A-measurable;

    set S = sigma measurable_rectangles(S1,S2);
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider M = product_sigma_Measure(M1,M2) as sigma_Measure of S
      by MEASUR11:8;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;

    consider F be Functional_Sequence of [:X1,X2:],ExtREAL such that
A4:  for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f and
A5:  for n be Nat holds F.n is nonpositive and
A6:  for n,m be Nat st n <=m holds for z be Element of [:X1,X2:] st z in dom f
       holds (F.n).z >= (F.m).z and
A7:  for z be Element of [:X1,X2:] st z in dom f holds
       (F#z) is convergent & lim(F#z) = f.z by A3,MESFUN11:56;

    now let m,n be Nat;
     dom(F.m) = dom f by A4;
     hence dom(F.m) = dom(F.n) by A4;
    end; then
A8: F is with_the_same_dom by MESFUNC8:def 2;

    defpred P[Nat,object] means
      ex Fx be Function of X1,ExtREAL st
        $2 = Fx & dom Fx = X1 &
        (for x1 be Element of X1 st x1 in dom Fx holds
           Fx.x1 = Integral(M2,ProjPMap1(F.$1,x1)) );

A10:for n be Element of NAT ex FI2 be Element of PFuncs(X1,ExtREAL) st P[n,FI2]
    proof
     let n be Element of NAT;

     deffunc F(Element of X1) = Integral(M2,ProjPMap1(F.n,$1));

     consider FI2 be Function such that
A11:  dom FI2 = X1 & for x1 be Element of X1 holds FI2.x1 = F(x1)
        from FUNCT_1:sch 4;

A12: for x2 be object st x2 in X1 holds FI2.x2 in ExtREAL
     proof
      let x2 be object;
      assume x2 in X1; then
      reconsider x1 = x2 as Element of X1;
      FI2.x2 = Integral(M2,ProjPMap1(F.n,x1)) by A11;
      hence FI2.x2 in ExtREAL;
     end; then
     FI2 is Function of X1,ExtREAL by A11,FUNCT_2:3; then
     reconsider FI2 as Element of PFuncs(X1,ExtREAL) by PARTFUN1:45;
     take FI2;

     reconsider Fx = FI2 as Function of X1,ExtREAL by A12,A11,FUNCT_2:3;
     for x1 be Element of X1 st x1 in dom Fx holds
             Fx.x1 = Integral(M2,ProjPMap1(F.n,x1)) by A11;
     hence ex Fx be Function of X1,ExtREAL st FI2 = Fx & dom Fx = X1 &
       (for x1 be Element of X1 st x1 in dom Fx holds
          Fx.x1 = Integral(M2,ProjPMap1(F.n,x1)) ) by A11;
    end;

    consider FI2 be Function of NAT,PFuncs(X1,ExtREAL) such that
A13: for n be Element of NAT holds P[n,FI2.n] from FUNCT_2:sch 3(A10);

A14:for n be Nat holds dom(FI2.n) = X1
    proof
     let n be Nat;
     n is Element of NAT by ORDINAL1:def 12; then
     ex Fx be Function of X1,ExtREAL st
      FI2.n = Fx & dom Fx = X1 &
      (for x1 be Element of X1 st x1 in dom Fx
        holds Fx.x1 = Integral(M2,ProjPMap1(F.n,x1)) ) by A13;
     hence dom(FI2.n) = X1;
    end;

A15:for n be Nat, x1 be Element of X1 st x1 in dom(FI2.n) holds
     (FI2.n).x1 = Integral(M2,ProjPMap1(F.n,x1))
    proof
     let n be Nat, x1 be Element of X1;
     assume  x1 in dom(FI2.n);
     n is Element of NAT by ORDINAL1:def 12; then
     P[n,FI2.n] by A13;
     hence (FI2.n).x1 = Integral(M2,ProjPMap1(F.n,x1));
    end;

A16:for x1 be Element of X1, y1 be Element of X2 st y1 in dom ProjPMap1(f,x1)
     holds (ProjPMap1(F,x1))#y1 is convergent &
           lim((ProjPMap1(F,x1))#y1) = ProjPMap1(f,x1).y1
    proof
     let x1 be Element of X1, y1 be Element of X2;
     reconsider z1 = [x1,y1] as Element of [:X1,X2:] by ZFMISC_1:def 2;
     assume y1 in dom ProjPMap1(f,x1); then
     y1 in X-section(A,x1) by A3,Def3; then
A17: z1 in dom f by A3,Th25; then
A18: F#z1 is convergent by A7;

A19: for n be Element of NAT holds (F#z1).n = ((ProjPMap1(F,x1))#y1).n
     proof
      let n be Element of NAT;
A20:  [x1,y1] in dom(F.n) by A4,A17;
      (F#z1).n = (F.n).(x1,y1) by MESFUNC5:def 13; then
      (F#z1).n = ProjPMap1(F.n,x1).y1 by A20,Def3; then
      (F#z1).n = (ProjPMap1(F,x1).n).y1 by Def5;
      hence (F#z1).n = ((ProjPMap1(F,x1))#y1).n by MESFUNC5:def 13;
     end;
     hence (ProjPMap1(F,x1))#y1 is convergent by A18,FUNCT_2:def 8;
     F#z1 = (ProjPMap1(F,x1))#y1 by A19,FUNCT_2:def 8; then
     lim((ProjPMap1(F,x1))#y1) = f.(x1,y1) by A7,A17;
     hence lim((ProjPMap1(F,x1))#y1) = ProjPMap1(f,x1).y1 by A17,Def3;
    end;

A21:for x be Element of X1 holds
     lim(ProjPMap1(F,x)) = ProjPMap1(f,x)
   & FI2#x is convergent
   & lim(FI2#x) = Integral(M2,lim(ProjPMap1(F,x)))
    proof
     let x be Element of X1;

     dom(lim(ProjPMap1(F,x))) = dom((ProjPMap1(F,x)).0) by MESFUNC8:def 9; then
     dom(lim(ProjPMap1(F,x))) = dom(ProjPMap1(F.0,x)) by Def5; then
     dom(lim(ProjPMap1(F,x))) = X-section(dom(F.0),x) by Def3; then
     dom(lim(ProjPMap1(F,x))) = X-section(dom f,x) by A4; then
A22: dom(lim(ProjPMap1(F,x))) = dom(ProjPMap1(f,x)) by Def3;
     for y be Element of X2 st y in dom(lim(ProjPMap1(F,x)))
       holds (lim(ProjPMap1(F,x))).y = (ProjPMap1(f,x)).y
     proof
      let y be Element of X2;
      assume A23: y in dom(lim(ProjPMap1(F,x))); then
      (lim(ProjPMap1(F,x))).y = lim((ProjPMap1(F,x))#y)
        by MESFUNC8:def 9;
      hence (lim(ProjPMap1(F,x))).y = (ProjPMap1(f,x)).y by A16,A22,A23;
     end;
     hence lim(ProjPMap1(F,x)) = ProjPMap1(f,x) by A22,PARTFUN1:5;

A24: ProjPMap1(F,x).0 = ProjPMap1(F.0,x) by Def5; then
     dom(ProjPMap1(F,x).0) = X-section(dom(F.0),x) by Def3; then
     dom(ProjPMap1(F,x).0) = X-section(A,x) by A4,A3; then
A25: dom(ProjPMap1(F,x).0) = Measurable-X-section(A,x) by MEASUR11:def 6;

     F.0 is nonpositive by A5; then
A26: ProjPMap1(F,x).0 is nonpositive by A24,Th33;

A27: for n be Nat holds
       (ProjPMap1(F,x).n) is (Measurable-X-section(A,x))-measurable
     proof
      let n be Nat;
A28:  dom(F.n) = A by A3,A4;
      F.n is A-measurable by A4,MESFUNC2:34; then
      ProjPMap1(F.n,x) is (Measurable-X-section(A,x))-measurable
        by A28,Th47;
      hence ProjPMap1(F,x).n is (Measurable-X-section(A,x))-measurable
        by Def5;
     end;

A29: for n,m be Nat st n<=m holds for y be Element of X2
       st y in Measurable-X-section(A,x) holds
         (ProjPMap1(F,x).n).y >= (ProjPMap1(F,x).m).y
     proof
      let n,m be Nat;
      assume A30: n<=m;
      let y be Element of X2;

      assume A31: y in Measurable-X-section(A,x); then
      y in dom(ProjPMap1(F.0,x)) by A25,Def5; then
      y in X-section(dom(F.0),x) by Def3; then
      y in X-section(dom f,x) by A4; then
A32:  [x,y] in dom f by Th25;

A33:  dom(ProjPMap1(F,x).n) = dom(ProjPMap1(F,x).0) &
      dom(ProjPMap1(F,x).m) = dom(ProjPMap1(F,x).0)
        by A8,Th58,MESFUNC8:def 2;
      ProjPMap1(F,x).n = ProjPMap1(F.n,x)
    & ProjPMap1(F,x).m = ProjPMap1(F.m,x) by Def5; then
      (ProjPMap1(F,x).n).y = (F.n).(x,y)
    & (ProjPMap1(F,x).m).y = (F.m).(x,y) by A25,A31,A33,Th26;
      hence (ProjPMap1(F,x).n).y >= (ProjPMap1(F,x).m).y
       by A6,A30,A32;
     end;

     for y be Element of X2 st y in Measurable-X-section(A,x)
       holds (ProjPMap1(F,x))#y is convergent
     proof
      let y be Element of X2;
      assume y in Measurable-X-section(A,x); then
      y in X-section(dom f,x) by A3,MEASUR11:def 6; then
      y in dom(ProjPMap1(f,x)) by Def3;

      hence (ProjPMap1(F,x))#y is convergent by A16;
     end; then
     consider J be ExtREAL_sequence such that
A34:  (for n be Nat holds J.n = Integral(M2,ProjPMap1(F,x).n)) and
A35:  J is convergent and
A36:  Integral(M2,lim(ProjPMap1(F,x))) = lim J
         by A8,A25,A26,A27,A29,Th58,MESFUN11:74;

     for n be Element of NAT holds J.n = (FI2#x).n
     proof
      let n be Element of NAT;
A37:  dom(FI2.n) = X1 by A14;
      (FI2#x).n = (FI2.n).x by MESFUNC5:def 13; then
      (FI2#x).n = Integral(M2,ProjPMap1(F.n,x)) by A15,A37; then
      (FI2#x).n = Integral(M2,ProjPMap1(F,x).n) by Def5;
      hence J.n = (FI2#x).n by A34;
     end;
     hence FI2#x is convergent
         & lim(FI2#x) = Integral(M2,lim(ProjPMap1(F,x)))
         by A35,A36,FUNCT_2:63;
    end;

    dom(lim FI2) = dom(FI2.0) by MESFUNC8:def 9; then
A38:dom(lim FI2) = X1 by A14; then
    reconsider I2 = lim FI2 as Function of X1,ExtREAL by FUNCT_2:def 1;
    take I2;

    for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x))
    proof
     let x be Element of X1;
     I2.x = lim(FI2#x) by A38,MESFUNC8:def 9; then
     I2.x = Integral(M2,lim(ProjPMap1(F,x))) by A21;
     hence I2.x = Integral(M2,ProjPMap1(f,x)) by A21;
    end;
    hence for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x));

    thus for V be Element of S1 holds I2 is V-measurable
    proof
     let V be Element of S1;
     now let m,n be Nat;
      dom(FI2.m) = X1 & dom(FI2.n) = X1 by A14;
      hence dom(FI2.m) = dom(FI2.n);
     end; then
A39: FI2 is with_the_same_dom by MESFUNC8:def 2;
A40: dom(FI2.0) = XX1 by A14;
A41: for n be Nat holds FI2.n is XX1-measurable
     proof
      let n be Nat;
      dom(F.n) = A
    & F.n is_simple_func_in sigma measurable_rectangles(S1,S2) by A4,A3; then
      consider L be Function of X1,ExtREAL such that
A42:   (for x be Element of X1 holds L.x = Integral(M2,ProjPMap1(F.n,x)))
     & (for W be Element of S1 holds L is W-measurable)
         by A1,A5,Lm6;

A43:  dom(FI2.n) = X1 by A14; then
A44:  FI2.n is Function of X1,ExtREAL by FUNCT_2:def 1;
      for x be Element of X1 holds (FI2.n).x = L.x
      proof
       let x be Element of X1;
       (FI2.n).x = Integral(M2,ProjPMap1(F.n,x)) by A15,A43;
       hence (FI2.n).x = L.x by A42;
      end; then
      FI2.n = L by A44,FUNCT_2:63;
      hence FI2.n is XX1-measurable by A42;
     end;

     for x be Element of X1 st x in XX1 holds FI2#x is convergent by A21;
     hence I2 is V-measurable by A39,A40,A41,MESFUNC8:25,MESFUNC1:30;
    end;
end;

definition
   let X1,X2 be non empty set, S1 be SigmaField of X1,
   M1 be sigma_Measure of S1,
   f be PartFunc of [:X1,X2:],ExtREAL;
   func Integral1(M1,f) -> Function of X2,ExtREAL means :Def7:
   for y be Element of X2 holds it.y = Integral(M1,ProjPMap2(f,y));
existence
proof
    deffunc F(Element of X2) = Integral(M1,ProjPMap2(f,$1));
    ex IT be Function of X2,ExtREAL st
     for y be Element of X2 holds IT.y = F(y) from FUNCT_2:sch 4;
    hence thesis;
end;
uniqueness
proof
    let I1,I2 be Function of X2,ExtREAL;
    assume that
A1:  for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y)) and
A2:  for y be Element of X2 holds I2.y = Integral(M1,ProjPMap2(f,y));
    now let y be Element of X2;
     I1.y = Integral(M1,ProjPMap2(f,y)) by A1;
     hence I1.y = I2.y by A2;
    end;
    hence thesis by FUNCT_2:63;
end;
end;

definition
   let X1,X2 be non empty set, S2 be SigmaField of X2,
   M2 be sigma_Measure of S2,
   f be PartFunc of [:X1,X2:],ExtREAL;
   func Integral2(M2,f) -> Function of X1,ExtREAL means :Def8:
   for x be Element of X1 holds it.x = Integral(M2,ProjPMap1(f,x));
existence
proof
    deffunc F(Element of X1) = Integral(M2,ProjPMap1(f,$1));
    ex IT be Function of X1,ExtREAL st
     for x be Element of X1 holds IT.x = F(x) from FUNCT_2:sch 4;
    hence thesis;
end;
uniqueness
proof
    let I1,I2 be Function of X1,ExtREAL;
    assume that
A1:  for x be Element of X1 holds I1.x = Integral(M2,ProjPMap1(f,x)) and
A2:  for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x));
    now let x be Element of X1;
     I1.x = Integral(M2,ProjPMap1(f,x)) by A1;
     hence I1.x = I2.x by A2;
    end;
    hence thesis by FUNCT_2:63;
end;
end;

theorem Th59:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, f be PartFunc of [:X1,X2:],ExtREAL,
  E be Element of sigma measurable_rectangles(S1,S2), V be Element of S2
 st M1 is sigma_finite & (f is nonnegative or f is nonpositive)
  & E = dom f & f is E-measurable
 holds
  Integral1(M1,f) is V-measurable
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, f be PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2), V be Element of S2;
    assume that
A1:  M1 is sigma_finite and
A3:  f is nonnegative or f is nonpositive and
A4:  A = dom f and
A5:  f is A-measurable;
    consider I1 be Function of X2,ExtREAL such that
A6:  for y be Element of X2 holds I1.y = Integral(M1,ProjPMap2(f,y)) and
A7:  for W be Element of S2 holds I1 is W-measurable
       by A1,A3,A4,A5,Lm7,Lm8;
    I1 = Integral1(M1,f) by A6,Def7;
    hence Integral1(M1,f) is V-measurable by A7;
end;

theorem Th60:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, f be PartFunc of [:X1,X2:],ExtREAL,
  E be Element of sigma measurable_rectangles(S1,S2), U be Element of S1
 st M2 is sigma_finite & (f is nonnegative or f is nonpositive)
  & E = dom f & f is E-measurable
 holds
  Integral2(M2,f) is U-measurable
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M2 be sigma_Measure of S2, f be PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2), U be Element of S1;
    assume that
A1:  M2 is sigma_finite and
A3:  f is nonnegative or f is nonpositive and
A4:  A = dom f and
A5:  f is A-measurable;
    consider I2 be Function of X1,ExtREAL such that
A6:  for x be Element of X1 holds I2.x = Integral(M2,ProjPMap1(f,x)) and
A7:  for W be Element of S1 holds I2 is W-measurable
       by A1,A3,A4,A5,Lm9,Lm10;
    I2 = Integral2(M2,f) by A6,Def8;
    hence Integral2(M2,f) is U-measurable by A7;
end;

theorem Th61:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, y be Element of X2,
  E be Element of sigma measurable_rectangles(S1,S2)
st M1 is sigma_finite holds
   X-vol(E,M1).y = Integral(M1,chi(Measurable-Y-section(E,y),X1))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, y be Element of X2,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume M1 is sigma_finite; then
    X-vol(A,M1).y = M1.(Measurable-Y-section(A,y)) by MEASUR11:def 14;
    hence X-vol(A,M1).y
     = Integral(M1,chi(Measurable-Y-section(A,y),X1)) by MESFUNC9:14;
end;

theorem Th62:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, x be Element of X1,
  E be Element of sigma measurable_rectangles(S1,S2)
 st M2 is sigma_finite holds
   Y-vol(E,M2).x = Integral(M2,chi(Measurable-X-section(E,x),X2))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M2 be sigma_Measure of S2, x be Element of X1,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume M2 is sigma_finite; then
    Y-vol(A,M2).x = M2.(Measurable-X-section(A,x)) by MEASUR11:def 13;
    hence Y-vol(A,M2).x
      = Integral(M2,chi(Measurable-X-section(A,x),X2)) by MESFUNC9:14;
end;

theorem Th63:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  E be Element of sigma measurable_rectangles(S1,S2),
  x be Element of X1, y be Element of X2
holds
  ProjPMap1(chi(E,[:X1,X2:]),x) = chi(Measurable-X-section(E,x),X2)
& ProjPMap2(chi(E,[:X1,X2:]),y) = chi(Measurable-Y-section(E,y),X1)
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    A be Element of sigma measurable_rectangles(S1,S2),
    x be Element of X1, y be Element of X2;
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider XX12 = [:X1,X2:]
      as Element of sigma measurable_rectangles(S1,S2) by MEASURE1:7;
A1: x in XX1 implies X-section([:XX1,XX2:],x) = XX2 by MEASUR11:22;
    dom(ProjPMap1(chi(A,[:X1,X2:]),x))
     = X-section(dom(chi(A,[:X1,X2:])),x) by Def3
    .= X-section(XX12,x) by FUNCT_3:def 3; then
A2: dom(ProjPMap1(chi(A,[:X1,X2:]),x))
     = dom(chi(Measurable-X-section(A,x),X2)) by A1,FUNCT_3:def 3;

    now let y be Element of X2;
     assume y in dom(ProjPMap1(chi(A,[:X1,X2:]),x));
A3:  [x,y] in [:X1,X2:] by ZFMISC_1:def 2; then
     [x,y] in dom(chi(A,[:X1,X2:])) by FUNCT_3:def 3; then
A4:  ProjPMap1(chi(A,[:X1,X2:]),x).y = chi(A,[:X1,X2:]).(x,y) by Def3;

A5:  Measurable-X-section(A,x) = X-section(A,x) by MEASUR11:def 6
      .= {y where y is Element of X2: [x,y] in A} by MEASUR11:def 4;

     per cases;
     suppose A6: [x,y] in A; then
      y in Measurable-X-section(A,x) by A5; then
      chi(Measurable-X-section(A,x),X2).y = 1 by FUNCT_3:def 3;
      hence ProjPMap1(chi(A,[:X1,X2:]),x).y
         = chi(Measurable-X-section(A,x),X2).y by A4,A6,FUNCT_3:def 3;
     end;
     suppose A7: not [x,y] in A;
      now assume y in Measurable-X-section(A,x); then
       ex y1 be Element of X2 st y1= y & [x,y1] in A by A5;
       hence contradiction by A7;
      end; then
      chi(Measurable-X-section(A,x),X2).y = 0 by FUNCT_3:def 3;
      hence ProjPMap1(chi(A,[:X1,X2:]),x).y
         = chi(Measurable-X-section(A,x),X2).y by A3,A4,A7,FUNCT_3:def 3;
     end;
    end;
    hence ProjPMap1(chi(A,[:X1,X2:]),x) = chi(Measurable-X-section(A,x),X2)
      by A2,PARTFUN1:5;

A8: y in XX2 implies Y-section([:XX1,XX2:],y) = XX1 by MEASUR11:22;

    dom(ProjPMap2(chi(A,[:X1,X2:]),y))
     = Y-section(dom(chi(A,[:X1,X2:])),y) by Def4
    .= Y-section(XX12,y) by FUNCT_3:def 3; then
A9: dom(ProjPMap2(chi(A,[:X1,X2:]),y))
     = dom(chi(Measurable-Y-section(A,y),X1)) by A8,FUNCT_3:def 3;

    now let x be Element of X1;
     assume x in dom(ProjPMap2(chi(A,[:X1,X2:]),y));
A10: [x,y] in [:X1,X2:] by ZFMISC_1:def 2; then
     [x,y] in dom(chi(A,[:X1,X2:])) by FUNCT_3:def 3; then
A11: ProjPMap2(chi(A,[:X1,X2:]),y).x = chi(A,[:X1,X2:]).(x,y) by Def4;

A12: Measurable-Y-section(A,y) = Y-section(A,y) by MEASUR11:def 7
      .= {x where x is Element of X1: [x,y] in A} by MEASUR11:def 5;

     per cases;
     suppose A13: [x,y] in A; then
      x in Measurable-Y-section(A,y) by A12; then
      chi(Measurable-Y-section(A,y),X1).x = 1 by FUNCT_3:def 3;
      hence ProjPMap2(chi(A,[:X1,X2:]),y).x
         = chi(Measurable-Y-section(A,y),X1).x by A11,A13,FUNCT_3:def 3;
     end;
     suppose A14: not [x,y] in A;
      now assume x in Measurable-Y-section(A,y); then
       ex x1 be Element of X1 st x1= x & [x1,y] in A by A12;
       hence contradiction by A14;
      end; then
      chi(Measurable-Y-section(A,y),X1).x = 0 by FUNCT_3:def 3;
      hence ProjPMap2(chi(A,[:X1,X2:]),y).x
         = chi(Measurable-Y-section(A,y),X1).x by A10,A11,A14,FUNCT_3:def 3;
     end;
    end;
    hence thesis by A9,PARTFUN1:5;
end;

theorem Th64:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, E be Element of sigma measurable_rectangles(S1,S2)
st M1 is sigma_finite holds X-vol(E,M1) = Integral1(M1,chi(E,[:X1,X2:]))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume
A1:  M1 is sigma_finite;
    now let y be Element of X2;
A2:  X-vol(A,M1).y = Integral(M1,chi(Measurable-Y-section(A,y),X1))
       by A1,Th61;
     ProjPMap2(chi(A,[:X1,X2:]),y) = chi(Measurable-Y-section(A,y),X1)
       by Th63;
     hence X-vol(A,M1).y = Integral1(M1,chi(A,[:X1,X2:])).y by A2,Def7;
    end;
    hence thesis by FUNCT_2:def 8;
end;

theorem Th65:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, E be Element of sigma measurable_rectangles(S1,S2)
st M2 is sigma_finite holds Y-vol(E,M2) = Integral2(M2,chi(E,[:X1,X2:]))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume
a1:  M2 is sigma_finite;
    now let x be Element of X1;
A1:  Y-vol(A,M2).x = Integral(M2,chi(Measurable-X-section(A,x),X2))
       by a1,Th62;
     ProjPMap1(chi(A,[:X1,X2:]),x) = chi(Measurable-X-section(A,x),X2)
       by Th63;
     hence Y-vol(A,M2).x = Integral2(M2,chi(A,[:X1,X2:])).x by A1,Def8;
    end;
    hence thesis by FUNCT_2:def 8;
end;

definition
let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2;
 func Prod_Measure(M1,M2) ->
   sigma_Measure of sigma measurable_rectangles(S1,S2) equals
     product_sigma_Measure(M1,M2);
 correctness by MEASUR11:8;
end;

theorem Th66:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2)
  st E1 = dom f & f is nonnegative & f is E1-measurable holds
  Integral1(M1,f) is nonnegative & Integral1(M1,f|E2) is nonnegative
& Integral2(M2,f) is nonnegative & Integral2(M2,f|E2) is nonnegative
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f be PartFunc of [:X1,X2:],ExtREAL,
    A,B be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  A = dom f and
A2:  f is nonnegative and
A3:  f is A-measurable;

A4: f|B is nonnegative by A2,MESFUNC5:15;
A5: dom(f|B) = A /\ B by A1,RELAT_1:61;

A6: f is (A/\B)-measurable by A3,XBOOLE_1:17,MESFUNC1:30;
A7: dom f /\ (A/\B) = A/\B by A1,XBOOLE_1:17,28;
    f|(A/\B) = f|A /\ f|B by RELAT_1:79; then
    f|(A/\B) = f|B by A1,RELAT_1:59,XBOOLE_1:28; then
A8: f|B is (A/\B)-measurable by A6,A7,MESFUNC5:42;

    now let y be object;
     assume y in dom(Integral1(M1,f)); then
     reconsider y1=y as Element of X2;
A9:  ProjPMap2(f,y1) is (Measurable-Y-section(A,y1))-measurable
        by A1,A3,Th47;
     dom(ProjPMap2(f,y1)) = Y-section(A,y1) by A1,Def4; then
A10: dom(ProjPMap2(f,y1)) = Measurable-Y-section(A,y1) by MEASUR11:def 7; then
     integral+(M1,ProjPMap2(f,y1)) >= 0 by A2,A9,Th32,MESFUNC5:79; then
     Integral(M1,ProjPMap2(f,y1)) >= 0 by A2,A9,A10,Th32,MESFUNC5:88;
     hence Integral1(M1,f).y >= 0 by Def7;
    end;
    hence Integral1(M1,f) is nonnegative by SUPINF_2:52;

    now let y be object;
     assume y in dom(Integral1(M1,f|B)); then
     reconsider y1=y as Element of X2;

A11: ProjPMap2(f|B,y1) is (Measurable-Y-section(A/\B,y1))-measurable
        by A5,A8,Th47;
     dom(ProjPMap2(f|B,y1)) = Y-section(A/\B,y1) by A5,Def4; then
A12: dom(ProjPMap2(f|B,y1)) = Measurable-Y-section(A/\B,y1)
       by MEASUR11:def 7; then
     integral+(M1,ProjPMap2(f|B,y1)) >= 0 by A4,A11,Th32,MESFUNC5:79; then
     Integral(M1,ProjPMap2(f|B,y1)) >= 0 by A4,A11,A12,Th32,MESFUNC5:88;
     hence Integral1(M1,f|B).y >= 0 by Def7;
    end;
    hence Integral1(M1,f|B) is nonnegative by SUPINF_2:52;

    now let x be object;
     assume x in dom(Integral2(M2,f)); then
     reconsider x1=x as Element of X1;
A13: ProjPMap1(f,x1) is (Measurable-X-section(A,x1))-measurable
        by A1,A3,Th47;
     dom(ProjPMap1(f,x1)) = X-section(A,x1) by A1,Def3; then
A14: dom(ProjPMap1(f,x1)) = Measurable-X-section(A,x1) by MEASUR11:def 6; then
     integral+(M2,ProjPMap1(f,x1)) >= 0 by A2,A13,Th32,MESFUNC5:79; then
     Integral(M2,ProjPMap1(f,x1)) >= 0 by A2,A13,A14,Th32,MESFUNC5:88;
     hence Integral2(M2,f).x >= 0 by Def8;
    end;
    hence Integral2(M2,f) is nonnegative by SUPINF_2:52;

    now let x be object;
     assume x in dom(Integral2(M2,f|B)); then
     reconsider x1=x as Element of X1;

A15: ProjPMap1(f|B,x1) is (Measurable-X-section(A/\B,x1))-measurable
        by A5,A8,Th47;
     dom(ProjPMap1(f|B,x1)) = X-section(A/\B,x1) by A5,Def3; then
A16: dom(ProjPMap1(f|B,x1)) = Measurable-X-section(A/\B,x1)
       by MEASUR11:def 6; then
     integral+(M2,ProjPMap1(f|B,x1)) >= 0 by A4,A15,Th32,MESFUNC5:79; then
     Integral(M2,ProjPMap1(f|B,x1)) >= 0 by A4,A15,A16,Th32,MESFUNC5:88;
     hence Integral2(M2,f|B).x >= 0 by Def8;
    end;
    hence Integral2(M2,f|B) is nonnegative by SUPINF_2:52;
end;

theorem Th67:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2)
  st E1 = dom f & f is nonpositive & f is E1-measurable holds
  Integral1(M1,f) is nonpositive & Integral1(M1,f|E2) is nonpositive
& Integral2(M2,f) is nonpositive & Integral2(M2,f|E2) is nonpositive
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f be PartFunc of [:X1,X2:],ExtREAL,
    A,B be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  A = dom f and
A2:  f is nonpositive and
A3:  f is A-measurable;

A4: f|B is nonpositive by A2,MESFUN11:1;
A5: dom(f|B) = A /\ B by A1,RELAT_1:61;

A6: f is (A/\B)-measurable by A3,XBOOLE_1:17,MESFUNC1:30;
A7: dom f /\ (A/\B) = A/\B by A1,XBOOLE_1:17,28;
    f|(A/\B) = f|A /\ f|B by RELAT_1:79; then
    f|(A/\B) = f|B by A1,RELAT_1:59,XBOOLE_1:28; then
A8: f|B is (A/\B)-measurable by A6,A7,MESFUNC5:42;

    now let y be set;
     assume y in dom(Integral1(M1,f)); then
     reconsider y1=y as Element of X2;
A9:  ProjPMap2(f,y1) is (Measurable-Y-section(A,y1))-measurable
        by A1,A3,Th47;
     dom(ProjPMap2(f,y1)) = Y-section(A,y1) by A1,Def4; then
     dom(ProjPMap2(f,y1)) = Measurable-Y-section(A,y1) by MEASUR11:def 7; then
     Integral(M1,ProjPMap2(f,y1)) <= 0 by A2,A9,Th33,MESFUN11:61;
     hence Integral1(M1,f).y <= 0 by Def7;
    end;
    hence Integral1(M1,f) is nonpositive by MESFUNC5:9;

    now let y be set;
     assume y in dom(Integral1(M1,f|B)); then
     reconsider y1=y as Element of X2;

A10: ProjPMap2(f|B,y1) is (Measurable-Y-section(A/\B,y1))-measurable
        by A5,A8,Th47;
     dom(ProjPMap2(f|B,y1)) = Y-section(A/\B,y1) by A5,Def4; then
     dom(ProjPMap2(f|B,y1)) = Measurable-Y-section(A/\B,y1)
       by MEASUR11:def 7; then
     Integral(M1,ProjPMap2(f|B,y1)) <= 0 by A4,A10,Th33,MESFUN11:61;
     hence Integral1(M1,f|B).y <= 0 by Def7;
    end;
    hence Integral1(M1,f|B) is nonpositive by MESFUNC5:9;

    now let x be set;
     assume x in dom(Integral2(M2,f)); then
     reconsider x1=x as Element of X1;
A9:  ProjPMap1(f,x1) is (Measurable-X-section(A,x1))-measurable
        by A1,A3,Th47;
     dom(ProjPMap1(f,x1)) = X-section(A,x1) by A1,Def3; then
     dom(ProjPMap1(f,x1)) = Measurable-X-section(A,x1) by MEASUR11:def 6; then
     Integral(M2,ProjPMap1(f,x1)) <= 0 by A2,A9,Th33,MESFUN11:61;
     hence Integral2(M2,f).x <= 0 by Def8;
    end;
    hence Integral2(M2,f) is nonpositive by MESFUNC5:9;

    now let x be set;
     assume x in dom(Integral2(M2,f|B)); then
     reconsider x1=x as Element of X1;

A10: ProjPMap1(f|B,x1) is (Measurable-X-section(A/\B,x1))-measurable
        by A5,A8,Th47;
     dom(ProjPMap1(f|B,x1)) = X-section(A/\B,x1) by A5,Def3; then
     dom(ProjPMap1(f|B,x1)) = Measurable-X-section(A/\B,x1)
       by MEASUR11:def 6; then
     Integral(M2,ProjPMap1(f|B,x1)) <= 0 by A4,A10,Th33,MESFUN11:61;
     hence Integral2(M2,f|B).x <= 0 by Def8;
    end;
    hence Integral2(M2,f|B) is nonpositive by MESFUNC5:9;
end;

theorem Th68:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, f be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2), V be Element of S2
 st M1 is sigma_finite
  & (f is nonnegative or f is nonpositive) & E1 = dom f & f is E1-measurable
 holds
  Integral1(M1,f|E2) is V-measurable
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, f be PartFunc of [:X1,X2:],ExtREAL,
    E,A be Element of sigma measurable_rectangles(S1,S2), V be Element of S2;
    assume that
A1:  M1 is sigma_finite and
A2:  f is nonnegative or f is nonpositive and
A3:  E = dom f and
A4:  f is E-measurable;

A5: dom(f|A) = E /\ A by A3,RELAT_1:61;
A6: dom f /\ (E /\ A) = E /\ A by A3,XBOOLE_1:17,28;
    f is (E/\A)-measurable by A4,XBOOLE_1:17,MESFUNC1:30; then
    f|(E/\A) is (E/\A)-measurable by A6,MESFUNC5:42; then
    (f|E)|A is (E/\A)-measurable by RELAT_1:71;
    hence Integral1(M1,f|A) is V-measurable
      by A1,A2,A3,A5,MESFUNC5:15,MESFUN11:1,Th59;
end;

theorem Th69:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, f be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2), U be Element of S1
 st M2 is sigma_finite
  & (f is nonnegative or f is nonpositive) & E1 = dom f & f is E1-measurable
 holds
  Integral2(M2,f|E2) is U-measurable
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M2 be sigma_Measure of S2, f be PartFunc of [:X1,X2:],ExtREAL,
    E,A be Element of sigma measurable_rectangles(S1,S2), U be Element of S1;
    assume that
A1:  M2 is sigma_finite and
A2:  f is nonnegative or f is nonpositive and
A3:  E = dom f and
A4:  f is E-measurable;

A5: dom(f|A) = E /\ A by A3,RELAT_1:61;
A6: dom f /\ (E /\ A) = E /\ A by A3,XBOOLE_1:17,28;
    f is (E/\A)-measurable by A4,XBOOLE_1:17,MESFUNC1:30; then
    f|(E/\A) is (E/\A)-measurable by A6,MESFUNC5:42; then
    (f|E)|A is (E/\A)-measurable by RELAT_1:71;
    hence Integral2(M2,f|A) is U-measurable
      by A1,A2,A3,A5,MESFUNC5:15,MESFUN11:1,Th60;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, f be PartFunc of [:X1,X2:],ExtREAL,
  E be Element of sigma measurable_rectangles(S1,S2), y be Element of X2
 st E = dom f & (f is nonnegative or f is nonpositive) & f is E-measurable &
    (for x be Element of X1 st x in dom(ProjPMap2(f,y)) holds
     ProjPMap2(f,y).x = 0)
 holds Integral1(M1,f).y = 0
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, f be PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2), y be Element of X2;
    assume that
A1:  A = dom f and
A2:  f is nonnegative or f is nonpositive and
A3:  f is A-measurable and
A4:  for x be Element of X1 st x in dom(ProjPMap2(f,y)) holds
       ProjPMap2(f,y).x = 0;
A5: dom(ProjPMap2(f,y)) = Y-section(A,y) by A1,Def4
     .= Measurable-Y-section(A,y) by MEASUR11:def 7;
A6: ProjPMap2(f,y) is (Measurable-Y-section(A,y))-measurable by A1,A3,Th47;

    per cases by A2;
    suppose A7:f is nonnegative;
     integral+(M1,ProjPMap2(f,y)) = 0 by A1,A3,A4,A5,Th47,MESFUNC5:87; then
     Integral(M1,ProjPMap2(f,y)) = 0 by A5,A6,A7,Th32,MESFUNC5:88;
     hence Integral1(M1,f).y = 0 by Def7;
    end;
    suppose f is nonpositive; then
A8:  ProjPMap2(f,y) is nonpositive by Th33;
A9:  dom(-ProjPMap2(f,y)) = Measurable-Y-section(A,y) by A5,MESFUNC1:def 7;
     for x be Element of X1 st x in dom(-ProjPMap2(f,y)) holds
      (-ProjPMap2(f,y)).x = 0
     proof
      let x be Element of X1;
      assume A10: x in dom(-ProjPMap2(f,y)); then
      (-ProjPMap2(f,y)).x = -(ProjPMap2(f,y).x) by MESFUNC1:def 7; then
      (-ProjPMap2(f,y)).x = -0 by A4,A5,A9,A10;
      hence (-ProjPMap2(f,y)).x = 0;
     end; then
     integral+(M1,-ProjPMap2(f,y)) = 0
       by A5,A6,A9,MEASUR11:63,MESFUNC5:87; then
     -integral+(M1,-ProjPMap2(f,y)) = 0; then
     Integral(M1,ProjPMap2(f,y)) = 0 by A5,A6,A8,MESFUN11:57;
     hence Integral1(M1,f).y = 0 by Def7;
    end;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M2 be sigma_Measure of S2, f be PartFunc of [:X1,X2:],ExtREAL,
  E be Element of sigma measurable_rectangles(S1,S2), x be Element of X1
 st E = dom f & (f is nonnegative or f is nonpositive) & f is E-measurable &
    (for y be Element of X2 st y in dom(ProjPMap1(f,x)) holds
     ProjPMap1(f,x).y = 0)
 holds Integral2(M2,f).x = 0
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M2 be sigma_Measure of S2, f be PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2), x be Element of X1;
    assume that
A1:  A = dom f and
A2:  f is nonnegative or f is nonpositive and
A3:  f is A-measurable and
A4:  for y be Element of X2 st y in dom(ProjPMap1(f,x)) holds
       ProjPMap1(f,x).y = 0;
A5: dom(ProjPMap1(f,x)) = X-section(A,x) by A1,Def3
     .= Measurable-X-section(A,x) by MEASUR11:def 6;
A6: ProjPMap1(f,x) is (Measurable-X-section(A,x))-measurable by A1,A3,Th47;

    per cases by A2;
    suppose A7:f is nonnegative;
     integral+(M2,ProjPMap1(f,x)) = 0 by A1,A3,A4,A5,Th47,MESFUNC5:87; then
     Integral(M2,ProjPMap1(f,x)) = 0 by A5,A6,A7,Th32,MESFUNC5:88;
     hence Integral2(M2,f).x = 0 by Def8;
    end;
    suppose f is nonpositive; then
A8:  ProjPMap1(f,x) is nonpositive by Th33;
A9:  dom(-ProjPMap1(f,x)) = Measurable-X-section(A,x) by A5,MESFUNC1:def 7;
     for y be Element of X2 st y in dom(-ProjPMap1(f,x)) holds
      (-ProjPMap1(f,x)).y = 0
     proof
      let y be Element of X2;
      assume A10: y in dom(-ProjPMap1(f,x)); then
      (-ProjPMap1(f,x)).y = -(ProjPMap1(f,x).y) by MESFUNC1:def 7; then
      (-ProjPMap1(f,x)).y = -0 by A4,A5,A9,A10;
      hence (-ProjPMap1(f,x)).y = 0;
     end; then
     integral+(M2,-ProjPMap1(f,x)) = 0
       by A5,A6,A9,MEASUR11:63,MESFUNC5:87; then
     -integral+(M2,-ProjPMap1(f,x)) = 0; then
     Integral(M2,ProjPMap1(f,x)) = 0 by A5,A6,A8,MESFUN11:57;
     hence Integral2(M2,f).x = 0 by Def8;
    end;
end;

Lm11:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 E,A,B be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL st
 E = dom f & f is nonnegative & f is E-measurable & A misses B holds
  Integral1(M1,f|(A\/B)) = Integral1(M1,f|A) + Integral1(M1,f|B)
& Integral2(M2,f|(A\/B)) = Integral2(M2,f|A) + Integral2(M2,f|B)
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E,A,B be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  E = dom f and
A2:  f is nonnegative and
A3:  f is E-measurable and
A4:  A misses B;

    Integral1(M1,f|A) is nonnegative by A1,A2,A3,Th66; then
    reconsider IA = Integral1(M1,f|A) as without-infty Function of X2,ExtREAL;
    Integral1(M1,f|B) is nonnegative by A1,A2,A3,Th66; then
    reconsider IB = Integral1(M1,f|B) as without-infty Function of X2,ExtREAL;

    now let y be Element of X2;
A5:  Y-section(A,y) = Measurable-Y-section(A,y)
   & Y-section(B,y) = Measurable-Y-section(B,y)
   & Y-section(A\/B,y) = Measurable-Y-section(A\/B,y) by MEASUR11:def 7;

A6:  dom(ProjPMap2(f,y)) = Y-section(E,y) by A1,Def4
      .= Measurable-Y-section(E,y) by MEASUR11:def 7;
A7:  ProjPMap2(f,y) is (Measurable-Y-section(E,y))-measurable
      by A1,A3,Th47;

     A /\ B = {}[:X1,X2:] by A4; then
     Y-section(A /\ B,y) = {} by MEASUR11:24; then
A8:  Measurable-Y-section(A,y) misses Measurable-Y-section(B,y)
       by A5,MEASUR11:27;

     ProjPMap2(f|A,y) = ProjPMap2(f,y)|Y-section(A,y)
   & ProjPMap2(f|B,y) = ProjPMap2(f,y)|Y-section(B,y) by Th34; then
A9:  ProjPMap2(f|A,y) = ProjPMap2(f,y)|Measurable-Y-section(A,y)
   & ProjPMap2(f|B,y) = ProjPMap2(f,y)|Measurable-Y-section(B,y)
       by MEASUR11:def 7;

A10: Measurable-Y-section(A,y) \/ Measurable-Y-section(B,y)
      = Measurable-Y-section(A\/B,y) by A5,MEASUR11:26;

     (IA+IB).y = Integral1(M1,f|A).y + Integral1(M1,f|B).y by DBLSEQ_3:7
      .= Integral(M1,ProjPMap2(f|A,y)) + Integral1(M1,f|B).y
        by Def7
      .= Integral(M1,ProjPMap2(f|A,y)) + Integral(M1,ProjPMap2(f|B,y))
        by Def7
      .= Integral(M1,ProjPMap2(f,y)|Measurable-Y-section(A\/B,y))
        by A2,A6,A7,A8,A9,A10,Th32,MESFUNC5:91
      .= Integral(M1,ProjPMap2(f,y)|Y-section(A\/B,y)) by MEASUR11:def 7
      .= Integral(M1,ProjPMap2(f|(A\/B),y)) by Th34;
     hence Integral1(M1,f|(A \/ B)).y = (IA + IB).y by Def7;
    end;
    hence Integral1(M1,f|(A\/B)) = Integral1(M1,f|A) + Integral1(M1,f|B)
      by FUNCT_2:def 8;

    Integral2(M2,f|A) is nonnegative by A1,A2,A3,Th66; then
    reconsider JA = Integral2(M2,f|A) as without-infty Function of X1,ExtREAL;
    Integral2(M2,f|B) is nonnegative by A1,A2,A3,Th66; then
    reconsider JB = Integral2(M2,f|B) as without-infty Function of X1,ExtREAL;

    now let x be Element of X1;
A11: X-section(A,x) = Measurable-X-section(A,x)
   & X-section(B,x) = Measurable-X-section(B,x)
   & X-section(A\/B,x) = Measurable-X-section(A\/B,x) by MEASUR11:def 6;

A12: dom(ProjPMap1(f,x)) = X-section(E,x) by A1,Def3
      .= Measurable-X-section(E,x) by MEASUR11:def 6;
A13: ProjPMap1(f,x) is (Measurable-X-section(E,x))-measurable
      by A1,A3,Th47;

     A /\ B = {}[:X1,X2:] by A4; then
     X-section(A /\ B,x) = {} by MEASUR11:24; then
A14: Measurable-X-section(A,x) misses Measurable-X-section(B,x)
       by A11,MEASUR11:27;

     ProjPMap1(f|A,x) = ProjPMap1(f,x)|X-section(A,x)
   & ProjPMap1(f|B,x) = ProjPMap1(f,x)|X-section(B,x) by Th34; then
A15:  ProjPMap1(f|A,x) = ProjPMap1(f,x)|Measurable-X-section(A,x)
   & ProjPMap1(f|B,x) = ProjPMap1(f,x)|Measurable-X-section(B,x)
       by MEASUR11:def 6;

A16: Measurable-X-section(A,x) \/ Measurable-X-section(B,x)
      = Measurable-X-section(A\/B,x) by A11,MEASUR11:26;

     (JA+JB).x = Integral2(M2,f|A).x + Integral2(M2,f|B).x by DBLSEQ_3:7
      .= Integral(M2,ProjPMap1(f|A,x)) + Integral2(M2,f|B).x
        by Def8
      .= Integral(M2,ProjPMap1(f|A,x)) + Integral(M2,ProjPMap1(f|B,x))
        by Def8
      .= Integral(M2,ProjPMap1(f,x)|Measurable-X-section(A\/B,x))
        by A2,A12,A13,A14,A15,A16,Th32,MESFUNC5:91
      .= Integral(M2,ProjPMap1(f,x)|X-section(A\/B,x)) by MEASUR11:def 6
      .= Integral(M2,ProjPMap1(f|(A\/B),x)) by Th34;
     hence Integral2(M2,f|(A \/ B)).x = (JA + JB).x by Def8;
    end;
    hence thesis by FUNCT_2:def 8;
end;

Lm12:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 E,A,B be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL st
 E = dom f & f is nonpositive & f is E-measurable & A misses B holds
  Integral1(M1,f|(A\/B)) = Integral1(M1,f|A) + Integral1(M1,f|B)
& Integral2(M2,f|(A\/B)) = Integral2(M2,f|A) + Integral2(M2,f|B)
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E,A,B be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  E = dom f and
A2:  f is nonpositive and
A3:  f is E-measurable and
A4:  A misses B;

    Integral1(M1,f|A) is nonpositive by A1,A2,A3,Th67; then
    reconsider IA = Integral1(M1,f|A) as without+infty Function of X2,ExtREAL;
    Integral1(M1,f|B) is nonpositive by A1,A2,A3,Th67; then
    reconsider IB = Integral1(M1,f|B) as without+infty Function of X2,ExtREAL;

    now let y be Element of X2;
A5:  Y-section(A,y) = Measurable-Y-section(A,y)
   & Y-section(B,y) = Measurable-Y-section(B,y)
   & Y-section(A\/B,y) = Measurable-Y-section(A\/B,y) by MEASUR11:def 7;

A6:  dom(ProjPMap2(f,y)) = Y-section(E,y) by A1,Def4
      .= Measurable-Y-section(E,y) by MEASUR11:def 7;
A7:  ProjPMap2(f,y) is (Measurable-Y-section(E,y))-measurable
      by A1,A3,Th47;

     A /\ B = {}[:X1,X2:] by A4; then
     Y-section(A /\ B,y) = {} by MEASUR11:24; then
A8:  Measurable-Y-section(A,y) misses Measurable-Y-section(B,y)
       by A5,MEASUR11:27;

     ProjPMap2(f|A,y) = ProjPMap2(f,y)|Y-section(A,y)
   & ProjPMap2(f|B,y) = ProjPMap2(f,y)|Y-section(B,y) by Th34; then
A9:  ProjPMap2(f|A,y) = ProjPMap2(f,y)|Measurable-Y-section(A,y)
   & ProjPMap2(f|B,y) = ProjPMap2(f,y)|Measurable-Y-section(B,y)
       by MEASUR11:def 7;

A10: Measurable-Y-section(A,y) \/ Measurable-Y-section(B,y)
      = Measurable-Y-section(A\/B,y) by A5,MEASUR11:26;

     (IA+IB).y = Integral1(M1,f|A).y + Integral1(M1,f|B).y by DBLSEQ_3:7
      .= Integral(M1,ProjPMap2(f|A,y)) + Integral1(M1,f|B).y
        by Def7
      .= Integral(M1,ProjPMap2(f|A,y)) + Integral(M1,ProjPMap2(f|B,y))
        by Def7
      .= Integral(M1,ProjPMap2(f,y)|Measurable-Y-section(A\/B,y))
        by A2,A6,A7,A8,A9,A10,Th33,MESFUN11:62
      .= Integral(M1,ProjPMap2(f,y)|Y-section(A\/B,y)) by MEASUR11:def 7
      .= Integral(M1,ProjPMap2(f|(A\/B),y)) by Th34;
     hence Integral1(M1,f|(A \/ B)).y = (IA + IB).y by Def7;
    end;
    hence Integral1(M1,f|(A\/B)) = Integral1(M1,f|A) + Integral1(M1,f|B)
      by FUNCT_2:def 8;

    Integral2(M2,f|A) is nonpositive by A1,A2,A3,Th67; then
    reconsider JA = Integral2(M2,f|A) as without+infty Function of X1,ExtREAL;
    Integral2(M2,f|B) is nonpositive by A1,A2,A3,Th67; then
    reconsider JB = Integral2(M2,f|B) as without+infty Function of X1,ExtREAL;

    now let x be Element of X1;
A5:  X-section(A,x) = Measurable-X-section(A,x)
   & X-section(B,x) = Measurable-X-section(B,x)
   & X-section(A\/B,x) = Measurable-X-section(A\/B,x) by MEASUR11:def 6;

A6:  dom(ProjPMap1(f,x)) = X-section(E,x) by A1,Def3
      .= Measurable-X-section(E,x) by MEASUR11:def 6;
A7:  ProjPMap1(f,x) is (Measurable-X-section(E,x))-measurable
      by A1,A3,Th47;
     A /\ B = {}[:X1,X2:] by A4; then
     X-section(A /\ B,x) = {} by MEASUR11:24; then
A8:  Measurable-X-section(A,x) misses Measurable-X-section(B,x)
       by A5,MEASUR11:27;

     ProjPMap1(f|A,x) = ProjPMap1(f,x)|X-section(A,x)
   & ProjPMap1(f|B,x) = ProjPMap1(f,x)|X-section(B,x) by Th34; then
A9:  ProjPMap1(f|A,x) = ProjPMap1(f,x)|Measurable-X-section(A,x)
   & ProjPMap1(f|B,x) = ProjPMap1(f,x)|Measurable-X-section(B,x)
       by MEASUR11:def 6;

A10: Measurable-X-section(A,x) \/ Measurable-X-section(B,x)
      = Measurable-X-section(A\/B,x) by A5,MEASUR11:26;

     (JA+JB).x = Integral2(M2,f|A).x + Integral2(M2,f|B).x by DBLSEQ_3:7
      .= Integral(M2,ProjPMap1(f|A,x)) + Integral2(M2,f|B).x
        by Def8
      .= Integral(M2,ProjPMap1(f|A,x)) + Integral(M2,ProjPMap1(f|B,x))
        by Def8
      .= Integral(M2,ProjPMap1(f,x)|Measurable-X-section(A\/B,x))
        by A2,A6,A7,A8,A9,A10,Th33,MESFUN11:62
      .= Integral(M2,ProjPMap1(f,x)|X-section(A\/B,x)) by MEASUR11:def 6
      .= Integral(M2,ProjPMap1(f|(A\/B),x)) by Th34;
     hence Integral2(M2,f|(A \/ B)).x = (JA + JB).x by Def8;
    end;
    hence thesis by FUNCT_2:def 8;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 E,E1,E2 be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL st
  E = dom f & (f is nonnegative or f is nonpositive)
& f is E-measurable & E1 misses E2
holds
  Integral1(M1,f|(E1\/E2)) = Integral1(M1,f|E1) + Integral1(M1,f|E2)
& Integral2(M2,f|(E1\/E2)) = Integral2(M2,f|E1) + Integral2(M2,f|E2)
by Lm11,Lm12;

theorem Th73:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f be PartFunc of [:X1,X2:],ExtREAL,
  E be Element of sigma measurable_rectangles(S1,S2)
  st E = dom f & f is E-measurable
  holds
  Integral1(M1,-f) = -Integral1(M1,f) & Integral2(M2,-f) = -Integral2(M2,f)
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f be PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  A = dom f and
A2:  f is A-measurable;

A3: dom(-Integral1(M1,f)) = X2 & dom(-Integral2(M2,f)) = X1 by FUNCT_2:def 1;

    now let y be Element of X2;
     ProjPMap2(-f,y) = ProjPMap2((-1)(#)f,y) by MESFUNC2:9
      .= (-1)(#)ProjPMap2(f,y) by Th29
      .= -(ProjPMap2(f,y)) by MESFUNC2:9; then
A4:  Integral1(M1,-f).y = Integral(M1,-ProjPMap2(f,y)) by Def7;

     dom(ProjPMap2(f,y)) = Y-section(A,y) by A1,Def4; then
A5:  dom(ProjPMap2(f,y)) = Measurable-Y-section(A,y) by MEASUR11:def 7;

     (-Integral1(M1,f)).y = -(Integral1(M1,f).y) by A3,MESFUNC1:def 7; then
     (-Integral1(M1,f)).y = -(Integral(M1,ProjPMap2(f,y))) by Def7;
     hence Integral1(M1,-f).y = (-Integral1(M1,f)).y
       by A1,A2,A4,A5,Th47,MESFUN11:52;
    end;
    hence Integral1(M1,-f) = -Integral1(M1,f) by FUNCT_2:def 8;

    now let x be Element of X1;
     ProjPMap1(-f,x) = ProjPMap1((-1)(#)f,x) by MESFUNC2:9
      .= (-1)(#)ProjPMap1(f,x) by Th29
      .= -(ProjPMap1(f,x)) by MESFUNC2:9; then
A6:  Integral2(M2,-f).x = Integral(M2,-ProjPMap1(f,x)) by Def8;

     dom(ProjPMap1(f,x)) = X-section(A,x) by A1,Def3; then
A7:  dom(ProjPMap1(f,x)) = Measurable-X-section(A,x) by MEASUR11:def 6;

     (-Integral2(M2,f)).x = -(Integral2(M2,f).x) by A3,MESFUNC1:def 7; then
     (-Integral2(M2,f)).x = -(Integral(M2,ProjPMap1(f,x))) by Def8;
     hence Integral2(M2,-f).x = (-Integral2(M2,f)).x
       by A1,A2,A6,A7,Th47,MESFUN11:52;
    end;
    hence Integral2(M2,-f) = -Integral2(M2,f) by FUNCT_2:def 8;
end;

theorem Th74:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f,g be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2)
  st E1 = dom f & f is nonnegative & f is E1-measurable
   & E2 = dom g & g is nonnegative & g is E2-measurable
  holds
  Integral1(M1,f+g) = Integral1(M1,f|dom(f+g)) + Integral1(M1,g|dom(f+g))
& Integral2(M2,f+g) = Integral2(M2,f|dom(f+g)) + Integral2(M2,g|dom(f+g))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f,g be PartFunc of [:X1,X2:],ExtREAL,
    A,B be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  A = dom f and
A2:  f is nonnegative and
A3:  f is A-measurable and
A4:  B = dom g and
A5:  g is nonnegative and
A6:  g is B-measurable;
A7: dom(f+g) = A /\ B by A1,A2,A4,A5,MESFUNC5:22;
    set f1 = f|(A/\B), g1 = g|(A/\B);
A8: dom f1 = A /\ B & dom g1 = A /\ B by A1,A4,XBOOLE_1:17,RELAT_1:62;
A9: dom f /\ (A /\ B) = A /\ B & dom g /\ (A /\ B) = A /\ B
      by A1,A4,XBOOLE_1:17,28;
A10:f is (A/\B)-measurable & g is (A/\B)-measurable
      by A3,A6,XBOOLE_1:17,MESFUNC1:30; then
A11:f1 is (A/\B)-measurable & g1 is (A/\B)-measurable
      by A9,MESFUNC5:42;
A12:f1 is nonnegative & g1 is nonnegative by A2,A5,MESFUNC5:15; then
A13:Integral1(M1,f1) is nonnegative & Integral1(M1,g1) is nonnegative
  & Integral2(M2,f1) is nonnegative & Integral2(M2,g1) is nonnegative
      by A8,A11,Th66; then
    reconsider IF1 = Integral1(M1,f1), IG1 = Integral1(M1,g1)
      as without-infty Function of X2,ExtREAL;
    reconsider IF2 = Integral2(M2,f1), IG2 = Integral2(M2,g1)
      as without-infty Function of X1,ExtREAL by A13;
A14:IF1+IG1 = Integral1(M1,f1) + Integral1(M1,g1)
  & IF2+IG2 = Integral2(M2,f1) + Integral2(M2,g1);

A21:f+g is nonnegative by A2,A5,MESFUNC5:22;

    for y be Element of X2 holds
     (Integral1(M1,f1)+Integral1(M1,g1)).y = Integral1(M1,f+g).y
    proof
     let y be Element of X2;
     dom(ProjPMap2(f1,y)) = Y-section(A /\ B,y)
   & dom(ProjPMap2(g1,y)) = Y-section(A /\ B,y) by A8,Def4; then
A15: dom(ProjPMap2(f1,y)) = Measurable-Y-section(A /\ B,y)
   & dom(ProjPMap2(g1,y)) = Measurable-Y-section(A /\ B,y) by MEASUR11:def 7;
     ProjPMap2(f1,y) is (Measurable-Y-section(A/\B,y))-measurable
   & ProjPMap2(g1,y) is (Measurable-Y-section(A/\B,y))-measurable
        by A8,A11,Th47; then
A16: Integral(M1,ProjPMap2(f1,y)) = integral+(M1,ProjPMap2(f1,y))
   & Integral(M1,ProjPMap2(g1,y)) = integral+(M1,ProjPMap2(g1,y))
       by A12,A15,Th32,MESFUNC5:88;

A17: ProjPMap2(f+g,y) = ProjPMap2(f,y) + ProjPMap2(g,y) by Th44;

     ProjPMap2(f1,y) = ProjPMap2(f,y)|Y-section(A /\ B,y)
   & ProjPMap2(g1,y) = ProjPMap2(g,y)|Y-section(A /\ B,y)
      by Th34; then
A18: ProjPMap2(f1,y) = ProjPMap2(f,y)|Measurable-Y-section(A /\ B,y)
   & ProjPMap2(g1,y) = ProjPMap2(g,y)|Measurable-Y-section(A /\ B,y)
       by MEASUR11:def 7;

     dom(ProjPMap2(f,y)) = Y-section(A,y)
   & dom(ProjPMap2(g,y)) = Y-section(B,y) by A1,A4,Def4; then
A19: dom(ProjPMap2(f,y)) = Measurable-Y-section(A,y)
   & dom(ProjPMap2(g,y)) = Measurable-Y-section(B,y) by MEASUR11:def 7;

     dom(ProjPMap2(f+g,y)) = Y-section(A /\ B,y) by A7,Def4; then
A20: Measurable-Y-section(A /\ B,y) = dom(ProjPMap2(f+g,y)) by MEASUR11:def 7;

     f+g is (A/\B)-measurable by A2,A5,A10,MESFUNC5:31; then
A22: ProjPMap2(f+g,y) is (Measurable-Y-section(A/\B,y))-measurable
       by A7,Th47;

A23: (Integral1(M1,f1)+Integral1(M1,g1)).y
      = Integral1(M1,f1).y + Integral1(M1,g1).y by A13,DBLSEQ_3:7
     .= Integral(M1,ProjPMap2(f1,y)) + Integral1(M1,g1).y by Def7
     .= integral+(M1,ProjPMap2(f1,y)) + integral+(M1,ProjPMap2(g1,y))
       by A16,Def7;

     ProjPMap2(f,y) is nonnegative & ProjPMap2(g,y) is nonnegative
   & ProjPMap2(f,y) is (Measurable-Y-section(A,y))-measurable
   & ProjPMap2(g,y) is (Measurable-Y-section(B,y))-measurable
       by A1,A3,A4,A6,A2,A5,Th32,Th47; then
     ex C be Element of S1 st
      C = dom(ProjPMap2(f,y)+ProjPMap2(g,y)) &
      integral+(M1,ProjPMap2(f,y)+ProjPMap2(g,y))
       = integral+(M1,ProjPMap2(f,y)|C) + integral+(M1,ProjPMap2(g,y)|C)
          by A19,MESFUNC5:78; then
     (Integral1(M1,f1)+Integral1(M1,g1)).y
       = Integral(M1,ProjPMap2(f+g,y))
      by A17,A18,A20,A23,A21,A22,Th32,MESFUNC5:88;
     hence Integral1(M1,f+g).y
      = (Integral1(M1,f1) + Integral1(M1,g1)).y by Def7;
    end;
    hence Integral1(M1,f+g)
      = Integral1(M1,f|dom(f+g)) + Integral1(M1,g|dom(f+g))
        by A7,A14,FUNCT_2:63;
    for x be Element of X1 holds
     (Integral2(M2,f1)+Integral2(M2,g1)).x = Integral2(M2,f+g).x
    proof
     let x be Element of X1;
     dom(ProjPMap1(f1,x)) = X-section(A /\ B,x)
   & dom(ProjPMap1(g1,x)) = X-section(A /\ B,x) by A8,Def3; then
B15: dom(ProjPMap1(f1,x)) = Measurable-X-section(A /\ B,x)
   & dom(ProjPMap1(g1,x)) = Measurable-X-section(A /\ B,x) by MEASUR11:def 6;
     ProjPMap1(f1,x) is (Measurable-X-section(A/\B,x))-measurable
   & ProjPMap1(g1,x) is (Measurable-X-section(A/\B,x))-measurable
        by A8,A11,Th47; then
B16: Integral(M2,ProjPMap1(f1,x)) = integral+(M2,ProjPMap1(f1,x))
   & Integral(M2,ProjPMap1(g1,x)) = integral+(M2,ProjPMap1(g1,x))
       by A12,B15,Th32,MESFUNC5:88;

B17: ProjPMap1(f+g,x) = ProjPMap1(f,x) + ProjPMap1(g,x) by Th44;

     ProjPMap1(f1,x) = ProjPMap1(f,x)|X-section(A /\ B,x)
   & ProjPMap1(g1,x) = ProjPMap1(g,x)|X-section(A /\ B,x)
      by Th34; then
B18: ProjPMap1(f1,x) = ProjPMap1(f,x)|Measurable-X-section(A /\ B,x)
   & ProjPMap1(g1,x) = ProjPMap1(g,x)|Measurable-X-section(A /\ B,x)
       by MEASUR11:def 6;
     dom(ProjPMap1(f,x)) = X-section(A,x)
   & dom(ProjPMap1(g,x)) = X-section(B,x) by A1,A4,Def3; then
B19: dom(ProjPMap1(f,x)) = Measurable-X-section(A,x)
   & dom(ProjPMap1(g,x)) = Measurable-X-section(B,x) by MEASUR11:def 6;
     dom(ProjPMap1(f+g,x)) = X-section(A /\ B,x) by A7,Def3; then
B20: Measurable-X-section(A /\ B,x) = dom(ProjPMap1(f+g,x)) by MEASUR11:def 6;
     f+g is (A/\B)-measurable by A2,A5,A10,MESFUNC5:31; then
B22: ProjPMap1(f+g,x) is (Measurable-X-section(A/\B,x))-measurable
       by A7,Th47;
B23: (Integral2(M2,f1)+Integral2(M2,g1)).x
      = Integral2(M2,f1).x + Integral2(M2,g1).x by A13,DBLSEQ_3:7
     .= Integral(M2,ProjPMap1(f1,x)) + Integral2(M2,g1).x by Def8
     .= integral+(M2,ProjPMap1(f1,x)) + integral+(M2,ProjPMap1(g1,x))
       by B16,Def8;
     ProjPMap1(f,x) is nonnegative & ProjPMap1(g,x) is nonnegative
   & ProjPMap1(f,x) is (Measurable-X-section(A,x))-measurable
   & ProjPMap1(g,x) is (Measurable-X-section(B,x))-measurable
       by A1,A3,A4,A6,A2,A5,Th32,Th47; then
     ex C be Element of S2 st
      C = dom(ProjPMap1(f,x)+ProjPMap1(g,x)) &
      integral+(M2,ProjPMap1(f,x)+ProjPMap1(g,x))
       = integral+(M2,ProjPMap1(f,x)|C) + integral+(M2,ProjPMap1(g,x)|C)
          by B19,MESFUNC5:78; then
     (Integral2(M2,f1)+Integral2(M2,g1)).x
       = Integral(M2,ProjPMap1(f+g,x))
      by B17,B18,B20,B23,A21,B22,Th32,MESFUNC5:88;
     hence Integral2(M2,f+g).x
      = (Integral2(M2,f1) + Integral2(M2,g1)).x by Def8;
    end;
    hence Integral2(M2,f+g)
      = Integral2(M2,f|dom(f+g)) + Integral2(M2,g|dom(f+g))
        by A7,A14,FUNCT_2:63;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f,g be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2)
  st E1 = dom f & f is nonpositive & f is E1-measurable &
     E2 = dom g & g is nonpositive & g is E2-measurable holds
  Integral1(M1,f+g) = Integral1(M1,f|dom(f+g)) + Integral1(M1,g|dom(f+g))
& Integral2(M2,f+g) = Integral2(M2,f|dom(f+g)) + Integral2(M2,g|dom(f+g))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f,g be PartFunc of [:X1,X2:],ExtREAL,
    A,B be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  A = dom f and
A2:  f is nonpositive and
A3:  f is A-measurable and
A4:  B = dom g and
A5:  g is nonpositive and
A6:  g is B-measurable;

    reconsider f1 = -f as nonnegative PartFunc of [:X1,X2:],ExtREAL by A2;
    reconsider g1 = -g as nonnegative PartFunc of [:X1,X2:],ExtREAL by A5;

A7: f1+g1 = -(f+g) by MEASUR11:64;

A8: dom f1 = A & dom g1 = B by A1,A4,MESFUNC1:def 7; then
A9: dom(f1+g1) = A /\ B by MESFUNC5:22; then
A10:dom(f+g) = A /\ B by A7,MESFUNC1:def 7; then
A11:dom(f|dom(f+g)) = A /\ B & dom(g|dom(f+g)) = A /\ B
      by A1,A4,XBOOLE_1:17,RELAT_1:62;

A12:dom f /\ (A /\ B) = A /\ B & dom g /\ (A /\ B) = A /\ B
      by A1,A4,XBOOLE_1:17,28;

A13:f1|dom(f1+g1) = -(f|dom(f+g)) & g1|dom(f1+g1) = -(g|dom(f+g))
      by A9,A10,MESFUN11:3;

A14:f is (A/\B)-measurable & g is (A/\B)-measurable
      by A3,A6,XBOOLE_1:17,MESFUNC1:30; then
    f|dom(f+g) is (A/\B)-measurable
  & g|dom(f+g) is (A/\B)-measurable by A10,A12,MESFUNC5:42; then
A15:Integral1(M1,f1|dom(f1+g1)) = -Integral1(M1,f|dom(f+g))
  & Integral1(M1,g1|dom(f1+g1)) = -Integral1(M1,g|dom(f+g))
  & Integral2(M2,f1|dom(f1+g1)) = -Integral2(M2,f|dom(f+g))
  & Integral2(M2,g1|dom(f1+g1)) = -Integral2(M2,g|dom(f+g))
      by A11,A13,Th73;

    f+g is (A/\B)-measurable by A2,A5,A10,A14,MEASUR11:65; then
A16:Integral1(M1,f1+g1) = -Integral1(M1,f+g)
  & Integral2(M2,f1+g1) = -Integral2(M2,f+g) by A7,A10,Th73;

A17:f1 is A-measurable & g1 is B-measurable
      by A1,A3,A4,A6,MEASUR11:63; then
    Integral1(M1,f1+g1)
     = Integral1(M1,f1|dom(f1+g1)) + Integral1(M1,g1|dom(f1+g1))
       by A8,Th74; then
    -Integral1(M1,f+g)
     = -(Integral1(M1,f|dom(f+g)) + Integral1(M1,g|dom(f+g)))
       by A15,A16,MEASUR11:64; then
    Integral1(M1,f+g)
      = -(-(Integral1(M1,f|dom(f+g)) + Integral1(M1,g|dom(f+g))))
       by DBLSEQ_3:2;
    hence
    Integral1(M1,f+g) = Integral1(M1,f|dom(f+g)) + Integral1(M1,g|dom(f+g))
       by DBLSEQ_3:2;
    Integral2(M2,f1+g1)
     = Integral2(M2,f1|dom(f1+g1)) + Integral2(M2,g1|dom(f1+g1))
       by A8,A17,Th74; then
    -Integral2(M2,f+g)
     = -(Integral2(M2,f|dom(f+g)) + Integral2(M2,g|dom(f+g)))
       by A15,A16,MEASUR11:64; then
    Integral2(M2,f+g)
      = -(-(Integral2(M2,f|dom(f+g)) + Integral2(M2,g|dom(f+g))))
       by DBLSEQ_3:2;
    hence
    Integral2(M2,f+g) = Integral2(M2,f|dom(f+g)) + Integral2(M2,g|dom(f+g))
       by DBLSEQ_3:2;
end;

theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f,g be PartFunc of [:X1,X2:],ExtREAL,
  E1,E2 be Element of sigma measurable_rectangles(S1,S2)
  st E1 = dom f & f is nonnegative & f is E1-measurable &
     E2 = dom g & g is nonpositive & g is E2-measurable holds
  Integral1(M1,f-g) = Integral1(M1,f|dom(f-g)) - Integral1(M1,g|dom(f-g))
& Integral1(M1,g-f) = Integral1(M1,g|dom(g-f)) - Integral1(M1,f|dom(g-f))
& Integral2(M2,f-g) = Integral2(M2,f|dom(f-g)) - Integral2(M2,g|dom(f-g))
& Integral2(M2,g-f) = Integral2(M2,g|dom(g-f)) - Integral2(M2,f|dom(g-f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f,g be PartFunc of [:X1,X2:],ExtREAL,
    A,B be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  A = dom f and
A2:  f is nonnegative and
A3:  f is A-measurable and
A4:  B = dom g and
A5:  g is nonpositive and
A6:  g is B-measurable;
    reconsider g1 = -g as nonnegative PartFunc of [:X1,X2:],ExtREAL by A5;
A7: B = dom g1 by A4,MESFUNC1:def 7;
A8: g1 is B-measurable by A4,A6,MEASUR11:63;
A9: f is (A/\B)-measurable & g is (A/\B)-measurable
      by A3,A6,XBOOLE_1:17,MESFUNC1:30;
A10:dom(f-g) = A/\B by A1,A2,A4,A5,MESFUNC5:17; then
A11:A/\B = dom(g|dom(f-g)) by A4,XBOOLE_1:17,RELAT_1:62; then
    A/\B = dom g /\ dom(f-g) by RELAT_1:61; then
A12:g|dom(f-g) is (A/\B)-measurable by A9,A10,MESFUNC5:42;
A13: f+g1 = f-g by MESFUNC2:8; then
A14:Integral1(M1,f-g)
      = Integral1(M1,f|dom(f-g)) + Integral1(M1,g1|dom(f-g))
        by A1,A2,A3,A7,A8,Th74
     .= Integral1(M1,f|dom(f-g)) + Integral1(M1,-(g|dom(f-g)))
        by MESFUN11:3
     .= Integral1(M1,f|dom(f-g)) + -Integral1(M1,g|dom(f-g))
        by A11,A12,Th73;
    hence Integral1(M1,f-g)
      = Integral1(M1,f|dom(f-g)) - Integral1(M1,g|dom(f-g)) by MESFUNC2:8;
A15:f-g is (A/\B)-measurable by A2,A5,A9,A10,MEASUR11:67;
A16:g-f = -(f-g) by MEASUR11:64; then
A17:dom(g-f) = A/\B by A10,MESFUNC1:def 7;

    Integral1(M1,g-f) = -Integral1(M1,f-g) by A10,A16,A15,Th73;
    hence
     Integral1(M1,g-f) = Integral1(M1,g|dom(g-f)) - Integral1(M1,f|dom(g-f))
      by A10,A14,A17,MEASUR11:64;

A18:Integral2(M2,f-g)
      = Integral2(M2,f|dom(f-g)) + Integral2(M2,g1|dom(f-g))
        by A1,A2,A3,A7,A8,A13,Th74
     .= Integral2(M2,f|dom(f-g)) + Integral2(M2,-(g|dom(f-g)))
        by MESFUN11:3
     .= Integral2(M2,f|dom(f-g)) + -Integral2(M2,g|dom(f-g))
        by A11,A12,Th73;
    hence Integral2(M2,f-g)
      = Integral2(M2,f|dom(f-g)) - Integral2(M2,g|dom(f-g)) by MESFUNC2:8;
    Integral2(M2,g-f) = -Integral2(M2,f-g) by A10,A16,A15,Th73;
    hence
     Integral2(M2,g-f) = Integral2(M2,g|dom(g-f)) - Integral2(M2,f|dom(g-f))
      by A10,A18,A17,MEASUR11:64;
end;

theorem Th77:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  E be Element of sigma measurable_rectangles(S1,S2)
st M1 is sigma_finite & M2 is sigma_finite
holds Integral(M1,(Y-vol(E,M2)))
        = Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:]))
    & Integral(M2,(X-vol(E,M1)))
        = Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:]))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite;
    Integral(M2,(X-vol(E,M1))) = (product_sigma_Measure(M1,M2)).E
  & Integral(M1,(Y-vol(E,M2))) = (product_sigma_Measure(M1,M2)).E
      by A1,A2,MEASUR11:118,117;
    hence thesis by MESFUNC9:14;
end;

theorem Th78:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 E be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL, r be Real st
 E = dom f & (f is nonnegative or f is nonpositive) & f is E-measurable
 holds
  Integral1(M1,r(#)f) = r(#)Integral1(M1,f)
& Integral2(M2,r(#)f) = r(#)Integral2(M2,f)
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL, r be Real;
    assume that
A1:  E = dom f and
A2:  (f is nonnegative or f is nonpositive) and
A3:  f is E-measurable;

A4: dom(r(#)Integral1(M1,f)) = X2 & dom(r(#)Integral2(M2,f)) = X1
     by FUNCT_2:def 1;

    now let y be Element of X2;
     dom(ProjPMap2(f,y)) = Y-section(E,y) by A1,Def4; then
A5:  dom(ProjPMap2(f,y)) = Measurable-Y-section(E,y) by MEASUR11:def 7;
A6:  ProjPMap2(f,y) is nonnegative or ProjPMap2(f,y) is nonpositive
       by A2,Th32,Th33;

     Integral1(M1,r(#)f).y
      = Integral(M1,ProjPMap2(r(#)f,y)) by Def7
     .= Integral(M1,r(#)ProjPMap2(f,y)) by Th29
     .= r * Integral(M1,ProjPMap2(f,y)) by A5,A6,A1,A3,Th47,Lm1,Lm2
     .= r * Integral1(M1,f).y by Def7;
     hence Integral1(M1,r(#)f).y = (r(#)Integral1(M1,f)).y
       by A4,MESFUNC1:def 6;
    end;
    hence Integral1(M1,r(#)f) = r(#)Integral1(M1,f) by FUNCT_2:def 8;

    now let x be Element of X1;
     dom(ProjPMap1(f,x)) = X-section(E,x) by A1,Def3; then
B5:  dom(ProjPMap1(f,x)) = Measurable-X-section(E,x) by MEASUR11:def 6;
B6:  ProjPMap1(f,x) is nonnegative or ProjPMap1(f,x) is nonpositive
       by A2,Th32,Th33;

     Integral2(M2,r(#)f).x
      = Integral(M2,ProjPMap1(r(#)f,x)) by Def8
     .= Integral(M2,r(#)ProjPMap1(f,x)) by Th29
     .= r * Integral(M2,ProjPMap1(f,x)) by B6,B5,A1,A3,Th47,Lm1,Lm2
     .= r * Integral2(M2,f).x by Def8;
     hence Integral2(M2,r(#)f).x = (r(#)Integral2(M2,f)).x
       by A4,MESFUNC1:def 6;
    end;
    hence Integral2(M2,r(#)f) = r(#)Integral2(M2,f) by FUNCT_2:def 8;
end;

theorem Th79:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  E be Element of sigma measurable_rectangles(S1,S2) holds
  Integral1(M1,chi(E,[:X1,X2:])|E) = Integral1(M1,chi(E,[:X1,X2:]))
& Integral2(M2,chi(E,[:X1,X2:])|E) = Integral2(M2,chi(E,[:X1,X2:]))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2);

    now let y be Element of X2;
A1:  ProjPMap2(chi(E,[:X1,X2:])|E,y)
      = ProjPMap2(chi(E,[:X1,X2:]),y) | Y-section(E,y) by Th34
     .= chi(Y-section(E,y),X1) | Y-section(E,y) by Th48
     .= chi(Measurable-Y-section(E,y),X1) | Y-section(E,y) by MEASUR11:def 7
     .= chi(Measurable-Y-section(E,y),X1) | Measurable-Y-section(E,y)
       by MEASUR11:def 7;

     Integral1(M1,chi(E,[:X1,X2:])|E).y
      = Integral(M1,ProjPMap2(chi(E,[:X1,X2:])|E,y)) by Def7
     .= M1.Measurable-Y-section(E,y) by A1,MESFUNC9:14
     .= Integral( M1,chi(Measurable-Y-section(E,y),X1) )
          by MESFUNC9:14
     .= Integral( M1,chi(Y-section(E,y),X1) ) by MEASUR11:def 7
     .= Integral(M1,ProjPMap2(chi(E,[:X1,X2:]),y) ) by Th48;
     hence Integral1(M1,chi(E,[:X1,X2:])|E).y
      = Integral1(M1,chi(E,[:X1,X2:])).y by Def7;
    end;
    hence Integral1(M1,chi(E,[:X1,X2:])|E) = Integral1(M1,chi(E,[:X1,X2:]))
      by FUNCT_2:def 8;

    now let x be Element of X1;
A2:  ProjPMap1(chi(E,[:X1,X2:])|E,x)
      = ProjPMap1(chi(E,[:X1,X2:]),x) | X-section(E,x) by Th34
     .= chi(X-section(E,x),X2) | X-section(E,x) by Th48
     .= chi(Measurable-X-section(E,x),X2) | X-section(E,x) by MEASUR11:def 6
     .= chi(Measurable-X-section(E,x),X2) | Measurable-X-section(E,x)
       by MEASUR11:def 6;

     Integral2(M2,chi(E,[:X1,X2:])|E).x
      = Integral(M2,ProjPMap1(chi(E,[:X1,X2:])|E,x)) by Def8
     .= M2.Measurable-X-section(E,x) by A2,MESFUNC9:14
     .= Integral( M2,chi(Measurable-X-section(E,x),X2) )
          by MESFUNC9:14
     .= Integral( M2,chi(X-section(E,x),X2) ) by MEASUR11:def 6
     .= Integral(M2,ProjPMap1(chi(E,[:X1,X2:]),x) ) by Th48;
     hence Integral2(M2,chi(E,[:X1,X2:])|E).x
      = Integral2(M2,chi(E,[:X1,X2:])).x by Def8;
    end;
    hence Integral2(M2,chi(E,[:X1,X2:])|E) = Integral2(M2,chi(E,[:X1,X2:]))
      by FUNCT_2:def 8;
end;

theorem Th80:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  E be Element of sigma measurable_rectangles(S1,S2) holds
  Integral1(M1,Xchi(E,[:X1,X2:])|E) = Integral1(M1,Xchi(E,[:X1,X2:]))
& Integral2(M2,Xchi(E,[:X1,X2:])|E) = Integral2(M2,Xchi(E,[:X1,X2:]))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2);

    now let y be Element of X2;
     set XC1 = Xchi(Measurable-Y-section(E,y),X1);
A1:  ProjPMap2(Xchi(E,[:X1,X2:])|E,y)
      = ProjPMap2(Xchi(E,[:X1,X2:]),y) | Y-section(E,y) by Th34
     .= Xchi(Y-section(E,y),X1) | Y-section(E,y) by Th35
     .= Xchi(Measurable-Y-section(E,y),X1) | Y-section(E,y) by MEASUR11:def 7
     .= XC1 | Measurable-Y-section(E,y) by MEASUR11:def 7
     .= chi(+infty,Measurable-Y-section(E,y),X1)|Measurable-Y-section(E,y)
         by Th2;

     Integral1(M1,Xchi(E,[:X1,X2:])|E).y
      = Integral(M1,ProjPMap2(Xchi(E,[:X1,X2:])|E,y)) by Def7
     .= +infty * M1.Measurable-Y-section(E,y) by A1,Th50
     .= Integral(M1,chi(+infty,Measurable-Y-section(E,y),X1)) by Th49
     .= Integral( M1,Xchi(Measurable-Y-section(E,y),X1) ) by Th2
     .= Integral( M1,Xchi(Y-section(E,y),X1) ) by MEASUR11:def 7
     .= Integral(M1,ProjPMap2(Xchi(E,[:X1,X2:]),y) ) by Th35;
     hence Integral1(M1,Xchi(E,[:X1,X2:])|E).y
      = Integral1(M1,Xchi(E,[:X1,X2:])).y by Def7;
    end;
    hence Integral1(M1,Xchi(E,[:X1,X2:])|E)
     = Integral1(M1,Xchi(E,[:X1,X2:])) by FUNCT_2:def 8;

    now let x be Element of X1;
     set XC2 = Xchi(Measurable-X-section(E,x),X2);
A1:  ProjPMap1(Xchi(E,[:X1,X2:])|E,x)
      = ProjPMap1(Xchi(E,[:X1,X2:]),x) | X-section(E,x) by Th34
     .= Xchi(X-section(E,x),X2) | X-section(E,x) by Th35
     .= Xchi(Measurable-X-section(E,x),X2) | X-section(E,x) by MEASUR11:def 6
     .= XC2 | Measurable-X-section(E,x) by MEASUR11:def 6
     .= chi(+infty,Measurable-X-section(E,x),X2)|Measurable-X-section(E,x)
         by Th2;

     Integral2(M2,Xchi(E,[:X1,X2:])|E).x
      = Integral(M2,ProjPMap1(Xchi(E,[:X1,X2:])|E,x)) by Def8
     .= +infty * M2.Measurable-X-section(E,x) by A1,Th50
     .= Integral(M2,chi(+infty,Measurable-X-section(E,x),X2)) by Th49
     .= Integral( M2,Xchi(Measurable-X-section(E,x),X2) ) by Th2
     .= Integral( M2,Xchi(X-section(E,x),X2) ) by MEASUR11:def 6
     .= Integral(M2,ProjPMap1(Xchi(E,[:X1,X2:]),x) ) by Th35;
     hence Integral2(M2,Xchi(E,[:X1,X2:])|E).x
      = Integral2(M2,Xchi(E,[:X1,X2:])).x by Def8;
    end;
    hence Integral2(M2,Xchi(E,[:X1,X2:])|E)
     = Integral2(M2,Xchi(E,[:X1,X2:])) by FUNCT_2:def 8;
end;

theorem Th81:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  E be Element of sigma measurable_rectangles(S1,S2), er be ExtReal holds
  Integral1(M1,chi(er,E,[:X1,X2:])|E) = Integral1(M1,chi(er,E,[:X1,X2:]))
& Integral2(M2,chi(er,E,[:X1,X2:])|E) = Integral2(M2,chi(er,E,[:X1,X2:]))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2), er be ExtReal;
    reconsider XX12 = [:X1,X2:] as Element of
      sigma measurable_rectangles(S1,S2) by MEASURE1:7;
    reconsider C = chi(E,[:X1,X2:])|E as PartFunc of [:X1,X2:],ExtREAL;
    per cases by XXREAL_0:14;
    suppose er in REAL; then
     reconsider r = er as Real;
A1: chi(r,E,[:X1,X2:]) = r(#)chi(E,[:X1,X2:]) by Th1;
A2: chi(E,[:X1,X2:]) is XX12-measurable by MESFUNC2:29;
A3: dom(chi(E,[:X1,X2:])) = XX12 by FUNCT_2:def 1;

A4: dom( chi(E,[:X1,X2:])|E ) = dom(chi(E,[:X1,X2:])) /\ E by RELAT_1:61
     .= [:X1,X2:] /\ E by FUNCT_2:def 1
     .= E by XBOOLE_1:28;
A5: chi(E,[:X1,X2:])|E is nonnegative by MESFUNC5:15;
    E = dom(chi(E,[:X1,X2:])) /\ E by A3,XBOOLE_1:28; then
A6: chi(E,[:X1,X2:])|E is E-measurable by MESFUNC2:29,MESFUNC5:42;

    Integral1(M1,chi(r,E,[:X1,X2:])|E)
     = Integral1(M1,r(#)C) by A1,MESFUN11:2
    .= r(#)Integral1(M1,C) by A4,A5,A6,Th78
    .= r(#)Integral1(M1,chi(E,[:X1,X2:])) by Th79
    .= Integral1(M1,r(#)chi(E,[:X1,X2:])) by A2,A3,Th78;
    hence
     Integral1(M1,chi(er,E,[:X1,X2:])|E) = Integral1(M1,chi(er,E,[:X1,X2:]))
      by Th1;

    Integral2(M2,chi(r,E,[:X1,X2:])|E)
     = Integral2(M2,r(#)C) by A1,MESFUN11:2
    .= r(#)Integral2(M2,C) by A4,A5,A6,Th78
    .= r(#)Integral2(M2,chi(E,[:X1,X2:])) by Th79
    .= Integral2(M2,r(#)chi(E,[:X1,X2:])) by A2,A3,Th78;
    hence
     Integral2(M2,chi(er,E,[:X1,X2:])|E) = Integral2(M2,chi(er,E,[:X1,X2:]))
      by Th1;
    end;
    suppose er = +infty; then
     chi(er,E,[:X1,X2:]) = Xchi(E,[:X1,X2:]) by Th2;
     hence
      Integral1(M1,chi(er,E,[:X1,X2:])|E) = Integral1(M1,chi(er,E,[:X1,X2:]))
    & Integral2(M2,chi(er,E,[:X1,X2:])|E) = Integral2(M2,chi(er,E,[:X1,X2:]))
     by Th80;
    end;
    suppose d0: er = -infty;
     reconsider XX12 = [:X1,X2:]
      as Element of sigma measurable_rectangles(S1,S2) by MEASURE1:7;
     reconsider XE = Xchi(E,[:X1,X2:])|E as PartFunc of [:X1,X2:],ExtREAL;
d3:  Xchi(E,[:X1,X2:]) is XX12-measurable by MEASUR10:32;
e2:  XE is nonnegative by MESFUNC5:15;
d4:  dom Xchi(E,[:X1,X2:]) = XX12 by FUNCT_2:def 1; then
e1:  dom XE = E by RELAT_1:62; then
     E = dom Xchi(E,[:X1,X2:]) /\ E by RELAT_1:61; then
e3:  XE is E-measurable by MESFUNC5:42;
d1:  chi(er,E,[:X1,X2:]) = -Xchi(E,[:X1,X2:]) by d0,Th2
      .= (-1)(#)Xchi(E,[:X1,X2:]) by MESFUNC2:9;
     Integral1(M1,chi(er,E,[:X1,X2:]))
      = (-1) (#) Integral1(M1,Xchi(E,[:X1,X2:])) by d1,d3,d4,Th78
     .= (-1) (#) Integral1(M1,Xchi(E,[:X1,X2:])|E) by Th80
     .= Integral1(M1,(-1)(#)XE) by e1,e2,e3,Th78
     .= Integral1(M1,chi(er,E,[:X1,X2:])|E) by d1,MESFUN11:2;
     hence
  Integral1(M1,chi(er,E,[:X1,X2:])|E) = Integral1(M1,chi(er,E,[:X1,X2:]));
     Integral2(M2,chi(er,E,[:X1,X2:]))
      = (-1) (#) Integral2(M2,Xchi(E,[:X1,X2:])) by d1,d3,d4,Th78
     .= (-1) (#) Integral2(M2,Xchi(E,[:X1,X2:])|E) by Th80
     .= Integral2(M2,(-1)(#)XE) by e1,e2,e3,Th78
     .= Integral2(M2,chi(er,E,[:X1,X2:])|E) by d1,MESFUN11:2;

     hence
  Integral2(M2,chi(er,E,[:X1,X2:])|E) = Integral2(M2,chi(er,E,[:X1,X2:]));
    end;
end;

theorem Th82:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  E be Element of sigma measurable_rectangles(S1,S2)
st M1 is sigma_finite & M2 is sigma_finite
holds
  Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:]))
   = Integral(M2,Integral1(M1,chi(E,[:X1,X2:])))
& Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:])|E)
   = Integral(M2,Integral1(M1,chi(E,[:X1,X2:])|E))
& Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:]))
   = Integral(M1,Integral2(M2,chi(E,[:X1,X2:])))
& Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:])|E)
   = Integral(M1,Integral2(M2,chi(E,[:X1,X2:])|E))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite;

    X-vol(E,M1) = Integral1(M1,chi(E,[:X1,X2:])) by A1,Th64;
    hence
A4:  Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:]))
     = Integral(M2,Integral1(M1,chi(E,[:X1,X2:]))) by A1,A2,Th77;

A5: Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:])|E)
     = Prod_Measure(M1,M2).E by MESFUNC9:14
    .= Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:])) by MESFUNC9:14;
    hence
     Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:])|E)
      = Integral(M2,Integral1(M1,chi(E,[:X1,X2:])|E)) by A4,Th79;

    Y-vol(E,M2) = Integral2(M2,chi(E,[:X1,X2:])) by A2,Th65;
    hence
     Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:]))
     = Integral(M1,Integral2(M2,chi(E,[:X1,X2:]))) by A1,A2,Th77;
    hence
     Integral(Prod_Measure(M1,M2),chi(E,[:X1,X2:])|E)
      = Integral(M1,Integral2(M2,chi(E,[:X1,X2:])|E)) by A5,Th79;
end;

theorem Th83:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  E be Element of sigma measurable_rectangles(S1,S2), r be Real
st M1 is sigma_finite & M2 is sigma_finite
holds
  Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:]))
   = Integral(M2,Integral1(M1,chi(r,E,[:X1,X2:])))
& Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:])|E)
   = Integral(M2,Integral1(M1,chi(r,E,[:X1,X2:])|E))
& Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:]))
   = Integral(M1,Integral2(M2,chi(r,E,[:X1,X2:])))
& Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:])|E)
   = Integral(M1,Integral2(M2,chi(r,E,[:X1,X2:])|E))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    E be Element of sigma measurable_rectangles(S1,S2), r be Real;
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite;

    set S = sigma measurable_rectangles(S1,S2);
    set M = Prod_Measure(M1,M2);
    reconsider XX12 = [:X1,X2:] as Element of S by MEASURE1:7;
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;

A3: chi(r,E,[:X1,X2:]) = r(#)chi(E,[:X1,X2:]) by Th1;
A4: chi(E,[:X1,X2:]) is_simple_func_in S by Th12;
A5: chi(E,[:X1,X2:]) is XX12-measurable by Th12,MESFUNC2:34;

A6: dom(chi(E,[:X1,X2:])) = XX12 by FUNCT_2:def 1;

A7: Integral1(M1,chi(E,[:X1,X2:])) = X-vol(E,M1) by A1,Th64;
A8: X-vol(E,M1) is XX2-measurable by A1,MEASUR11:def 14;
A9: dom(Integral1(M1,chi(E,[:X1,X2:]))) = XX2 by FUNCT_2:def 1;

A10:Integral(M,chi(r,E,[:X1,X2:]))
      = Integral(M,r(#)chi(E,[:X1,X2:])) by Th1
     .= r * integral'(M,chi(E,[:X1,X2:])) by Th12,MESFUN11:59
     .= r * Integral(M,chi(E,[:X1,X2:])) by A4,MESFUNC5:89; then
A14:Integral(M,chi(r,E,[:X1,X2:]))
      = r * Integral(M2,Integral1(M1,chi(E,[:X1,X2:]))) by A1,A2,Th82
     .= Integral(M2,r(#)X-vol(E,M1)) by A7,A8,A9,Lm1;
    hence Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:]))
      = Integral(M2,Integral1(M1,chi(r,E,[:X1,X2:])))
        by A3,A5,A6,A7,Th78;

    reconsider C = chi(E,[:X1,X2:])|E as PartFunc of [:X1,X2:],ExtREAL;
A11:dom C = E by A6,RELAT_1:62;
A12:chi(r,E,[:X1,X2:])|E = (r(#)chi(E,[:X1,X2:]))|E by Th1
     .= r(#)C by MESFUN11:2;

A13:Integral(M2,Integral1(M1,chi(r,E,[:X1,X2:])|E))
     = Integral(M2,Integral1(M1,chi(r,E,[:X1,X2:]))) by Th81
    .= Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:]))
       by A3,A5,A6,A7,A14,Th78;

    C is E-measurable by A4,MESFUNC2:34,MESFUNC5:34; then
A15:Integral(M,chi(r,E,[:X1,X2:])|E)
     = r * Integral(M,C) by A11,A12,Lm1,MESFUNC5:15
    .= r * Prod_Measure(M1,M2).E by MESFUNC9:14
    .= r * Integral(M,chi(E,[:X1,X2:])) by MESFUNC9:14
    .= Integral(M,r(#)chi(E,[:X1,X2:])) by A4,A6,Lm1,MESFUNC2:34;
    hence Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:])|E)
     = Integral(M2,Integral1(M1,chi(r,E,[:X1,X2:])|E)) by A13,Th1;

B7: Integral2(M2,chi(E,[:X1,X2:])) = Y-vol(E,M2) by A2,Th65;
B8: Y-vol(E,M2) is XX1-measurable by A2,MEASUR11:def 13;
B9: dom(Integral2(M2,chi(E,[:X1,X2:]))) = XX1 by FUNCT_2:def 1;

B14:Integral(M,chi(r,E,[:X1,X2:]))
      = r * Integral(M1,Integral2(M2,chi(E,[:X1,X2:]))) by A1,A2,A10,Th82
     .= Integral(M1,r(#)Y-vol(E,M2)) by B7,B8,B9,Lm1;
    hence Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:]))
      = Integral(M1,Integral2(M2,chi(r,E,[:X1,X2:])))
        by A3,A5,A6,B7,Th78;

    Integral(M1,Integral2(M2,chi(r,E,[:X1,X2:])|E))
     = Integral(M1,Integral2(M2,chi(r,E,[:X1,X2:]))) by Th81
    .= Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:]))
       by A3,A5,A6,B7,B14,Th78;
    hence Integral(Prod_Measure(M1,M2),chi(r,E,[:X1,X2:])|E)
     = Integral(M1,Integral2(M2,chi(r,E,[:X1,X2:])|E)) by A15,Th1;
end;

Lm13:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f be non empty PartFunc of [:X1,X2:],ExtREAL,
  A be Element of sigma measurable_rectangles(S1,S2)
  st M1 is sigma_finite & M2 is sigma_finite
   & f is_simple_func_in sigma measurable_rectangles(S1,S2)
   & (f is nonnegative or f is nonpositive)
   & A = dom f
  holds
    Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
  & Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f be non empty PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite and
A3:  f is_simple_func_in sigma measurable_rectangles(S1,S2) and
A4:  (f is nonnegative or f is nonpositive) and
A5:  A = dom f;

A6: f is A-measurable by A3,MESFUNC2:34;

    set S = sigma measurable_rectangles(S1,S2);
    set M = Prod_Measure(M1,M2);
    reconsider XX12 = [:X1,X2:] as Element of S by MEASURE1:7;
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;

    consider E be non empty Finite_Sep_Sequence of S,
       a be FinSequence of ExtREAL, r be FinSequence of REAL such that
A7:  E,a are_Re-presentation_of f &
     for n be Nat holds
      a.n = r.n & f|(E.n) = (chi(r.n,E.n,[:X1,X2:]))|(E.n) &
      (E.n = {} implies r.n = 0) by A3,Th5;

    defpred P[Nat] means
     Integral(Prod_Measure(M1,M2),f|(union rng(E|$1)))
       = Integral(M2,Integral1(M1,f|(union rng(E|$1))));

A8: P[0]
    proof
     reconsider E0 = {} as Element of S by MEASURE1:7;
     reconsider E01 = {} as Element of S1 by MEASURE1:7;

     M.E0 = 0 by VALUED_0:def 19; then
A9:  Integral(M,f|(union rng(E|0))) = 0
       by A3,A5,MESFUNC2:34,ZFMISC_1:2,MESFUNC5:94;

A10: for y be Element of X2 st y in dom(Integral1(M1,f|(union rng(E|0))))
      holds (Integral1(M1,f|(union rng(E|0)))).y = 0
     proof
      let y be Element of X2;
      assume y in dom(Integral1(M1,f|(union rng(E|0))));
      Integral1(M1,f|(union rng(E|0))).y
       = Integral(M1,ProjPMap2(f|(union rng(E|0)),y)) by Def7; then
A11:  Integral1(M1,f|(union rng(E|0))).y
       = Integral(M1,ProjPMap2(f,y)|Y-section(E0,y)) by Th34,ZFMISC_1:2;

A12:  M1.E01 = 0 by VALUED_0:def 19;
      dom(ProjPMap2(f,y)) = Y-section(dom f,y) by Def4; then
A13:  dom(ProjPMap2(f,y)) = Measurable-Y-section(A,y) by A5,MEASUR11:def 7;

      E0 = {}[:X1,X2:]; then
      Integral1(M1,f|(union rng(E|0))).y = Integral(M1,ProjPMap2(f,y)|E01)
        by A11,MEASUR11:24;
      hence Integral1(M1,f|(union rng(E|0))).y = 0
        by A5,A6,A12,A13,Th47,MESFUNC5:94;
     end;
     dom(Integral1(M1,f|(union rng(E|0)))) = XX2 by FUNCT_2:def 1;
     hence thesis by A9,A10,Th57;
    end;

A14:for n be Nat st P[n] holds P[n+1]
    proof
     let n be Nat;
     assume A15: P[n];
     per cases;
     suppose n >= len E; then
      E|n = E & E|(n+1) = E by FINSEQ_1:58,NAT_1:12;
      hence Integral(Prod_Measure(M1,M2),f|(union rng(E|(n+1))))
       = Integral(M2,Integral1(M1,f|(union rng(E|(n+1))))) by A15;
     end;
     suppose n < len E;
      Union (E|n) is Element of S; then
      reconsider En = union rng(E|n) as Element of S by CARD_3:def 4;
      reconsider En1 = E.(n+1) as Element of S;
A16:  En misses En1 & union rng(E|(n+1)) = En \/ En1 by NAT_1:16,MEASUR11:1,3;

      set CH = chi(r.(n+1),E.(n+1),[:X1,X2:]);
A17:  Integral(M,CH|(E.(n+1))) = Integral(M2,Integral1(M1,CH|(E.(n+1))))
        by A1,A2,Th83;

A18:  dom(Integral1(M1,f|En)) = XX2 & dom(Integral1(M1,f|En1)) = XX2
        by FUNCT_2:def 1;
A19:  Integral1(M1,f|En) is XX2-measurable
    & Integral1(M1,f|En1) is XX2-measurable by A1,A4,A5,A6,Th68;
A20:  Integral1(M1,f|En)|XX2 = Integral1(M1,f|En)
    & Integral1(M1,f|En1)|XX2 = Integral1(M1,f|En1);
      Integral(M,f|En1)
       = Integral(M,(chi(r.(n+1),E.(n+1),[:X1,X2:]))|(E.(n+1))) by A7; then
A21:  Integral(M,f|En1) = Integral(M2,Integral1(M1,f|En1)) by A7,A17;

      per cases by A4;
      suppose A22: f is nonnegative; then
A23:   Integral1(M1,f|En) is nonnegative & Integral1(M1,f|En1) is nonnegative
        by A5,A6,Th66; then
       reconsider I1 = Integral1(M1,f|En), I2 = Integral1(M1,f|En1)
         as without-infty Function of X2,ExtREAL;
       I1 + I2 = Integral1(M1,f|En) + Integral1(M1,f|En1); then
A24:   dom(Integral1(M1,f|En) + Integral1(M1,f|En1)) = XX2 by FUNCT_2:def 1;

       Integral(M,f|(union rng(E|(n+1))))
        = Integral(M,f|En) + Integral(M,f|En1)
         by A3,A5,A22,A16,MESFUNC2:34,MESFUNC5:91; then
       Integral(M,f|(union rng(E|(n+1))))
        = Integral(M2,Integral1(M1,f|En) + Integral1(M1,f|En1))
         by A15,A18,A19,A20,A21,A23,A24,Th21;
       hence Integral(Prod_Measure(M1,M2),f|(union rng(E|(n+1))))
        = Integral(M2,Integral1(M1,f|(union rng(E|(n+1)))))
          by A5,A6,A16,A22,Lm11;
      end;

      suppose A25: f is nonpositive; then
A26:   Integral1(M1,f|En) is nonpositive & Integral1(M1,f|En1) is nonpositive
         by A5,A6,Th67; then
       reconsider I1 = Integral1(M1,f|En), I2 = Integral1(M1,f|En1)
         as without+infty Function of X2,ExtREAL;
       I1 + I2 = Integral1(M1,f|En) + Integral1(M1,f|En1); then
A27:   dom(Integral1(M1,f|En) + Integral1(M1,f|En1)) = XX2 by FUNCT_2:def 1;

       Integral(M,f|(union rng(E|(n+1))))
         = Integral(M,f|En) + Integral(M,f|En1)
           by A3,A5,A16,A25,MESFUNC2:34,MESFUN11:62; then
       Integral(M,f|(union rng(E|(n+1))))
         = Integral(M2,Integral1(M1,f|En) + Integral1(M1,f|En1))
           by A15,A18,A19,A20,A21,A26,A27,Th22;
       hence Integral(Prod_Measure(M1,M2),f|(union rng(E|(n+1))))
         = Integral(M2,Integral1(M1,f|(union rng(E|(n+1)))))
           by A5,A6,A16,A25,Lm12;
      end;
     end;
    end;

A28:union rng E = dom f by A7,MESFUNC3:def 1;

    for n be Nat holds P[n] from NAT_1:sch 2(A8,A14); then
    Integral(Prod_Measure(M1,M2),f|(union rng(E|(len E))))
       = Integral(M2,Integral1(M1,f|(union rng(E|(len E))))); then
    Integral(Prod_Measure(M1,M2),f|(union rng E))
       = Integral(M2,Integral1(M1,f|(union rng(E|(len E))))) by FINSEQ_1:58;
    hence Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
      by A28,FINSEQ_1:58;

    defpred P[Nat] means
     Integral(Prod_Measure(M1,M2),f|(union rng(E|$1)))
       = Integral(M1,Integral2(M2,f|(union rng(E|$1))));

A8: P[0]
    proof
     reconsider E0 = {} as Element of S by MEASURE1:7;
     reconsider E01 = {} as Element of S2 by MEASURE1:7;
     M.E0 = 0 by VALUED_0:def 19; then
A9:  Integral(M,f|(union rng(E|0))) = 0
       by A3,A5,MESFUNC2:34,ZFMISC_1:2,MESFUNC5:94;
A10: for x be Element of X1 st x in dom(Integral2(M2,f|(union rng(E|0))))
      holds (Integral2(M2,f|(union rng(E|0)))).x = 0
     proof
      let x be Element of X1;
      assume x in dom(Integral2(M2,f|(union rng(E|0))));
      Integral2(M2,f|(union rng(E|0))).x
       = Integral(M2,ProjPMap1(f|(union rng(E|0)),x)) by Def8; then
A11:  Integral2(M2,f|(union rng(E|0))).x
       = Integral(M2,ProjPMap1(f,x)|X-section(E0,x)) by Th34,ZFMISC_1:2;

A12:  M2.E01 = 0 by VALUED_0:def 19;
      dom(ProjPMap1(f,x)) = X-section(dom f,x) by Def3; then
A13:  dom(ProjPMap1(f,x)) = Measurable-X-section(A,x) by A5,MEASUR11:def 6;

      E0 = {}[:X1,X2:]; then
      Integral2(M2,f|(union rng(E|0))).x = Integral(M2,ProjPMap1(f,x)|E01)
        by A11,MEASUR11:24;
      hence Integral2(M2,f|(union rng(E|0))).x = 0
        by A5,A6,A12,A13,Th47,MESFUNC5:94;
     end;
     dom(Integral2(M2,f|(union rng(E|0)))) = XX1 by FUNCT_2:def 1;
     hence thesis by A9,A10,Th57;
    end;

A14:for n be Nat st P[n] holds P[n+1]
    proof
     let n be Nat;
     assume A15: P[n];
     per cases;
     suppose n >= len E; then
      E|n = E & E|(n+1) = E by FINSEQ_1:58,NAT_1:12;
      hence Integral(Prod_Measure(M1,M2),f|(union rng(E|(n+1))))
       = Integral(M1,Integral2(M2,f|(union rng(E|(n+1))))) by A15;
     end;
     suppose n < len E;
      Union (E|n) is Element of S; then
      reconsider En = union rng(E|n) as Element of S by CARD_3:def 4;
      reconsider En1 = E.(n+1) as Element of S;
A16:  En misses En1 & union rng(E|(n+1)) = En \/ En1 by NAT_1:16,MEASUR11:1,3;

      set CH = chi(r.(n+1),E.(n+1),[:X1,X2:]);
A17:  Integral(M,CH|(E.(n+1))) = Integral(M1,Integral2(M2,CH|(E.(n+1))))
        by A1,A2,Th83;

A18:  dom(Integral2(M2,f|En)) = XX1 & dom(Integral2(M2,f|En1)) = XX1
        by FUNCT_2:def 1;
A19:  Integral2(M2,f|En) is XX1-measurable
    & Integral2(M2,f|En1) is XX1-measurable by A2,A4,A5,A6,Th69;

A20:  Integral2(M2,f|En)|XX1 = Integral2(M2,f|En)
    & Integral2(M2,f|En1)|XX1 = Integral2(M2,f|En1);

      Integral(M,f|En1)
       = Integral(M,(chi(r.(n+1),E.(n+1),[:X1,X2:]))|(E.(n+1))) by A7; then
A21:  Integral(M,f|En1) = Integral(M1,Integral2(M2,f|En1)) by A7,A17;

      per cases by A4;
      suppose A22: f is nonnegative; then
A23:   Integral2(M2,f|En) is nonnegative & Integral2(M2,f|En1) is nonnegative
        by A5,A6,Th66; then
       reconsider I1 = Integral2(M2,f|En), I2 = Integral2(M2,f|En1)
         as without-infty Function of X1,ExtREAL;
       I1 + I2 = Integral2(M2,f|En) + Integral2(M2,f|En1); then
A24:   dom(Integral2(M2,f|En) + Integral2(M2,f|En1)) = XX1 by FUNCT_2:def 1;

       Integral(M,f|(union rng(E|(n+1))))
        = Integral(M,f|En) + Integral(M,f|En1)
         by A3,A5,A22,A16,MESFUNC2:34,MESFUNC5:91; then
       Integral(M,f|(union rng(E|(n+1))))
        = Integral(M1,Integral2(M2,f|En) + Integral2(M2,f|En1))
         by A15,A18,A19,A20,A21,A23,A24,Th21;
       hence Integral(Prod_Measure(M1,M2),f|(union rng(E|(n+1))))
        = Integral(M1,Integral2(M2,f|(union rng(E|(n+1)))))
          by A5,A6,A16,A22,Lm11;
      end;

      suppose A25: f is nonpositive; then
A26:   Integral2(M2,f|En) is nonpositive & Integral2(M2,f|En1) is nonpositive
         by A5,A6,Th67; then
       reconsider I1 = Integral2(M2,f|En), I2 = Integral2(M2,f|En1)
         as without+infty Function of X1,ExtREAL;
       I1 + I2 = Integral2(M2,f|En) + Integral2(M2,f|En1); then
A27:   dom(Integral2(M2,f|En) + Integral2(M2,f|En1)) = XX1 by FUNCT_2:def 1;

       Integral(M,f|(union rng(E|(n+1))))
         = Integral(M,f|En) + Integral(M,f|En1)
           by A3,A5,A16,A25,MESFUNC2:34,MESFUN11:62; then
       Integral(M,f|(union rng(E|(n+1))))
         = Integral(M1,Integral2(M2,f|En) + Integral2(M2,f|En1))
           by A15,A18,A19,A20,A21,A26,A27,Th22;
       hence Integral(Prod_Measure(M1,M2),f|(union rng(E|(n+1))))
         = Integral(M1,Integral2(M2,f|(union rng(E|(n+1)))))
           by A5,A6,A16,A25,Lm12;
      end;
     end;
    end;

A28:union rng E = dom f by A7,MESFUNC3:def 1;

    for n be Nat holds P[n] from NAT_1:sch 2(A8,A14); then
    Integral(Prod_Measure(M1,M2),f|(union rng(E|(len E))))
       = Integral(M1,Integral2(M2,f|(union rng(E|(len E))))); then
    Integral(Prod_Measure(M1,M2),f|(union rng E))
       = Integral(M1,Integral2(M2,f|(union rng(E|(len E))))) by FINSEQ_1:58;
    hence Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
      by A28,FINSEQ_1:58;
end;

Lm14:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f be empty PartFunc of [:X1,X2:],ExtREAL,
  A be Element of sigma measurable_rectangles(S1,S2) holds
  ( M1 is sigma_finite implies
    Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f)) )
& ( M2 is sigma_finite implies
    Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f)) )
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f be empty PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2);
    reconsider EMP = {} as Element of sigma measurable_rectangles(S1,S2)
      by MEASURE1:7;
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
A2: f is_simple_func_in sigma measurable_rectangles(S1,S2) by Th19;
A3: f is EMP-measurable by Th19,MESFUNC2:34;
A5: for x be object st x in dom f holds 0 <= f.x; then
A6: f is nonnegative by SUPINF_2:52;
A4: dom f = EMP; then
    integral'(Prod_Measure(M1,M2),f) = 0 by MESFUNC5:def 14; then
A7: Integral(Prod_Measure(M1,M2),f) = 0 by A2,A6,MESFUNC5:89;
A8: dom(Integral1(M1,f)) = XX2
  & dom(Integral2(M2,f)) = XX1 by FUNCT_2:def 1;
A10:Integral1(M1,f) is nonnegative
  & Integral2(M2,f) is nonnegative by A3,A4,A6,Th66;
    hereby assume M1 is sigma_finite; then
A9:  Integral1(M1,f) is XX2-measurable by A3,A5,Th59,SUPINF_2:52;
     for y be Element of X2 st y in dom(Integral1(M1,f))
      holds Integral1(M1,f).y = 0
     proof
      let y be Element of X2;
      assume y in dom(Integral1(M1,f));
A11:  ProjPMap2(f,y) is_simple_func_in S1
    & ProjPMap2(f,y) is nonnegative by A6,A2,Th31,Th32;

      dom f = {}[:X1,X2:]; then
      dom(ProjPMap2(f,y))
       = Y-section({}[:X1,X2:],y) by Def4
      .= {} by MEASUR11:24; then
      integral'(M1,ProjPMap2(f,y)) = 0 by MESFUNC5:def 14; then
      Integral(M1,ProjPMap2(f,y)) = 0 by A11,MESFUNC5:89;
      hence Integral1(M1,f).y = 0 by Def7;
     end; then
     integral+(M2,Integral1(M1,f)) = 0 by A8,A9,MESFUNC5:87;
     hence Integral(Prod_Measure(M1,M2),f)
      = Integral(M2,Integral1(M1,f)) by A7,A8,A9,A10,MESFUNC5:88;
    end;
    assume M2 is sigma_finite; then
B9: Integral2(M2,f) is XX1-measurable by A3,A5,Th60,SUPINF_2:52;

    for x be Element of X1 st x in dom(Integral2(M2,f))
     holds Integral2(M2,f).x = 0
    proof
     let x be Element of X1;
     assume x in dom(Integral2(M2,f));
B11: ProjPMap1(f,x) is_simple_func_in S2
   & ProjPMap1(f,x) is nonnegative by A6,A2,Th31,Th32;
     dom f = {}[:X1,X2:]; then
     dom(ProjPMap1(f,x))
      = X-section({}[:X1,X2:],x) by Def3
     .= {} by MEASUR11:24; then
     integral'(M2,ProjPMap1(f,x)) = 0 by MESFUNC5:def 14; then
     Integral(M2,ProjPMap1(f,x)) = 0 by B11,MESFUNC5:89;
     hence Integral2(M2,f).x = 0 by Def8;
    end; then
    integral+(M1,Integral2(M2,f)) = 0 by A8,B9,MESFUNC5:87;
    hence Integral(Prod_Measure(M1,M2),f)
     = Integral(M1,Integral2(M2,f)) by A7,A8,B9,A10,MESFUNC5:88;
end;

Lm15:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
  M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
  f be PartFunc of [:X1,X2:],ExtREAL,
  A be Element of sigma measurable_rectangles(S1,S2)
  st M1 is sigma_finite & M2 is sigma_finite
   & f is_simple_func_in sigma measurable_rectangles(S1,S2)
   & (f is nonnegative or f is nonpositive)
   & A = dom f
  holds
    Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
  & Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    f be PartFunc of [:X1,X2:],ExtREAL,
    A be Element of sigma measurable_rectangles(S1,S2);
    assume a1: M1 is sigma_finite & M2 is sigma_finite
     & f is_simple_func_in sigma measurable_rectangles(S1,S2)
     & (f is nonnegative or f is nonpositive) & A = dom f;
    per cases;
    suppose f is non empty;
     hence thesis by a1,Lm13;
    end;
    suppose f is empty;
     hence thesis by a1,Lm14;
    end;
end;

Lm16:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 A be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL
st M1 is sigma_finite & M2 is sigma_finite
 & f is nonnegative & A = dom f & f is A-measurable
 holds Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite and
A3:  f is nonnegative and
A4:  A = dom f and
A5:  f is A-measurable;
    set S = sigma measurable_rectangles(S1,S2);
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider EX1 = {} as Element of S1 by MEASURE1:7;
    Integral(Prod_Measure(M1,M2),f)
     = integral+(Prod_Measure(M1,M2),f) by A3,A4,A5,MESFUNC5:88; then
    consider F be Functional_Sequence of [:X1,X2:],ExtREAL,
       K be ExtREAL_sequence such that
A6:  (for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f)
   & (for n be Nat holds F.n is nonnegative)
   & (for n,m be Nat st n <= m holds
       for z be Element of [:X1,X2:] st z in dom f holds (F.n).z <= (F.m).z)
   & (for z be Element of [:X1,X2:] st z in dom f holds
       F#z is convergent & lim(F#z) = f.z)
   & for n be Nat holds K.n = integral'(Prod_Measure(M1,M2),F.n) and
     K is convergent and
A7:  Integral(Prod_Measure(M1,M2),f) = lim K by A3,A4,A5,MESFUNC5:def 15;

    dom(F.0) = dom f by A6; then
A8: dom (lim F) = dom f by MESFUNC8:def 9;
    for z be Element of [:X1,X2:] st z in dom(lim F) holds
     (lim F).z = f.z
    proof
     let z be Element of [:X1,X2:];
     assume A9: z in dom(lim F);
     hence (lim F).z = lim(F#z) by MESFUNC8:def 9
      .= f.z by A9,A8,A6;
    end; then
A10:lim F = f by A8,PARTFUN1:5;

    deffunc G(Nat) = Integral1(M1,F.$1);

    consider G be Functional_Sequence of X2,ExtREAL such that
A11: for n be Nat holds G.n = G(n) from SEQFUNC:sch 1;

A12:for n be Nat, y be Element of X2 holds
     dom(ProjPMap2(F.n,y)) = Measurable-Y-section(A,y)
   & ProjPMap2(F.n,y) is (Measurable-Y-section(A,y))-measurable
   & ProjPMap2(F.n,y) is nonnegative
    proof
     let n be Nat, y be Element of X2;
A13: dom(F.n) = A by A4,A6; then
     dom(ProjPMap2(F.n,y)) = Y-section(A,y) by Def4;
     hence dom(ProjPMap2(F.n,y)) = Measurable-Y-section(A,y)
       by MEASUR11:def 7;
     F.n is A-measurable by A6,MESFUNC2:34;
     hence ProjPMap2(F.n,y) is (Measurable-Y-section(A,y))-measurable
        by A13,Th47;
     F.n is nonnegative by A6;
     hence ProjPMap2(F.n,y) is nonnegative by Th32;
    end;

A14:for n be Nat holds
      dom(G.n) = XX2 & G.n is XX2-measurable & G.n is nonnegative
    proof
     let n be Nat;
A15: G.n = Integral1(M1,F.n) by A11;
     hence dom(G.n) = XX2 by FUNCT_2:def 1;

     dom(F.n) = A & F.n is A-measurable by A4,A6,MESFUNC2:34;
     hence G.n is XX2-measurable by A1,A15,A6,Th59;

     now let y be object;
      assume y in dom(G.n); then
      reconsider y1=y as Element of X2;
      (G.n).y = Integral(M1,ProjPMap2(F.n,y1))
    & ProjPMap2(F.n,y1) is (Measurable-Y-section(A,y1))-measurable
    & dom(ProjPMap2(F.n,y1)) = Measurable-Y-section(A,y1) by A12,A15,Def7;
      hence (G.n).y >= 0 by A12,MESFUNC5:90;
     end;
     hence G.n is nonnegative by SUPINF_2:52;
    end;

A16:for y be Element of X2, n,m be Nat st n <= m holds
     for x be Element of X1 st x in Measurable-Y-section(A,y) holds
        ProjPMap2(F.n,y).x <= ProjPMap2(F.m,y).x
    proof
     let y be Element of X2, n,m be Nat;
     assume A17: n <= m;
     hereby let x be Element of X1;
       assume x in Measurable-Y-section(A,y); then
       x in Y-section(A,y) by MEASUR11:def 7; then
       x in Y-section(dom(F.n),y) by A4,A6; then
       x in {x where x is Element of X1: [x,y] in dom(F.n)}
         by MEASUR11:def 5; then
A18:   ex x1 be Element of X1 st x1=x & [x1,y] in dom(F.n); then
A19:   [x,y] in dom f by A6; then
       [x,y] in dom(F.m) by A6; then
       ProjPMap2(F.n,y).x = (F.n).(x,y) & ProjPMap2(F.m,y).x = (F.m).(x,y)
         by A18,Def4;
       hence ProjPMap2(F.n,y).x <= ProjPMap2(F.m,y).x by A6,A17,A19;
     end;
    end;

A20:for n,m be Nat st n <= m holds for y be Element of X2 st y in XX2 holds
     (G.n).y <= (G.m).y
    proof
     let n,m be Nat;
     assume A21: n <= m;
     hereby let y be Element of X2;
      assume y in XX2;

A22:  dom(ProjPMap2(F.n,y)) = Measurable-Y-section(A,y)
    & dom(ProjPMap2(F.m,y)) = Measurable-Y-section(A,y)
    & ProjPMap2(F.n,y) is (Measurable-Y-section(A,y))-measurable
    & ProjPMap2(F.m,y) is (Measurable-Y-section(A,y))-measurable
    & ProjPMap2(F.n,y) is nonnegative
    & ProjPMap2(F.m,y) is nonnegative by A12;
      for x be Element of X1 st x in dom(ProjPMap2(F.n,y))
       holds ProjPMap2(F.n,y).x <= ProjPMap2(F.m,y).x by A16,A21,A22; then
      integral+(M1,ProjPMap2(F.n,y)) <= integral+(M1,ProjPMap2(F.m,y))
        by A22,MESFUNC5:85; then
      Integral(M1,ProjPMap2(F.n,y)) <= integral+(M1,ProjPMap2(F.m,y))
        by A22,MESFUNC5:88; then
A23:  Integral(M1,ProjPMap2(F.n,y)) <= Integral(M1,ProjPMap2(F.m,y))
        by A22,MESFUNC5:88;
      (G.n).y = Integral1(M1,F.n).y by A11; then
A24:  (G.n).y = Integral(M1,ProjPMap2(F.n,y)) by Def7;
      (G.m).y = Integral1(M1,F.m).y by A11;
      hence (G.n).y <= (G.m).y by A23,A24,Def7;
     end;
    end;

A25:for y be Element of X2 st y in XX2 holds
      G#y is convergent & lim(G#y) = Integral(M1,ProjPMap2(f,y))
    proof
     let y be Element of X2;
     assume y in XX2;

     defpred P2[Element of NAT,object] means $2 = ProjPMap2(F.$1,y);
A26: for n be Element of NAT ex f be Element of PFuncs(X1,ExtREAL) st P2[n,f]
     proof
      let n be Element of NAT;
      reconsider f = ProjPMap2(F.n,y) as Element of PFuncs(X1,ExtREAL)
        by PARTFUN1:45;
      take f;
      thus thesis;
     end;

     consider FX be sequence of PFuncs(X1,ExtREAL) such that
A27:  for n be Element of NAT holds P2[n,FX.n] from FUNCT_2:sch 3(A26);

A28: for n be Nat holds dom(FX.n) = Measurable-Y-section(A,y)
     proof
      let n be Nat;
      n is Element of NAT by ORDINAL1:def 12; then
      FX.n = ProjPMap2(F.n,y) by A27; then
      dom(FX.n) = Y-section(dom(F.n),y) by Def4; then
      dom(FX.n) = Y-section(A,y) by A4,A6;
      hence dom(FX.n) = Measurable-Y-section(A,y) by MEASUR11:def 7;
     end;

     for m,n be Nat holds dom(FX.m) = dom(FX.n)
     proof
      let m,n be Nat;
      dom(FX.m) = Measurable-Y-section(A,y) by A28;
      hence dom(FX.m) = dom(FX.n) by A28;
     end; then
     reconsider FX as with_the_same_dom Functional_Sequence of X1,ExtREAL
       by MESFUNC8:def 2;

A29: dom(FX.0) = Measurable-Y-section(A,y) by A28;
A30: for n be Nat holds FX.n is (Measurable-Y-section(A,y))-measurable
     proof
      let n be Nat;
      n is Element of NAT by ORDINAL1:def 12; then
A31:  FX.n = ProjPMap2(F.n,y) by A27;
      F.n is_simple_func_in S by A6;
      hence FX.n is (Measurable-Y-section(A,y))-measurable
      by A31,Th31,MESFUNC2:34;
     end;

     ProjPMap2(F.0,y) is nonnegative by A12; then
A32: FX.0 is nonnegative by A27;
A33: for n,m be Nat st n <= m holds
      for x be Element of X1 st x in Measurable-Y-section(A,y) holds
        (FX.n).x <= (FX.m).x
     proof
      let n,m be Nat;
      assume A34: n <= m;
      n is Element of NAT & m is Element of NAT by ORDINAL1:def 12; then
      FX.n = ProjPMap2(F.n,y) & FX.m = ProjPMap2(F.m,y) by A27;
      hence for x be Element of X1 st x in Measurable-Y-section(A,y)
        holds (FX.n).x <= (FX.m).x by A16,A34;
     end;

A36: dom(ProjPMap2(f,y)) = Y-section(A,y) by A4,Def4;

A37: for x be Element of X1 st x in Measurable-Y-section(A,y) holds
       FX#x is convergent & (ProjPMap2(f,y)).x = lim(FX#x)
     proof
      let x be Element of X1;
      reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
      assume x in Measurable-Y-section(A,y); then
      x in Y-section(A,y) by MEASUR11:def 7; then
A38:  [x,y] in dom f by A4,Th25; then
A39:  F#z is convergent & lim(F#z) = f.z by A6;
A40:  for n be Element of NAT holds (FX#x).n = (F#z).n
      proof
       let n be Element of NAT;
A41:   [x,y] in dom(F.n) by A38,A6;
       (FX#x).n = (FX.n).x by MESFUNC5:def 13; then
       (FX#x).n = ProjPMap2(F.n,y).x by A27; then
       (FX#x).n = (F.n).(x,y) by A41,Def4;
       hence (FX#x).n = (F#z).n by MESFUNC5:def 13;
      end;
      hence FX#x is convergent by A39,FUNCT_2:63;
      (ProjPMap2(f,y)).x = f.(x,y) by A38,Def4;
      hence (ProjPMap2(f,y)).x = lim(FX#x) by A39,A40,FUNCT_2:63;
     end; then
     for x be Element of X1 st x in Measurable-Y-section(A,y) holds
       FX#x is convergent; then
     consider I be ExtREAL_sequence such that
A42:  (for n be Nat holds I.n = Integral(M1,FX.n))
    & I is convergent
    & Integral(M1,lim FX) = lim I by A29,A30,A32,A33,MESFUNC9:52;

A43: for n be Element of NAT holds (G#y).n = I.n
     proof
      let n be Element of NAT;
      (G#y).n = (G.n).y by MESFUNC5:def 13; then
      (G#y).n = Integral1(M1,F.n).y by A11; then
      (G#y).n = Integral(M1,ProjPMap2(F.n,y)) by Def7; then
      (G#y).n = Integral(M1,FX.n) by A27;
      hence (G#y).n = I.n by A42;
     end;
     hence G#y is convergent by A42,FUNCT_2:def 8;

A44: G#y = I by A43,FUNCT_2:def 8;
A45: dom(lim FX) = Measurable-Y-section(A,y) by A29,MESFUNC8:def 9;
     for x be Element of X1 st x in dom(lim FX) holds
      (lim FX).x = (ProjPMap2(f,y)).x
     proof
      let x be Element of X1;
      assume A46: x in dom(lim FX); then
      (lim FX).x = lim(FX#x) by MESFUNC8:def 9;
      hence (lim FX).x = (ProjPMap2(f,y)).x by A37,A45,A46;
     end;
     hence lim(G#y) = Integral(M1,ProjPMap2(f,y))
       by A44,A45,A36,A42,PARTFUN1:5,MEASUR11:def 7;
    end; then
A47:for y be Element of X2 st y in XX2 holds G#y is convergent;

    now let n,m be Nat;
     dom(G.n) = XX2 & dom(G.m) = XX2 by A14;
     hence dom(G.n) = dom(G.m);
    end; then
A48:G is with_the_same_dom by MESFUNC8:def 2;
    G.0 = Integral1(M1,F.0) by A11; then
    XX2 = dom(G.0) by FUNCT_2:def 1; then
    consider J be ExtREAL_sequence such that
A49: (for n be Nat holds J.n = Integral(M2,G.n))
   & J is convergent
   & Integral(M2,lim G) = lim J by A14,A20,A47,A48,MESFUNC9:52;
    dom(lim G) = dom(G.0) by MESFUNC8:def 9; then
    dom(lim G) = dom(Integral1(M1,F.0)) by A11; then
    dom(lim G) = XX2 by FUNCT_2:def 1; then
A50:dom(lim G) = dom(Integral1(M1,lim F)) by FUNCT_2:def 1;
    for y be Element of X2 st y in dom(lim G)
     holds (lim G).y = (Integral1(M1,lim F)).y
    proof
     let y be Element of X2;
     assume y in dom(lim G); then
     (lim G).y = lim(G#y) by MESFUNC8:def 9; then
     (lim G).y = Integral(M1,ProjPMap2(f,y)) by A25;
     hence (lim G).y = (Integral1(M1,lim F)).y by A10,Def7;
    end; then
A51:lim G = Integral1(M1,lim F) by A50,PARTFUN1:5;
    for n be Element of NAT holds K.n = J.n
    proof
     let n be Element of NAT;
A52: A = dom(F.n) by A4,A6;
A53: F.n is nonnegative & F.n is_simple_func_in S by A6;
     K.n = integral'(Prod_Measure(M1,M2),F.n) by A6; then
     K.n = Integral(Prod_Measure(M1,M2),F.n) by A53,MESFUNC5:89; then
     K.n = Integral(M2,Integral1(M1,F.n)) by A1,A2,A52,A53,Lm15; then
     K.n = Integral(M2,G.n) by A11;
     hence K.n = J.n by A49;
    end;
    hence Integral(Prod_Measure(M1,M2),f)
      = Integral(M2,Integral1(M1,f)) by A7,A10,A49,A51,FUNCT_2:def 8;
end;

Lm17:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 A be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL
st M1 is sigma_finite & M2 is sigma_finite
 & f is nonnegative & A = dom f & f is A-measurable
 holds Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite and
A3:  f is nonnegative and
A4:  A = dom f and
A5:  f is A-measurable;
    set S = sigma measurable_rectangles(S1,S2);
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider EX1 = {} as Element of S1 by MEASURE1:7;
    Integral(Prod_Measure(M1,M2),f)
     = integral+(Prod_Measure(M1,M2),f) by A3,A4,A5,MESFUNC5:88; then
    consider F be Functional_Sequence of [:X1,X2:],ExtREAL,
       K be ExtREAL_sequence such that
A6:  (for n be Nat holds F.n is_simple_func_in S & dom(F.n) = dom f)
   & (for n be Nat holds F.n is nonnegative)
   & (for n,m be Nat st n <= m holds
       for z be Element of [:X1,X2:] st z in dom f holds (F.n).z <= (F.m).z)
   & (for z be Element of [:X1,X2:] st z in dom f holds
       F#z is convergent & lim(F#z) = f.z)
   & for n be Nat holds K.n = integral'(Prod_Measure(M1,M2),F.n) and
     K is convergent and
A7:  Integral(Prod_Measure(M1,M2),f) = lim K by A3,A4,A5,MESFUNC5:def 15;

    dom(F.0) = dom f by A6; then
A8: dom (lim F) = dom f by MESFUNC8:def 9;
    for z be Element of [:X1,X2:] st z in dom(lim F) holds
     (lim F).z = f.z
    proof
     let z be Element of [:X1,X2:];
     assume A9: z in dom(lim F);
     hence (lim F).z = lim(F#z) by MESFUNC8:def 9
      .= f.z by A9,A8,A6;
    end; then
A10:lim F = f by A8,PARTFUN1:5;

    deffunc G(Nat) = Integral2(M2,F.$1);

    consider G be Functional_Sequence of X1,ExtREAL such that
A11: for n be Nat holds G.n = G(n) from SEQFUNC:sch 1;

A12:for n be Nat, x be Element of X1 holds
     dom(ProjPMap1(F.n,x)) = Measurable-X-section(A,x)
   & ProjPMap1(F.n,x) is (Measurable-X-section(A,x))-measurable
   & ProjPMap1(F.n,x) is nonnegative
    proof
     let n be Nat, x be Element of X1;
A13: dom(F.n) = A by A4,A6; then
     dom(ProjPMap1(F.n,x)) = X-section(A,x) by Def3;
     hence dom(ProjPMap1(F.n,x)) = Measurable-X-section(A,x)
       by MEASUR11:def 6;
     F.n is A-measurable by A6,MESFUNC2:34;
     hence ProjPMap1(F.n,x) is (Measurable-X-section(A,x))-measurable
        by A13,Th47;
     F.n is nonnegative by A6;
     hence ProjPMap1(F.n,x) is nonnegative by Th32;
    end;

A14:for n be Nat holds
      dom(G.n) = XX1 & G.n is XX1-measurable & G.n is nonnegative
    proof
     let n be Nat;
A15: G.n = Integral2(M2,F.n) by A11;
     hence dom(G.n) = XX1 by FUNCT_2:def 1;
     dom(F.n) = A & F.n is A-measurable by A4,A6,MESFUNC2:34;
     hence G.n is XX1-measurable by A2,A15,A6,Th60;
     now let x be object;
      assume x in dom(G.n); then
      reconsider x1=x as Element of X1;
      (G.n).x = Integral(M2,ProjPMap1(F.n,x1))
    & ProjPMap1(F.n,x1) is (Measurable-X-section(A,x1))-measurable
    & dom(ProjPMap1(F.n,x1)) = Measurable-X-section(A,x1) by A12,A15,Def8;
      hence (G.n).x >= 0 by A12,MESFUNC5:90;
     end;
     hence G.n is nonnegative by SUPINF_2:52;
    end;

A16:for x be Element of X1, n,m be Nat st n <= m holds
     for y be Element of X2 st y in Measurable-X-section(A,x) holds
        ProjPMap1(F.n,x).y <= ProjPMap1(F.m,x).y
    proof
     let x be Element of X1, n,m be Nat;
     assume A17: n <= m;
     hereby let y be Element of X2;
       assume y in Measurable-X-section(A,x); then
       y in X-section(A,x) by MEASUR11:def 6; then
       y in X-section(dom(F.n),x) by A4,A6; then
       y in {y where y is Element of X2: [x,y] in dom(F.n)}
         by MEASUR11:def 4; then
A18:   ex y1 be Element of X2 st y1=y & [x,y1] in dom(F.n); then
A19:   [x,y] in dom f by A6; then
       [x,y] in dom(F.m) by A6; then
       ProjPMap1(F.n,x).y = (F.n).(x,y) & ProjPMap1(F.m,x).y = (F.m).(x,y)
         by A18,Def3;
       hence ProjPMap1(F.n,x).y <= ProjPMap1(F.m,x).y by A6,A17,A19;
     end;
    end;

A20:for n,m be Nat st n <= m holds for x be Element of X1 st x in XX1 holds
     (G.n).x <= (G.m).x
    proof
     let n,m be Nat;
     assume A21: n <= m;
     hereby let x be Element of X1;
      assume x in XX1;

A22:  dom(ProjPMap1(F.n,x)) = Measurable-X-section(A,x)
    & dom(ProjPMap1(F.m,x)) = Measurable-X-section(A,x)
    & ProjPMap1(F.n,x) is (Measurable-X-section(A,x))-measurable
    & ProjPMap1(F.m,x) is (Measurable-X-section(A,x))-measurable
    & ProjPMap1(F.n,x) is nonnegative
    & ProjPMap1(F.m,x) is nonnegative by A12;
      for y be Element of X2 st y in dom(ProjPMap1(F.n,x))
       holds ProjPMap1(F.n,x).y <= ProjPMap1(F.m,x).y by A16,A21,A22; then
      integral+(M2,ProjPMap1(F.n,x)) <= integral+(M2,ProjPMap1(F.m,x))
        by A22,MESFUNC5:85; then
      Integral(M2,ProjPMap1(F.n,x)) <= integral+(M2,ProjPMap1(F.m,x))
        by A22,MESFUNC5:88; then
A23:  Integral(M2,ProjPMap1(F.n,x)) <= Integral(M2,ProjPMap1(F.m,x))
        by A22,MESFUNC5:88;
      (G.n).x = Integral2(M2,F.n).x by A11; then
A24:  (G.n).x = Integral(M2,ProjPMap1(F.n,x)) by Def8;
      (G.m).x = Integral2(M2,F.m).x by A11;
      hence (G.n).x <= (G.m).x by A23,A24,Def8;
     end;
    end;

A25:for x be Element of X1 st x in XX1 holds
      G#x is convergent & lim(G#x) = Integral(M2,ProjPMap1(f,x))
    proof
     let x be Element of X1;
     assume x in XX1;

     defpred P2[Element of NAT,object] means $2 = ProjPMap1(F.$1,x);
A26: for n be Element of NAT ex f be Element of PFuncs(X2,ExtREAL) st P2[n,f]
     proof
      let n be Element of NAT;
      reconsider f = ProjPMap1(F.n,x) as Element of PFuncs(X2,ExtREAL)
        by PARTFUN1:45;
      take f;
      thus thesis;
     end;

     consider FX be sequence of PFuncs(X2,ExtREAL) such that
A27:  for n be Element of NAT holds P2[n,FX.n] from FUNCT_2:sch 3(A26);

A28: for n be Nat holds dom(FX.n) = Measurable-X-section(A,x)
     proof
      let n be Nat;
      n is Element of NAT by ORDINAL1:def 12; then
      FX.n = ProjPMap1(F.n,x) by A27; then
      dom(FX.n) = X-section(dom(F.n),x) by Def3; then
      dom(FX.n) = X-section(A,x) by A4,A6;
      hence dom(FX.n) = Measurable-X-section(A,x) by MEASUR11:def 6;
     end;

     for m,n be Nat holds dom(FX.m) = dom(FX.n)
     proof
      let m,n be Nat;
      dom(FX.m) = Measurable-X-section(A,x) by A28;
      hence dom(FX.m) = dom(FX.n) by A28;
     end; then
     reconsider FX as with_the_same_dom Functional_Sequence of X2,ExtREAL
       by MESFUNC8:def 2;

A29: dom(FX.0) = Measurable-X-section(A,x) by A28;
A30: for n be Nat holds FX.n is (Measurable-X-section(A,x))-measurable
     proof
      let n be Nat;
      n is Element of NAT by ORDINAL1:def 12; then
A31:  FX.n = ProjPMap1(F.n,x) by A27;
      F.n is_simple_func_in S by A6;
      hence FX.n is (Measurable-X-section(A,x))-measurable
      by A31,Th31,MESFUNC2:34;
     end;

     ProjPMap1(F.0,x) is nonnegative by A12; then
A32: FX.0 is nonnegative by A27;
A33: for n,m be Nat st n <= m holds
      for y be Element of X2 st y in Measurable-X-section(A,x) holds
        (FX.n).y <= (FX.m).y
     proof
      let n,m be Nat;
      assume A34: n <= m;
      n is Element of NAT & m is Element of NAT by ORDINAL1:def 12; then
      FX.n = ProjPMap1(F.n,x) & FX.m = ProjPMap1(F.m,x) by A27;
      hence for y be Element of X2 st y in Measurable-X-section(A,x)
       holds (FX.n).y <= (FX.m).y by A16,A34;
     end;

A36: dom(ProjPMap1(f,x)) = X-section(A,x) by A4,Def3;

A37: for y be Element of X2 st y in Measurable-X-section(A,x) holds
       FX#y is convergent & (ProjPMap1(f,x)).y = lim(FX#y)
     proof
      let y be Element of X2;
      reconsider z = [x,y] as Element of [:X1,X2:] by ZFMISC_1:def 2;
      assume y in Measurable-X-section(A,x); then
      y in X-section(A,x) by MEASUR11:def 6; then
A38:  [x,y] in dom f by A4,Th25; then
A39:  F#z is convergent & lim(F#z) = f.z by A6;
A40:  for n be Element of NAT holds (FX#y).n = (F#z).n
      proof
       let n be Element of NAT;
A41:   [x,y] in dom(F.n) by A38,A6;
       (FX#y).n = (FX.n).y by MESFUNC5:def 13; then
       (FX#y).n = ProjPMap1(F.n,x).y by A27; then
       (FX#y).n = (F.n).(x,y) by A41,Def3;
       hence (FX#y).n = (F#z).n by MESFUNC5:def 13;
      end;
      hence FX#y is convergent by A39,FUNCT_2:63;
      (ProjPMap1(f,x)).y = f.(x,y) by A38,Def3;
      hence (ProjPMap1(f,x)).y = lim(FX#y) by A39,A40,FUNCT_2:63;
     end; then
     for y be Element of X2 st y in Measurable-X-section(A,x) holds
       FX#y is convergent; then
     consider I be ExtREAL_sequence such that
A42:  (for n be Nat holds I.n = Integral(M2,FX.n))
    & I is convergent
    & Integral(M2,lim FX) = lim I by A29,A30,A32,A33,MESFUNC9:52;

A43: for n be Element of NAT holds (G#x).n = I.n
     proof
      let n be Element of NAT;
      (G#x).n = (G.n).x by MESFUNC5:def 13; then
      (G#x).n = Integral2(M2,F.n).x by A11; then
      (G#x).n = Integral(M2,ProjPMap1(F.n,x)) by Def8; then
      (G#x).n = Integral(M2,FX.n) by A27;
      hence (G#x).n = I.n by A42;
     end;
     hence G#x is convergent by A42,FUNCT_2:def 8;

A44: G#x = I by A43,FUNCT_2:def 8;
A45: dom(lim FX) = Measurable-X-section(A,x) by A29,MESFUNC8:def 9;
     for y be Element of X2 st y in dom(lim FX) holds
      (lim FX).y = (ProjPMap1(f,x)).y
     proof
      let y be Element of X2;
      assume A46: y in dom(lim FX); then
      (lim FX).y = lim(FX#y) by MESFUNC8:def 9;
      hence (lim FX).y = (ProjPMap1(f,x)).y by A37,A45,A46;
     end;
     hence lim(G#x) = Integral(M2,ProjPMap1(f,x))
       by A44,A45,A36,A42,PARTFUN1:5,MEASUR11:def 6;
    end; then
A47:for x be Element of X1 st x in XX1 holds G#x is convergent;

    now let n,m be Nat;
     dom(G.n) = XX1 & dom(G.m) = XX1 by A14;
     hence dom(G.n) = dom(G.m);
    end; then
A48:G is with_the_same_dom by MESFUNC8:def 2;

    G.0 = Integral2(M2,F.0) by A11; then
    XX1 = dom(G.0) by FUNCT_2:def 1; then
    consider J be ExtREAL_sequence such that
A49: (for n be Nat holds J.n = Integral(M1,G.n))
   & J is convergent
   & Integral(M1,lim G) = lim J by A14,A20,A47,A48,MESFUNC9:52;
    dom(lim G) = dom(G.0) by MESFUNC8:def 9; then
    dom(lim G) = dom(Integral2(M2,F.0)) by A11; then
    dom(lim G) = XX1 by FUNCT_2:def 1; then
A50:dom(lim G) = dom(Integral2(M2,lim F)) by FUNCT_2:def 1;
    for x be Element of X1 st x in dom(lim G)
     holds (lim G).x = (Integral2(M2,lim F)).x
    proof
     let x be Element of X1;
     assume x in dom(lim G); then
     (lim G).x = lim(G#x) by MESFUNC8:def 9; then
     (lim G).x = Integral(M2,ProjPMap1(f,x)) by A25;
     hence (lim G).x = (Integral2(M2,lim F)).x by A10,Def8;
    end; then
A51:lim G = Integral2(M2,lim F) by A50,PARTFUN1:5;
    for n be Element of NAT holds K.n = J.n
    proof
     let n be Element of NAT;
A52: A = dom(F.n) by A4,A6;
A53: F.n is nonnegative & F.n is_simple_func_in S by A6;
     K.n = integral'(Prod_Measure(M1,M2),F.n) by A6; then
     K.n = Integral(Prod_Measure(M1,M2),F.n) by A53,MESFUNC5:89; then
     K.n = Integral(M1,Integral2(M2,F.n)) by A1,A2,A52,A53,Lm15; then
     K.n = Integral(M1,G.n) by A11;
     hence K.n = J.n by A49;
    end;
    hence Integral(Prod_Measure(M1,M2),f)
      = Integral(M1,Integral2(M2,f)) by A7,A10,A49,A51,FUNCT_2:def 8;
end;

Lm18:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 A be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL
st M1 is sigma_finite & M2 is sigma_finite
 & f is nonpositive & A = dom f & f is A-measurable
 holds Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite and
A3:  f is nonpositive and
A4:  A = dom f and
A5:  f is A-measurable;
    reconsider XX2 = X2 as Element of S2 by MEASURE1:7;
    reconsider g = -f as nonnegative PartFunc of [:X1,X2:],ExtREAL by A3;
A6: g = (-1)(#)f by MESFUNC2:9;
    -Integral1(M1,f) = (-1)(#)Integral1(M1,f) & dom(Integral1(M1,f)) = XX2
  & Integral1(M1,f) is nonpositive & Integral1(M1,f) is XX2-measurable
      by A1,A3,A4,A5,Th67,Th59,MESFUNC2:9,FUNCT_2:def 1; then
A7: Integral(M2,-Integral1(M1,f)) = (-1)*Integral(M2,Integral1(M1,f))
      by Lm2;
    A = dom g & g is A-measurable by A4,A5,MESFUNC1:def 7,MEASUR11:63; then
    Integral(Prod_Measure(M1,M2),g) = Integral(M2,Integral1(M1,g))
      by A1,A2,Lm16; then
    (-1) * Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,g))
      by A3,A4,A5,A6,Lm2; then
    (-1) * Integral(Prod_Measure(M1,M2),f) = Integral(M2,-Integral1(M1,f))
      by A4,A5,Th73;
    hence Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
      by A7,XXREAL_3:68;
end;

Lm19:
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 A be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL
st M1 is sigma_finite & M2 is sigma_finite
 & f is nonpositive & A = dom f & f is A-measurable
 holds Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
proof
    let X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
    M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
    A be Element of sigma measurable_rectangles(S1,S2),
    f be PartFunc of [:X1,X2:],ExtREAL;
    assume that
A1:  M1 is sigma_finite and
A2:  M2 is sigma_finite and
A3:  f is nonpositive and
A4:  A = dom f and
A5:  f is A-measurable;
    reconsider XX1 = X1 as Element of S1 by MEASURE1:7;
    reconsider g = -f as nonnegative PartFunc of [:X1,X2:],ExtREAL by A3;
A6: g = (-1)(#)f by MESFUNC2:9;
    -Integral2(M2,f) = (-1)(#)Integral2(M2,f) & dom(Integral2(M2,f)) = XX1
  & Integral2(M2,f) is nonpositive & Integral2(M2,f) is XX1-measurable
      by A2,A3,A4,A5,Th67,Th60,MESFUNC2:9,FUNCT_2:def 1; then
A7: Integral(M1,-Integral2(M2,f)) = (-1)*Integral(M1,Integral2(M2,f))
      by Lm2;
    A = dom g & g is A-measurable by A4,A5,MESFUNC1:def 7,MEASUR11:63; then
    Integral(Prod_Measure(M1,M2),g) = Integral(M1,Integral2(M2,g))
      by A1,A2,Lm17; then
    (-1) * Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,g))
      by A3,A4,A5,A6,Lm2; then
    (-1) * Integral(Prod_Measure(M1,M2),f) = Integral(M1,-Integral2(M2,f))
      by A4,A5,Th73;
    hence Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
      by A7,XXREAL_3:68;
end;

theorem :: Fubini's theorem
for X1,X2 be non empty set, S1 be SigmaField of X1, S2 be SigmaField of X2,
 M1 be sigma_Measure of S1, M2 be sigma_Measure of S2,
 A be Element of sigma measurable_rectangles(S1,S2),
 f be PartFunc of [:X1,X2:],ExtREAL
st M1 is sigma_finite & M2 is sigma_finite
 & (f is nonnegative or f is nonpositive) & A = dom f & f is A-measurable
 holds Integral(Prod_Measure(M1,M2),f) = Integral(M2,Integral1(M1,f))
     & Integral(Prod_Measure(M1,M2),f) = Integral(M1,Integral2(M2,f))
by Lm16,Lm18,Lm17,Lm19;