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,c,d,e for Integer;

theorem Th7:
  for a,b,c,i1,i2 holds
    {p: a*p.i1 > b*p.i2+c} is diophantine Subset of n -xtuples_of NAT
proof
  let a,b,c be Integer,i1,i2 be Element of n;
  set F=F_Real;
  set n1=n+1;
  set D = {p: a* p.i1 > b*p.i2+c};
  D c= n -xtuples_of NAT
  proof
    let y be object;
    assume y in D;
    then ex p st y=p & a* p.i1 > b*p.i2+c;
    hence thesis by HILB10_2:def 5;
  end;
  then reconsider D as Subset of n -xtuples_of NAT;
  per cases;
  suppose n=0;
    then D is diophantine Subset of n -xtuples_of NAT;
    hence thesis;
  end;
  suppose A1: n<>0;
    A2: n< n1 by NAT_1:13;
    n in Segm n1 by A2,NAT_1:44;
    then reconsider I=i1,J=i2,N=n as Element of n1 by Th2;
    reconsider ar=a,br=b,cr = c+1 as integer Element of F
    by XREAL_0:def 1;
    set Q=br*1_1(J,F) - ar*1_1(I,F)+1_1(N,F)+cr*1_(n1,F);
    reconsider Q as INT -valued Polynomial of n+1,F_Real;
    for s be object holds
    s in D iff ex x be n-element XFinSequence of NAT,
    y be 1-element XFinSequence of NAT st
    s=x &  eval(Q,@(x^y)) = 0
    proof
      let s be object;
      thus s in D implies ex x be n-element XFinSequence of NAT,
      y be 1-element XFinSequence of NAT st
      s=x &  eval(Q,@(x^y)) = 0
      proof
        assume s in D;
        then consider p such that
        A3: s=p & a* p.i1 > b*p.i2+c;
        a* p.i1 - (b*p.i2+c) > 0 by A3,XREAL_1:50;
        then reconsider pij=a* p.i1 - (b*p.i2+c) as Element of NAT
        by INT_1:3;
        reconsider pp=pij-1 as Element of NAT by A3,XREAL_1:50,NAT_1:20;
        reconsider Z=<%pp%> as 1-element XFinSequence of NAT;
        take pZ=p,Z;
        set P=@(p^Z);
        A4: len p = n by CARD_1:def 7;
        A5: P.I = p.i1 & P.J = p.i2 by A4,A1, AFINSQ_1:def 3;
        A6:eval(ar*1_1(I,F),P) = ar*eval(1_1(I,F),P) by POLYNOM7:29
        .= a*(P.I) by Th1;
        A7:eval(br*1_1(J,F),P) = br*eval(1_1(J,F),P) by POLYNOM7:29
        .= b*(P.J) by Th1;
        A8:eval(cr*1_(n1,F),P) = cr*eval(1_(n1,F),P) by POLYNOM7:29
        .= cr*(1.F) by POLYNOM2:21;
        A9: eval(1_1(I,F),P) = P.I & eval(1_1(J,F),P) = P.J &
        eval(1_1(N,F),P) =P.N &  eval(1_(n1,F),P) = 1.F by Th1,POLYNOM2:21;
        eval(Q,P) =
        eval(br*1_1(J,F) - ar*1_1(I,F)+ 1_1(N,F),P) + eval(cr*1_(n1,F),P)
        by POLYNOM2:23
        .= eval(br*1_1(J,F) - ar*1_1(I,F),P)+eval(1_1(N,F),P)
          + eval(cr*1_(n1,F),P) by POLYNOM2:23
        .= eval(br*1_1(J,F),P) - eval(ar*1_1(I,F),P)+eval(1_1(N,F),P)
        + eval(cr*1_(n1,F),P) by POLYNOM2:24
        .= (b*p.i2) - (a*p.i1) +pp+cr by A4,AFINSQ_1:36,A5,A9,A6,A7,A8
        .= 0;
        hence thesis by A3;
      end;
      given p be n-element XFinSequence of NAT,
      Z be 1-element XFinSequence of NAT such that
      A10: s=p &  eval(Q,@(p^Z)) = 0;
      set P=@(p^Z);
      len p = n by CARD_1:def 7;then
      A11: P.I = p.i1 & P.J = p.i2 by A1, AFINSQ_1:def 3;
      A12:eval(ar*1_1(I,F),P) = ar*eval(1_1(I,F),P) by POLYNOM7:29
      .= a*(P.I) by Th1;
      A13:eval(br*1_1(J,F),P) = br*eval(1_1(J,F),P) by POLYNOM7:29
      .= b*(P.J) by Th1;
      A14:eval(cr*1_(n1,F),P) = cr*eval(1_(n1,F),P) by POLYNOM7:29
      .= cr*(1.F) by POLYNOM2:21;
      eval(Q,P) =
      eval(br*1_1(J,F) - ar*1_1(I,F)+ 1_1(N,F),P) + eval(cr*1_(n1,F),P)
      by POLYNOM2:23
      .= eval(br*1_1(J,F) - ar*1_1(I,F),P)+eval(1_1(N,F),P) +
      eval(cr*1_(n1,F),P) by POLYNOM2:23
      .= eval(br*1_1(J,F),P) - eval(ar*1_1(I,F),P)+eval(1_1(N,F),P)
      + eval(cr*1_(n1,F),P) by POLYNOM2:24
      .= (b*p.i2) - (a*p.i1) +P.n+cr by Th1,A11,A12,A13,A14;
      then (a*p.i1) = ((b*p.i2)+c+1)+P.n by A10;
      then A15:(a*p.i1) >= (b*p.i2)+c+1 by XREAL_1:31;
      (b*p.i2)+c+1 > (b*p.i2)+c by  XREAL_1:29;
      then (a*p.i1) > (b*p.i2)+c by A15,XXREAL_0:2;
      hence thesis by A10;
    end;
    then D is diophantine;
    hence thesis;
  end;
end;
