
theorem
  for p being non empty Graph-yielding FinSequence
  st p.1 is _finite &
    for n being Element of dom p st n <= len p - 1 holds
    (ex v being object st p.(n+1) is addVertex of p.n,v) or
    (ex v1,e,v2 being object st p.(n+1) is addEdge of p.n,v1,e,v2)
  holds p.len p is _finite
proof
  let p be non empty Graph-yielding FinSequence;
  assume that A1: p.1 is _finite and
    A2: for n being Element of dom p st n <= len p - 1 holds
      (ex v being object st p.(n+1) is addVertex of p.n,v) or
      (ex v1,e,v2 being object st p.(n+1) is addEdge of p.n,v1,e,v2);
  defpred Q[Nat] means $1 <= len p implies ex k being Element of dom p
    st $1 = k & p.k is _finite;
  A3: Q[1]
  proof
    assume 1 <= len p;
    then reconsider k = 1 as Element of dom p by FINSEQ_3:25;
    take k;
    thus thesis by A1;
  end;
  A4: for m being non zero Nat st Q[m] holds Q[m+1]
  proof
    let m be non zero Nat;
    assume A5: Q[m];
    assume A6: m+1 <= len p;
    0+1 <= m+1 by XREAL_1:6;
    then reconsider k = m+1 as Element of dom p by A6, FINSEQ_3:25;
    take k;
    thus m+1 = k;
    m+1-1 <= len p - 0 by A6, XREAL_1:13;
    then consider k0 being Element of dom p such that
      A7: m = k0 & p.k0 is _finite by A5;
    m+1-1 <= len p - 1 by A6, XREAL_1:9;
    then per cases by A2, A7;
    suppose ex v being object st p.(k0+1) is addVertex of p.k0,v;
      hence thesis by A7;
    end;
    suppose ex v1,e,v2 being object st p.(k0+1) is addEdge of p.k0,v1,e,v2;
      hence thesis by A7;
    end;
  end;
  A8: for m being non zero Nat holds Q[m] from NAT_1:sch 10(A3,A4);
  consider k being Element of dom p such that
    A9: len p = k & p.k is _finite by A8;
  thus thesis by A9;
end;
