reserve X for set,
  F for Field_Subset of X,
  M for Measure of F,
  A,B for Subset of X,
  Sets for SetSequence of X,
  seq,seq1,seq2 for ExtREAL_sequence,
  n,k for Nat;
reserve FSets for Set_Sequence of F,
  CA for Covering of A,F;
reserve Cvr for Covering of Sets,F;
reserve C for C_Measure of X;

theorem Th20:
  F c= sigma_Field C_Meas M
proof
  set C = C_Meas M;
    let E be object;
    assume
A1: E in F;
    then reconsider E9 = E as Subset of X;
    for A being Subset of X holds C.(A /\ E9) + C.(A /\ (X \ E9)) <= C.A
    proof
      let A be Subset of X;
      set CA = (C_Meas M).(A /\ E9) + (C_Meas M).(A /\ (X \ E9));
A2:   for seq be Covering of A,F holds (C_Meas M).(A /\ E9) + (C_Meas M).(
      A /\ (X \ E9)) <= SUM vol(M,seq)
      proof
        let seq be Covering of A,F;
        deffunc F1(Element of NAT) = seq.$1 /\ E9;
        consider Bseq be sequence of bool X such that
A3:     for n be Element of NAT holds Bseq.n = F1(n) from FUNCT_2:sch
        4;
        reconsider Bseq as SetSequence of X;
        for n be Nat holds Bseq.n in F
        proof
          let n be Nat;
          n in NAT by ORDINAL1:def 12;
          then Bseq.n = seq.n /\ E9 by A3;
          hence Bseq.n in F by A1,FINSUB_1:def 2;
        end;
        then reconsider Bseq as Set_Sequence of F by Def2;
A4:     for x being set st x in A ex n being Element of NAT st x in seq.n
        proof
          let x be set;
          assume
A5:       x in A;
          A c= union rng seq by Def3;
          then consider B be set such that
A6:       x in B and
A7:       B in rng seq by A5,TARSKI:def 4;
          ex n be Element of NAT st B = seq.n by A7,FUNCT_2:113;
          hence thesis by A6;
        end;
        now
          let x be object;
          assume
A8:       x in A /\ E9;
          then x in A by XBOOLE_0:def 4;
          then consider n be Element of NAT such that
A9:       x in seq.n by A4;
          x in E9 by A8,XBOOLE_0:def 4;
          then x in seq.n /\ E9 by A9,XBOOLE_0:def 4;
          then
A10:      x in Bseq.n by A3;
          Bseq.n in rng Bseq by FUNCT_2:4;
          hence x in union rng Bseq by A10,TARSKI:def 4;
        end;
        then A /\ E9 c= union rng Bseq;
        then reconsider Bseq as Covering of A/\E9,F by Def3;
        deffunc F2(Element of NAT) = seq.$1 /\ (X \ E9);
        consider Cseq be sequence of bool X such that
A11:    for n be Element of NAT holds Cseq.n = F2(n) from FUNCT_2:sch
        4;
        reconsider Cseq as SetSequence of X;
        for n be Nat holds Cseq.n in F
        proof
          let n be Nat;
          X in F by PROB_1:5;
          then
A12:      X \ E9 in F by A1,PROB_1:6;
          n in NAT by ORDINAL1:def 12;
          then Cseq.n = seq.n /\ (X \ E9) by A11;
          hence Cseq.n in F by A12,FINSUB_1:def 2;
        end;
        then reconsider Cseq as Set_Sequence of F by Def2;
        now
          let x be object;
          assume
A13:      x in A /\ (X \ E9);
          then x in A by XBOOLE_0:def 4;
          then consider n be Element of NAT such that
A14:      x in seq.n by A4;
          x in (X \ E9) by A13,XBOOLE_0:def 4;
          then x in seq.n /\ (X \ E9) by A14,XBOOLE_0:def 4;
          then
A15:      x in Cseq.n by A11;
          Cseq.n in rng Cseq by FUNCT_2:4;
          hence x in union rng Cseq by A15,TARSKI:def 4;
        end;
        then A /\ (X \ E9) c= union rng Cseq;
        then reconsider Cseq as Covering of A/\(X\E9),F by Def3;
A16:    for n be Nat holds (vol(M,seq)).n = (vol(M,Bseq)).n + (vol(M,Cseq )).n
        proof
          let n be Nat;
A17:      M.(seq.n) = (vol(M,seq)).n & M.(Bseq.n) = (vol(M,Bseq)).n by Def5;
A18:      M.(Cseq.n) = (vol(M,Cseq)).n by Def5;
          n is Element of NAT by ORDINAL1:def 12;
          then
A19:      Bseq.n = seq.n /\ E9 & Cseq.n = seq.n /\ (X \ E9) by A3,A11;
          then Bseq.n \/ Cseq.n = seq.n /\ (E9 \/ (X \ E9)) by XBOOLE_1:23;
          then Bseq.n \/ Cseq.n = seq.n /\ (E9 \/ X) by XBOOLE_1:39;
          then Bseq.n \/ Cseq.n = seq.n /\ X by XBOOLE_1:12;
          then
A20:      Bseq.n \/ Cseq.n = seq.n by XBOOLE_1:28;
          Bseq.n misses Cseq.n by A19,XBOOLE_1:76,79;
          hence (vol(M,seq)).n = (vol(M,Bseq)).n + (vol(M,Cseq)).n by A20,A17
,A18,MEASURE1:def 3;
        end;
        (C_Meas M).(A /\ (X \ E9)) = inf Svc(M,A /\ (X \ E9)) & SUM vol(M
        ,Cseq) in Svc(M,A /\ (X \ E9)) by Def7,Def8;
        then
A21:    (C_Meas M).(A /\ (X \ E9)) <= SUM vol(M,Cseq) by XXREAL_2:3;
        (C_Meas M).(A /\ E9) = inf Svc(M,A /\ E9) & SUM vol(M,Bseq) in
        Svc(M,A /\ E9 ) by Def7,Def8;
        then
A22:    (C_Meas M).(A /\ E9) <= SUM vol(M,Bseq) by XXREAL_2:3;
        vol(M,Bseq) is nonnegative & vol(M,Cseq) is nonnegative by Th4;
        then SUM vol(M,seq) = SUM vol(M,Bseq) + SUM vol(M,Cseq) by A16,Th3;
        hence (C_Meas M).(A /\ E9) + (C_Meas M).(A /\ (X \ E9)) <= SUM vol(M,
        seq) by A22,A21,XXREAL_3:36;
      end;
      for r be ExtReal holds r in Svc(M,A) implies CA <= r
      proof
        let r be ExtReal;
        assume r in Svc(M,A);
        then ex G be Covering of A,F st r = SUM vol(M,G) by Def7;
        hence thesis by A2;
      end;
      then CA is LowerBound of Svc(M,A) by XXREAL_2:def 2;
      then CA <= inf Svc(M,A) by XXREAL_2:def 4;
      hence CA <= (C_Meas M).A by Def8;
    end;
    hence E in sigma_Field(C_Meas M) by Th19;
end;
