reserve i,j,n,n1,n2,m,k,l,u for Nat,
        r,r1,r2 for Real,
        x,y for Integer,
        a,b for non trivial Nat,
        F for XFinSequence,
        cF,cF1,cF2 for complex-valued XFinSequence,
        c,c1,c2 for Complex;
reserve x,y,x1,u,w for Nat;
reserve n,m,k for Nat,
        p,q for n-element XFinSequence of NAT,
        i1,i2,i3,i4,i5,i6 for Element of n,
        a,b,d,f for Integer;

theorem
  for i1,i2,i3 holds
    {p: p.i3 = Product ( (p.i2+1)+(-idseq (p.i1))) & p.i2 > p.i1}
  is diophantine Subset of n -xtuples_of NAT
proof
  let i1,i2,i3;set n2=n+2;
  defpred R[XFinSequence of NAT] means
  $1.i3 = Product((($1.i2)+1)+(-idseq ($1.i1))) & $1.i2 > $1.i1;
  set RR = {p: R[p] };
  per cases;
  suppose A1:n=0;
    RR c= n -xtuples_of NAT
    proof
      let x be object;assume x in RR;
      then ex p be n-element XFinSequence of NAT st x= p & R[p];
      hence thesis by HILB10_2:def 5;
    end;
    hence thesis by A1;
  end;
  suppose n<>0;
    hence thesis by Th37;
  end;
end;
