reserve a,a1,a2,v,v1,v2,x for object;
reserve V,A for set;
reserve m,n for Nat;
reserve S,S1,S2 for FinSequence;

theorem Th26:
  for F being FinSequence st F IsNDRankSeq V,A
   ex S being FinSequence st len S = 1 + len F & S IsNDRankSeq V,A &
    for n being Nat st n in dom S holds S.n = NDSS(V,A\/(<*A*>^F).n)
  proof
    let F be FinSequence such that
A1: F IsNDRankSeq V,A;
    set G = <*A*>^F;
    deffunc F(object) = NDSS(V,A\/G.$1);
    consider S being FinSequence such that
A2: len S = len G and
A3: for n being Nat st n in dom S holds S.n = F(n) from FINSEQ_1:sch 2;
    take S;
    len <*A*> = 1 by FINSEQ_1:39;
    hence
A4: len S = 1 + len F by A2,FINSEQ_1:22;
A5: G.1 = A by FINSEQ_1:41;
A6: for n being Nat st n in dom F holds G.(n+1) = F.n by FINSEQ_3:103;
A7: 1 <= len S by A4,NAT_1:11;
    thus S IsNDRankSeq V,A
    proof
      thus
A8:   S.1 = NDSS(V,A\/G.1) by A3,A7,FINSEQ_3:25
      .= NDSS(V,A) by A5;
      let n be Nat such that
A9:   n in dom S and
A10:  n+1 in dom S;
A11:  1 <= n by A9,FINSEQ_3:25;
A12:  n <= len F by A4,A10,FINSEQ_3:25,XREAL_1:6;
      then
A13:  n in dom F by A11,FINSEQ_3:25;
      per cases by A11,XXREAL_0:1;
      suppose n = 1;
        then G.(n+1) = S.n by A8,A12,A1,FINSEQ_3:25,103;
        hence NDSS(V,A\/S.n) = S.(n+1) by A3,A10;
      end;
      suppose
A14:    n > 1;
        then reconsider m = n-1 as Element of NAT by INT_1:5;
        S.n = NDSS(V,A\/G.(m+1)) by A3,A9
        .= NDSS(V,A\/F.m) by A13,A14,FINSEQ_3:103,CGAMES_1:20
        .= F.(m+1) by A1,A13,A14,CGAMES_1:20;
        then G.(n+1) = S.n by A6,A12,A11,FINSEQ_3:25;
        hence NDSS(V,A\/S.n) = S.(n+1) by A3,A10;
      end;
    end;
    thus thesis by A3;
  end;
