reserve k,n,n1,m,m1,m0,h,i,j for Nat,
  a,x,y,X,X1,X2,X3,X4,Y for set;
reserve L,L1,L2 for FinSequence;
reserve F,F1,G,G1,H for LTL-formula;
reserve W,W1,W2 for Subset of Subformulae H;
reserve v for LTL-formula;
reserve N,N1,N2,N10,N20,M for strict LTLnode over v;
reserve w for Element of Inf_seq(AtomicFamily);
reserve R1,R2 for Real_Sequence;

theorem
  ex n,L,M st 1 <= n & len L = n & L.1 = N & L.n = M & the LTLnew of M =
  {}v & L is_Finseq_for v
proof
  defpred P[Nat] means for N holds len(N)<=$1 implies ex n,L,M st 1 <= n & len
  L = n & L.1 = N & L.n = M & the LTLnew of M = {}v & L is_Finseq_for v;
A1: for l being Nat st P[l] holds P[l + 1]
  proof
    let l be Nat such that
A2: P[l];
    P[l+1]
    proof
      let N;
      len(N)<=l+1 implies ex n,L,M st 1 <= n & len L = n & L.1 = N & L.n =
      M & the LTLnew of M = {}v & L is_Finseq_for v
      proof
        assume
A3:     len(N)<=l+1;
        ex n,L,M st 1 <= n & len L = n & L.1 = N & L.n = M & the LTLnew
        of M = {}v & L is_Finseq_for v
        proof
          set NewN=the LTLnew of N;
          now
            per cases by A3,NAT_1:8;
            suppose
              len(N)<=l;
              hence thesis by A2;
            end;
            suppose
A4:           len(N)=l+1;
              then NewN <> {}v by Th23;
              then consider x being object such that
A5:           x in NewN by XBOOLE_0:def 1;
              x in Subformulae v by A5;
              then reconsider x as LTL-formula by MODELC_2:1;
              set M1 = SuccNode1(x,N);
              M1 is_succ1_of N by A5;
              then
A6:           M1 is_succ_of N;
              then len(M1)<=len(N)-1 by Th21;
              then consider n,L,M such that
A7:           1 <= n and
A8:           len L = n and
A9:           L.1 = M1 and
A10:          L.n = M and
A11:          the LTLnew of M = {}v and
A12:          L is_Finseq_for v by A2,A4;
              set L1 = <*N*>^L;
              set n1=n+1;
A13:          len L1 = len <*N*> + len L by FINSEQ_1:22
                .= n1 by A8,FINSEQ_1:39;
A14:          L1 is_Finseq_for v
              proof
                let k such that
A15:            1 <= k and
A16:            k < len(L1);
A17:            k+1<=len(L1) by A16,NAT_1:13;
                ex N1,N2 st L1.k = N1 & L1.(k + 1) = N2 & N2 is_succ_of N1
                proof
                  set N2 = L1.(k+1);
                  set N1 = L1.k;
                  now
                    per cases;
                    suppose
                      k<=1;
                      then
A18:                  k=1 by A15,XXREAL_0:1;
                      then reconsider N1 as strict LTLnode over v by
FINSEQ_1:41;
                      len <*N*> =1 by FINSEQ_1:39;
                      then
A19:                  N2 = L.(2-1) by A17,A18,FINSEQ_1:24
                        .= M1 by A9;
                      then reconsider N2 as strict LTLnode over v;
                      take N1,N2;
                      thus thesis by A6,A18,A19,FINSEQ_1:41;
                    end;
                    suppose
A20:                  1< k;
                      set km1= k -1;
                      reconsider km1 as Nat by A20,NAT_1:20;
                      1<km1+1 by A20;
                      then
A21:                  1<= km1 by NAT_1:13;
A22:                  len <*N*> < k by A20,FINSEQ_1:39;
                      then
A23:                  N1=L.(k - len <*N*>) by A16,FINSEQ_1:24
                        .= L.km1 by FINSEQ_1:39;
                      k<=k+1 by NAT_1:11;
                      then len <*N*> <k+1 by A22,XXREAL_0:2;
                      then
A24:                  N2= L.(k+1 - len <*N*>) by A17,FINSEQ_1:24
                        .= L.(k+1 -1) by FINSEQ_1:39
                        .= L.(km1+1);
A25:                  km1<n1-1 by A13,A16,XREAL_1:14;
                      then
A26:                  ex N10,N20 st L.km1 = N10 & L.(km1 + 1) = N20 & N20
                      is_succ_of N10 by A8,A12,A21;
                      then reconsider N1 as strict LTLnode over v by A23;
                      reconsider N2 as strict LTLnode over v by A24,A26;
                      take N1,N2;
                      thus thesis by A8,A12,A21,A25,A23,A24;
                    end;
                  end;
                  hence thesis;
                end;
                hence thesis;
              end;
A27:          len <*N*> =1 by FINSEQ_1:39;
A28:          L1.1= N by FINSEQ_1:41;
              1<n1 by A7,NAT_1:13;
              then L1.n1 = L.(n1 - 1) by A13,A27,FINSEQ_1:24
                .= M by A10;
              hence thesis by A11,A13,A28,A14,NAT_1:11;
            end;
          end;
          hence thesis;
        end;
        hence thesis;
      end;
      hence thesis;
    end;
    hence thesis;
  end;
  set k = len(N);
  reconsider k as Nat;
A29: P[0]
  proof
    let N;
    len(N)<=0 implies ex n,L,M st 1 <= n & len L = n & L.1 = N & L.n = M &
    the LTLnew of M = {}v & L is_Finseq_for v
    proof
      set n = 1;
      set M = N;
      assume
A30:  len(N)<=0;
      take n;
      set L = <*M*>;
      take L;
      take M;
      thus thesis by A30,Th22,FINSEQ_1:40;
    end;
    hence thesis;
  end;
  for k being Nat holds P[k] from NAT_1:sch 2 (A29,A1);
  then P[k];
  hence thesis;
end;
