reserve n,k for Nat,
  X for non empty set,
  S for SigmaField of X;

theorem Th15:
  for f be with_the_same_dom Functional_Sequence of X,ExtREAL,
      F be SetSequence of S, r be Real st
  (for n be Nat holds F.n = dom(f.0) /\ great_dom(f.n,r)) holds
  union rng F = dom(f.0) /\ great_dom(sup f,r)
proof
  let f be with_the_same_dom Functional_Sequence of X,ExtREAL,
      F be SetSequence of S, r be Real;
  set E = dom(f.0);
  assume
A1: for n be Nat holds F.n = E /\ great_dom(f.n,r);
  now
    let x be object;
    assume
A2: x in E /\ great_dom(sup f,r);
    then reconsider z=x as Element of X;
A3: x in E by A2,XBOOLE_0:def 4;
    x in great_dom(sup f,r) by A2,XBOOLE_0:def 4;
    then
A4: r < (sup f).z by MESFUNC1:def 13;
    ex n be Element of NAT st r < (f.n).z
    proof
      assume
A5:   for n be Element of NAT holds (f.n).z <= r;
      for x be ExtReal st x in rng (f#z) holds x <= r
      proof
        let x be ExtReal;
        assume x in rng (f#z);
        then consider m be object such that
A6:     m in NAT and
A7:     x=(f#z).m by FUNCT_2:11;
        reconsider m as Element of NAT by A6;
        x=(f.m).z by A7,MESFUNC5:def 13;
        hence thesis by A5;
      end;
      then r is UpperBound of rng (f#z) by XXREAL_2:def 1;
      then
A8:   sup (f#z) <= r by XXREAL_2:def 3;
      x in dom (sup f) by A3,Def4;
      hence contradiction by A4,A8,Def4;
    end;
    then consider n be Element of NAT such that
A9: r < (f.n).z;
    x in dom (f.n) by A3,Def2;
    then
A10: x in great_dom(f.n,r) by A9,MESFUNC1:def 13;
A11: F.n in rng F by FUNCT_2:4;
A12: F.n = E /\ great_dom(f.n,r) by A1;
    x in E by A2,XBOOLE_0:def 4;
    then x in F.n by A10,A12,XBOOLE_0:def 4;
    hence x in union rng F by A11,TARSKI:def 4;
  end;
  then
A13: E /\ great_dom((sup f),r) c= union rng F;
  now
    let x be object;
    assume x in union rng F;
    then consider y be set such that
A14: x in y and
A15: y in rng(F qua SetSequence of X) by TARSKI:def 4;
    reconsider z=x as Element of X by A14,A15;
    consider n be object such that
A16: n in dom F and
A17: y=F.n by A15,FUNCT_1:def 3;
    reconsider n as Element of NAT by A16;
A18: F.n = E /\ great_dom(f.n,r) by A1;
    then x in great_dom(f.n,r) by A14,A17,XBOOLE_0:def 4;
    then
A19: r < (f.n).z by MESFUNC1:def 13;
A20: (f.n).z=(f#z).n by MESFUNC5:def 13;
A21: x in E by A14,A17,A18,XBOOLE_0:def 4;
    then
A22: x in dom (sup f) by Def4;
    then (sup f).z = sup(f#z) by Def4;
    then (f.n).z <= (sup f).z by A20,RINFSUP2:23;
    then r < (sup f).z by A19,XXREAL_0:2;
    then x in great_dom(sup f,r) by A22,MESFUNC1:def 13;
    hence x in E /\ great_dom(sup f,r) by A21,XBOOLE_0:def 4;
  end;
  then union rng F c= E /\ great_dom(sup f,r);
  hence thesis by A13,XBOOLE_0:def 10;
end;
