reserve a,b,c for boolean object;
reserve p,q,r,s,A,B,C for Element of LTLB_WFF,
        F,G,X,Y for Subset of LTLB_WFF,
        i,j,k,n for Element of NAT,
        f,f1,f2,g for FinSequence of LTLB_WFF;
reserve M for LTLModel;

theorem Th28:
 (SAT(M^\i)).[j,A]=(SAT M).[i+j,A]
 proof
  defpred P1[Element of LTLB_WFF] means
   for k holds(SAT(M^\i)).[k,$1]=(SAT M).[i+k,$1];
  A1: for n being Element of NAT holds P1[prop n]
  proof
   let n,k;
   per cases;
   suppose A2: prop n in (M^\i).k;
    then A3: prop n in M.(i+k) by NAT_1:def 3;
    thus(SAT(M^\i)).[k,prop n]=1 by A2,Def11
     .=(SAT M).[i+k,prop n] by A3,Def11;
   end;
   suppose A4: not prop n in (M^\i).k;
    then not prop n in M.(i+k) by NAT_1:def 3;
    then A5: not(SAT M).[i+k,prop n]=1 by Def11;
    not(SAT(M^\i)).[k,prop n]=1 by A4,Def11;
    hence (SAT(M^\i)).[k,prop n]=0 by XBOOLEAN:def 3
     .=(SAT M).[i+k,prop n] by A5,XBOOLEAN:def 3;
   end;
  end;
  A6: for r,s st P1[r] & P1[s] holds P1[r 'U' s] & P1[r=>s]
  proof
   let r,s being Element of LTLB_WFF;
   assume that
    A7: P1[r] and
    A8: P1[s];
   thus P1[r 'U' s]
   proof
    let k;
    A9: (SAT(M^\i)).[k,r 'U' s]=1 iff (SAT M).[i+k,r 'U' s]=1
    proof
     hereby assume(SAT(M^\i)).[k,r 'U' s]=1;
      then consider m be Element of NAT such that
       A10: 0<m and
       A11: (SAT(M^\i)).[k+m,s]=1 and
       A12: for j st 1<=j & j<m holds(SAT(M^\i)).[k+j,r]=1 by Def11;
      A13: now let j;
       assume 1<=j & j<m;
       then (SAT(M^\i)).[k+j,r]=1 by A12;
       then (SAT M).[i+(k+j),r]=1 by A7;
       hence (SAT M).[(i+k)+j,r]=1;
      end;
      (SAT M).[i+(k+m),s]=1 by A8,A11;
      then (SAT M).[(i+k)+m,s]=1;
      hence (SAT M).[i+k,r 'U' s]=1 by A10,A13,Def11;
     end;
     assume(SAT M).[i+k,r 'U' s]=1;
     then consider m be Element of NAT such that
      A14: 0<m and
      A15: (SAT M).[(i+k)+m,s]=1 and
      A16: for j st 1<=j & j<m holds(SAT M).[(i+k)+j,r]=1 by Def11;
     A17: now let j;
      assume 1<=j & j<m;
      then (SAT M).[(i+k)+j,r]=1 by A16;
      then (SAT M).[i+(k+j),r]=1;
      hence (SAT(M^\i)).[k+j,r]=1 by A7;
     end;
     (SAT M).[i+(k+m),s]=1 by A15;
     then (SAT(M^\i)).[k+m,s]=1 by A8;
     hence (SAT(M^\i)).[k,r 'U' s]=1 by A14,A17,Def11;
    end;
    per cases;
    suppose(SAT(M^\i)).[k,r 'U' s]=1;
     hence thesis by A9;
    end;
    suppose not(SAT(M^\i)).[k,r 'U' s]=1;
     then (SAT(M^\i)).[k,r 'U' s]=0 by XBOOLEAN:def 3;
     hence thesis by A9,XBOOLEAN:def 3;
    end;
   end;
   thus P1[r=>s]
   proof
    let k be Element of NAT;
    thus(SAT(M^\i)).[k,r=>s]=(SAT(M^\i)).[k,r]=>(SAT(M^\i)).[k,s] by Def11
     .=(SAT M).[i+k,r]=>(SAT(M^\i)).[k,s] by A7
     .=(SAT M).[i+k,r]=>(SAT M).[i+k,s] by A8
     .=(SAT M).[i+k,r=>s] by Def11;
   end;
  end;
  now let k;
   thus(SAT(M^\i)).[k,TFALSUM]=0 by Def11
    .=(SAT M).[i+k,TFALSUM] by Def11;
  end;
  then A18: P1[TFALSUM];
  for r being Element of LTLB_WFF holds P1[r] from HILBERT2:sch 2(A18,A1,A6);
  hence (SAT(M^\i)).[j,A]=(SAT M).[i+j,A];
 end;
