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 Th85:
  [*].<*i,j*> = i*j
proof
  reconsider i1=i as Element of NAT by ORDINAL1:def 12;
  defpred p[Nat] means [*].<*i,$1*> = i*$1;
A1: now
    let j be Nat;
     reconsider jj=j as Element of NAT by ORDINAL1:def 12;
    assume p[j];
    then [*].<*i1,jj+1*> = ((1,2)->(1,?,2) [+]).<*i,jj,i*jj*> by Th80
      .= [+].<*i1,i1*jj*> by Th82
      .= (i*1)+i*jj by Th84
      .= i*(j+1);
    hence p[j+1];
  end;
  reconsider ii = <*i1*> as Element of 1-tuples_on NAT by FINSEQ_2:98;
  [*].<*i,0*> = (1 const 0).ii by Th78
    .= i*0;
  then
A2: p[0];
   for i be Nat holds p[i] from NAT_1:sch 2(A2,A1);
   hence thesis;
end;
