reserve A,B,p,q,r,s for Element of LTLB_WFF,
  i,j,k,n for Element of NAT,
  X for Subset of LTLB_WFF,
  f,f1 for FinSequence of LTLB_WFF,
  g for Function of LTLB_WFF,BOOLEAN;

theorem Th20: (VAL g).('not' ((con nega f)/.(len con nega f))) = 0 iff
  for i be Nat st i in dom f holds (VAL g).(f/.i) = 0
  proof
    set v = VAL g;
A1: v.alt(f) = v.kon(nega f) => v.TFALSUM by LTLAXIO1:def 15
    .= v.kon(nega f) => FALSE by LTLAXIO1:def 15;
A2: len f = len nega f by Def4;
    hereby
      assume
A3:   v.alt(f) = 0;
      let i be Nat;
      reconsider i1 = i as Element of NAT by ORDINAL1:def 12;
      assume
A4:   i in dom f;
      then A5: 1 <= i & i <= len f by FINSEQ_3:25;
A6:   i in dom nega f by A4,FINSEQ_3:29,A2;
      then A7: (nega f)/.i = (nega f).i1 by PARTFUN1:def 6
      .= 'not' (f/.i1) by Def4,A5;
A8:   v.alt(f) = v.kon(nega f) => v.TFALSUM by LTLAXIO1:def 15
      .= v.kon(nega f) => FALSE by LTLAXIO1:def 15;
      v.(f/.i) => FALSE = v.(f/.i) => v.TFALSUM by LTLAXIO1:def 15
      .= v.('not' (f/.i)) by LTLAXIO1:def 15
      .= 1 by A8,A3,Th19,A6,A7;
      hence v.(f/.i) = 0;
    end;
    assume
A9: for i be Nat st i in dom f holds v.(f/.i) = 0;
    assume
    not v.alt(f) = 0;
    then not v.kon(nega f) = 1 by A1;
    then consider i be Nat such that
A10: i in dom nega f and
A11: not v.((nega f)/.i) = 1 by Th19;
A12: i <= len f by A2,A10,FINSEQ_3:25;
     reconsider i1 = i as Element of NAT by ORDINAL1:def 12;
A13: 1 <= i by A10,FINSEQ_3:25;
A14: (nega f)/.i = (nega f).i1 by A10,PARTFUN1:def 6
     .= 'not' (f/.i) by Def4,A13,A12;
A15: v.(f/.i1) => FALSE = v.(f/.i1) => v.TFALSUM by LTLAXIO1:def 15
     .= v.('not' (f/.i)) by LTLAXIO1:def 15
     .= 0 by A11,XBOOLEAN:def 3,A14;
     i in dom f by A2,FINSEQ_3:29,A10;
     hence contradiction by A15,A9;
   end;
