reserve i, j, k, c, m, n for Nat,
  a, x, y, z, X, Y for set,
  D, E for non empty set,
  R for Relation,
  f, g for Function,
  p, q for FinSequence;
reserve f1, f2 for non empty homogeneous to-naturals NAT*-defined Function,
  e1, e2 for homogeneous to-naturals NAT*-defined Function,
  p for Element of (arity f1+1)-tuples_on NAT;
reserve P for primitive-recursively_closed non empty Subset of HFuncs NAT;

theorem Th81:
  f1 is len-total & f2 is len-total & arity f1 = 0 & arity f2 = 2
  implies primrec(f1,f2,1).<*i+1*> = f2.<*i,primrec(f1,f2,1).<*i*>*>
proof
  assume that
A1: f1 is len-total and
A2: f2 is len-total and
A3: arity f1 = 0 and
A4: arity f2 = 2;
  reconsider i1 = i as Element of NAT by ORDINAL1:def 12;
  reconsider p = <*i1*> as Element of (arity f1 +1)-tuples_on NAT
   by A3,FINSEQ_2:131;
A5: p+*(1,i+1) = <*i+1*> by FUNCT_7:95;
A6: p+*(1,i) = <*i*> by FUNCT_7:95;
  arity f1 +2 = arity f2 by A3,A4;
  hence
  primrec(f1,f2,1).<*i+1*> = f2.((p+*(1,i))^<*primrec(f1,f2,1).(p+*(1,i))
  *>) by A1,A2,A3,A5,Th62
    .= f2.<*i,primrec(f1,f2,1).<*i*>*> by A6,FINSEQ_1:def 9;
end;
