defpred S1[ set ] means for p being FinSequence of F1() st len p = $1 holds
P1[p];
A3: for i being Nat st S1[i] holds
S1[i + 1]
proof
let i be Nat; :: thesis: ( S1[i] implies S1[i + 1] )
assume A4: for p being FinSequence of F1() st len p = i holds
P1[p] ; :: thesis: S1[i + 1]
let p be FinSequence of F1(); :: thesis: ( len p = i + 1 implies P1[p] )
assume A5: len p = i + 1 ; :: thesis: P1[p]
then consider q being FinSequence of F1(), x being Element of F1() such that
A6: p = q ^ <*x*> by Th17;
len p = (len q) + 1 by A6, Th14;
hence P1[p] by A2, A4, A5, A6; :: thesis: verum
end;
let p be FinSequence of F1(); :: thesis: P1[p]
A7: len p = len p ;
A8: S1[ 0 ]
proof
let p be FinSequence of F1(); :: thesis: ( len p = 0 implies P1[p] )
assume len p = 0 ; :: thesis: P1[p]
then p = <*> F1() ;
hence P1[p] by A1; :: thesis: verum
end;
for i being Nat holds S1[i] from NAT_1:sch 2(A8, A3);
hence P1[p] by A7; :: thesis: verum