reserve i,j,n,n1,n2,m,k,l,u for Nat,
        i1,i2,i3,i4,i5,i6 for Element of n,
        p,q for n-element XFinSequence of NAT,
        a,b,c,d,e,f for Integer;

theorem
  for p being INT -valued Polynomial of 2+n+k,F_Real holds
    {X where X is n-element XFinSequence of NAT:
       ex x being Element of NAT st
          for z being Element of NAT st z <= x
             ex y being k-element XFinSequence of NAT st
           eval(p,@(<%z,x%>^X^y)) = 0}
   is diophantine Subset of n -xtuples_of NAT
proof
    let p being INT -valued Polynomial of 2+n+k,F_Real;
    set X0= {X where X is n-element XFinSequence of NAT:
      ex x be Element of NAT st for z be Element of NAT st z <= x
        ex y be k-element XFinSequence of NAT st eval(p,@(<%z,x%>^X^y)) = 0};
    set NK=1+n+k, sum=sum_of_coefficients |.p.|,Deg=degree p;
A1: 0 <NK+4 & NK+0< NK+4 & NK+1 < NK+4 & NK+2 < NK+4 & NK+3 < NK+4
      by XREAL_1:8;
    then 0 in Segm (NK+4) & NK+0 in Segm (NK+4) & NK+1 in Segm (NK+4) &
      NK+2 in Segm (NK+4) & NK+3 in Segm (NK+4) by NAT_1:44;
    then reconsider ZERO=0,i0=NK,i1 = NK+1,i2 = NK+2,i3 = NK+3
      as Element of NK+4;
    defpred P2[XFinSequence of NAT] means 1 * ($1.i1) > 1 * ($1.ZERO) + 0;
A2: {q where q is (NK+4)-element XFinSequence of NAT:P2[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT by HILB10_3:7;
    defpred P3[XFinSequence of NAT] means $1.i1 >= sum* ((($1.ZERO)^2+1) *
      (Product (1+(($1/^1) | n) ))*(1*$1.i0+0))|^(0*($1.i0)+Deg);
    1+n <= NK by NAT_1:11;
    then
A3: {q where q is NK+4-element XFinSequence of NAT:P3[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT by Th11,A1,XXREAL_0:2;
    defpred P4[XFinSequence of NAT] means
      for i be Nat st i in k holds $1.(1+n+i) > $1.i0 &
      Product (($1.((1+n+i)) + 1)+(-idseq ($1.i0))),0
      are_congruent_mod  $1.i2;
A4: {q where q is NK+4-element XFinSequence of NAT:P4[q]}
       is diophantine Subset of (NK+4) -xtuples_of NAT
    proof
      defpred T[Nat,Nat,Nat,Nat] means
      Product (($1 + 1)+(-idseq ($2))),0 are_congruent_mod  $3 & $1 > $2;
A5:   for i1,i2,i3,i4 be Element of NK+4 holds
      {q where q is NK+4-element XFinSequence of NAT:T[q.i1,q.i2,q.i3,q.i4]}
        is diophantine Subset of (NK+4) -xtuples_of NAT
      proof
        let i1,i2,i3,i4 be Element of NK+4;set NK5=NK+4+1;
A6:       NK+4+0 < NK5 by NAT_1:13;
        then NK+4 in Segm NK5 by NAT_1:44;
        then reconsider I1=i1,I2=i2,I3=i3,I4=i4,M0 =NK+4 as Element of NK5
          by HILB10_3:2;
        defpred G[XFinSequence of NAT] means
        $1.M0 = Product (($1.I1+1)+(-idseq ($1.I2))) & $1.I1 > $1.I2;
A7:     {q where q is NK5-element XFinSequence of NAT:G[q]}
          is diophantine Subset of NK5 -xtuples_of NAT
          by HILB10_4:38;
        defpred H[XFinSequence of NAT] means 1*$1.M0,0*$1.I4
          are_congruent_mod 1*$1.I3;
A8:     {q where q is NK5-element XFinSequence of NAT:H[q]}
          is diophantine Subset of NK5 -xtuples_of NAT by HILB10_3:21;
        set GH={q where q is NK5-element XFinSequence of NAT:G[q]&H[q]};
        set GHr={q|(NK+4) where q is NK5-element XFinSequence of NAT:q in GH};
        set QQ = {q where q is NK+4-element XFinSequence of NAT:
          T[q.i1,q.i2,q.i3,q.i4]};
A9:     GH is diophantine Subset of NK5 -xtuples_of NAT
          from HILB10_3:sch 3(A7,A8);
A10:    GHr is diophantine Subset of (NK+4) -xtuples_of NAT
          by A9,NAT_1:11,HILB10_3:5;
A11:    GHr c= QQ
        proof
          let y be object such that
A12:        y in GHr;
          consider q be NK5-element XFinSequence of NAT such that
A13:        y = q|(NK+4) & q in GH by A12;
A14:      ex w be NK5-element XFinSequence of NAT st w = q & G[w]&H[w]
            by A13;
          len q = NK5 by CARD_1:def 7;then
          len (q|(NK+4)) = NK+4 by A6,AFINSQ_1:54;
          then reconsider Q=q|(NK+4) as NK+4-element XFinSequence of NAT
            by CARD_1:def 7;
          Q.i1 = q.I1 & Q.i2 = q.I2 & Q.i3 = q.I3 & Q.i4 = q.I4 by HILB10_3:4;
          hence thesis by A14,A13;
        end;
        QQ c= GHr
        proof
          let y be object;
          assume y in QQ;
          then consider q be NK+4-element XFinSequence of NAT such that
A15:        y=q & T[q.i1,q.i2,q.i3,q.i4];
          Product (((q.i1) + 1)+(-idseq (q.i2)))
            = (q.i2)!*((q.i1) choose (q.i2)) by HILB10_4:23,A15;
          then reconsider P = Product ((q.i1 + 1)+(-idseq (q.i2)))
            as Element of NAT;
          set qP= q^<%P%>;
A16:      len q = NK+4 by CARD_1:def 7;
A17:      qP|(NK+4) = q by A16,AFINSQ_1:57;
          qP.i1 = q.i1 & qP.i2 = q.i2 & qP.i3 = q.i3 by A17,HILB10_3:4;
          then G[qP] & H[qP] by A16,AFINSQ_1:36,A15;
          then qP in GH;
          hence thesis by A15,A17;
        end;
        hence thesis by A10,A11,XBOOLE_0:def 10;
      end;
      set SN = { 1+n+i where i is Nat: i in k};
A18:  SN c= Segm (NK+4)
      proof
        let x be object;assume x in SN;
        then consider i be Nat such that
A19:    x=1+n+i & i in k;
        i in Segm k by A19;
        then i+0 < k+4 by NAT_1:44, XREAL_1:8;
        then 1+n+(i+0) < 1+n+(k +4) by XREAL_1:8;
        hence thesis by A19,NAT_1:44;
      end;
      set PP = {p where p is NK+4-element XFinSequence of NAT:
      for i be Nat st i in SN holds T[p.i,p.i0,p.i2,p.i2]};
      for i2,i3,i4 be Element of NK+4 holds
        {p where p is NK+4-element XFinSequence of NAT:
           for i be Nat st i in SN holds T[p.i,p.i2,p.i3,p.i4]}
      is diophantine Subset of (NK+4) -xtuples_of NAT from SubsetDioph(A5,A18);
      then
A20:    PP is diophantine Subset of (NK+4) -xtuples_of NAT;
      set QQ= {q where q is NK+4-element XFinSequence of NAT:P4[q]};
A21:  QQ c= PP
      proof
        let x be object;
        assume x in QQ;
        then consider p be NK+4-element XFinSequence of NAT such that
A22:      x=p & P4[p];
        for i be Nat st i in SN holds T[p.i,p.i0,p.i2,p.i2]
        proof
          let i be Nat;assume i in SN;
          then ex j be Nat st i=1+n+j & j in k;
          hence T[p.i,p.i0,p.i2,p.i2] by A22;
        end;
        hence thesis by A22;
      end;
      PP c= QQ
      proof
        let x be object;
        assume x in PP;
        then consider p be NK+4-element XFinSequence of NAT such that
        A23:x=p & for i be Nat st i in SN holds T[p.i,p.i0,p.i2,p.i2];
        P4[p]
        proof
          let i such that
A24:        i in k;
          1+n+i in SN by A24;
          hence thesis by A23;
        end;
        hence thesis by A23;
      end;
      hence thesis by A20,XBOOLE_0:def 10,A21;
    end;
    defpred P5[XFinSequence of NAT] means 1 * ($1.i0) > 1 * ($1.ZERO) + 0;
A25: {q where q is NK+4-element XFinSequence of NAT:P5[q]}
       is diophantine Subset of (NK+4) -xtuples_of NAT by HILB10_3:7;
    defpred P6[XFinSequence of NAT] means  1+($1.(i3)+1)*($1.(i1)!) = $1.i2;
A26: {q where q is NK+4-element XFinSequence of NAT:P6[q]}
       is diophantine Subset of (NK+4) -xtuples_of NAT by HILB10_4:33;
    defpred P7[XFinSequence of NAT] means
      $1.i2 = Product (1+(($1.i1)! * idseq (1+ $1.ZERO)));
A27: {q where q is NK+4-element XFinSequence of NAT:P7[q]}
       is diophantine Subset of (NK+4) -xtuples_of NAT by HILB10_4:36;
    reconsider R=p as INT -valued Polynomial of 1+NK,F_Real;
    defpred P8[XFinSequence of NAT] means
      for Y be (1+NK)-element XFinSequence of NAT st Y=<%$1.i3%>^($1|NK) holds
        eval(R,@Y),0 are_congruent_mod $1.i2;
    NK+0 < NK+3 by XREAL_1:8;
    then NK+1<= NK+4 & NK in Segm i3 by XREAL_1:8, NAT_1:44;
    then
A28: {q where q is NK+4-element XFinSequence of NAT:P8[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT by Th15;
    defpred P123[XFinSequence of NAT] means P2[$1] & P3[$1];
A29: {q where q is (NK+4)-element XFinSequence of NAT:P123[q]}
        is diophantine Subset of (NK+4) -xtuples_of NAT
        from HILB10_3:sch 3(A2,A3);
    defpred P1234[XFinSequence of NAT] means P123[$1] & P4[$1];
A30: {q where q is (NK+4)-element XFinSequence of NAT:P1234[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT
      from HILB10_3:sch 3(A29,A4);
    defpred P12345[XFinSequence of NAT] means P1234[$1] & P5[$1];
A31: {q where q is (NK+4)-element XFinSequence of NAT:P12345[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT
      from HILB10_3:sch 3(A30,A25);
    defpred P123456[XFinSequence of NAT] means P12345[$1] & P6[$1];
A32: {q where q is (NK+4)-element XFinSequence of NAT:P123456[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT
      from HILB10_3:sch 3(A31,A26);
    defpred P1234567[XFinSequence of NAT] means P123456[$1] & P7[$1];
A33: {q where q is (NK+4)-element XFinSequence of NAT:P1234567[q]}
      is diophantine Subset of (NK+4) -xtuples_of NAT
      from HILB10_3:sch 3(A32,A27);
    defpred P12345678[XFinSequence of NAT] means P1234567[$1] & P8[$1];
    set X3 ={q where q is (NK+4)-element XFinSequence of NAT:P12345678[q]};
A34: X3 is diophantine Subset of (NK+4) -xtuples_of NAT
      from HILB10_3:sch 3(A33,A28);
    set X2 = {X|(n+1) where X is NK+4-element XFinSequence of NAT:X in X3};
    n+1 <= 1+n+(k+4) by NAT_1:11;then
A35: X2 is diophantine Subset of (n+1) -xtuples_of NAT by A34,HILB10_3:5;
    defpred S[XFinSequence of NAT] means
      for z be Element of NAT  st z <= $1.0
        ex y be k-element XFinSequence of NAT st
          for X1 be n-element XFinSequence of NAT st X1=$1/^1 holds
      eval(p,@(<%z,$1.0%>^X1^y)) = 0;
    set X1= {X where X is n+1-element XFinSequence of NAT: S[X]};
    for s be object holds s in X1 iff s in X2
    proof
      let s be object;
      thus s in X1 implies s in X2
      proof
        assume s in X1;
        then consider h be n+1-element XFinSequence of NAT
        such that
A36:      s=h & S[h];
        set X= h/^1;
        len h = n+1 >= 1 by NAT_1:11,CARD_1:def 7;
        then
A37:      len X= n+1-'1 by AFINSQ_2:def 2;
        then
A38:      len X= n by NAT_D:34;
        reconsider X as n-element XFinSequence of NAT
          by A37,NAT_D:34,CARD_1:def 7;
        set x = h.0;
        for z be Element of NAT  st z <= x
          ex y be k-element XFinSequence of NAT st eval(p,@(<%z,x%>^X^y))=0
        proof
          let z be Element of NAT  such that
A39:        z <= x;
          consider y be k-element XFinSequence of NAT such that
A40:        for X1 be n-element XFinSequence of NAT st X1=h/^1 holds
              eval(p,@(<%z,x %>^X1^y)) = 0 by A39,A36;
          eval(p,@(<%z,x %>^X^y)) = 0 by A40;
          hence thesis;
        end;
        then consider Y be k-element XFinSequence of NAT,
                      Z,e,K be Element of NAT such that
A41:       K> x & K >= sum * ((x^2+1) * (Product (1+X))*e)|^Deg and
A42:       for i be Nat st i in k holds Y.i > e and
A43:       e > x and
A44:       1+(Z+1)*(K!) = Product (1+(K! * idseq (x+1))) and
A45:       eval(p,@(<%Z,x%>^X^Y)),0 are_congruent_mod (1+(Z+1)*(K!)) and
A46:       for i be Nat st i in k holds
             Product ((Y.i + 1)+(-idseq e)),0 are_congruent_mod (1+(Z+1)*(K!))
           by Th16;
        set xXY = <%x%>^X^Y, E = <%e%>^<%K%>^<%1+(Z+1)*(K!)%>^<%Z%>;
        set H = xXY^E;
        0 in Segm 1 by NAT_1:44;
        then
A47:    0 in dom <%x%> & len <%x%> =1 &
        dom <%x%> c= dom (<%x%>^X) by AFINSQ_1:21,33;
        then 0 in dom (<%x%>^X) & dom (<%x%>^X) c= dom xXY by AFINSQ_1:21;
        then
A48:    H.0 = xXY.0 by AFINSQ_1:def 3
          .= (<%x%>^X).0 by AFINSQ_1:def 3,A47
          .= <%x%>.0 by AFINSQ_1:def 3,A47;
        H = (<%x%>^(X^Y))^E by AFINSQ_1:27
          .= <%x%>^((X^Y)^E) by AFINSQ_1:27;
        then
A49:    H/^1 = X^Y^E by A47,AFINSQ_2:12
          .= X^(Y^E) by AFINSQ_1:27;
A50:    len xXY = NK by CARD_1:def 7;
        then
A51:      H|NK = xXY by AFINSQ_1:57;
A52:    len E=4 by CARD_1:def 7;
        0 in dom E by AFINSQ_1:66;
        then
A53:    H.(NK+0) = E.0 by A50,AFINSQ_1:def 3
          .= e by AFINSQ_1:45;
        1 in dom E by A52,AFINSQ_1:66;
        then
A54:    H.(NK+1) = E.1 by A50,AFINSQ_1:def 3
          .= K by AFINSQ_1:45;
        2 in dom E by A52,AFINSQ_1:66;
        then
A55:    H.(NK+2) = E.2 by A50,AFINSQ_1:def 3
          .= 1+(Z+1)*(K!) by AFINSQ_1:45;
        3 in dom E by A52,AFINSQ_1:66;
        then
A56:    H.(NK+3) = E.3 by A50,AFINSQ_1:def 3
          .= Z by AFINSQ_1:45;
A57:    for i be Nat st i in k holds H.(1+n+i)=Y.i
        proof
          let i be Nat such that
A58:        i in k;
A59:      len Y = k & len (<%x%>^X)=1+n by CARD_1:def 7;
          then 1+n+i in dom xXY by AFINSQ_1:23,A58;
          hence H.(1+n+i) = xXY.(1+n+i) by AFINSQ_1:def 3
            .= Y.i by A59,A58,AFINSQ_1:def 3;
        end;
A60:    for i be Nat st i in k holds H.(1+n+i) > H.(NK)
        proof
          let i be Nat such that
A61:        i in k;
          H.(1+n+i)=Y.i by A61,A57;
          hence thesis by A53,A42,A61;
        end;
A62:    for Y be 2+n+k-element XFinSequence of NAT st
          Y=<%H.(NK+3)%> ^ (H|NK) holds
            eval(p,@Y),0 are_congruent_mod H.(NK+2)
        proof
          let YY be 2+n+k-element XFinSequence of NAT such that
A63:        YY=<%H.(NK+3)%> ^ (H|NK);
          YY = <%Z%>^(<%x%>^(X^Y)) by A56,AFINSQ_1:27,A51,A63
            .= <%Z%>^<%x%>^(X^Y) by AFINSQ_1:27
            .= <%Z,x%>^X^Y by AFINSQ_1:27;
          hence thesis by A45,A55;
        end;
A64:    for i be Nat st i in k holds
          Product ((H.(1+n+i) + 1)+(-idseq (H.(NK)))),0
            are_congruent_mod  H.(NK+2)
        proof
          let i be Nat such that
A65:        i in k;
          H.(1+n+i) = Y.i by A65,A57;
          hence thesis by A53,A55,A46,A65;
        end;
A66:    P2[H] by A48,A54,A41;
A67:    P3[H] by A48,A49,A38,AFINSQ_1:57,A53,A54,A41;
A68:    P4[H] by A60,A64;
        H in X3 by A66,A67,A68,A53,A43,A56,A48,A54,A55,A44,A62;
        then
A69:    H|(n+1) in X2;
        H|(n+1) = xXY| (n+1) & len (<%x%>^X) = 1+n
          by NAT_1:11,A50,AFINSQ_1:58,CARD_1:def 7;
        then H|(n+1) = <%x%>^X by AFINSQ_1:57;
        hence thesis by A36,A69,NUMERAL2:2;
      end;
      assume s in X2;
      then consider x be NK+4-element XFinSequence of NAT such that
A70:    s = x|(n+1) & x in X3;
      consider H be NK+4-element XFinSequence of NAT such that
A71:    H=x and
A72:    P12345678[H] by A70;
A73:  NK+4>=NK & len H = NK+4 by NAT_1:11,CARD_1:def 7;
      then
A74:    len (H|NK) = NK by AFINSQ_1:54;
      then
A75:    len ((H|NK)/^(n+1)) = NK -'(n+1) by AFINSQ_2:def 2;
      then
A76:    len ((H|NK)/^(n+1)) = k by NAT_D:34;
      reconsider Y = (H|NK)/^(n+1) as k-element XFinSequence of NAT
        by A75,NAT_D:34,CARD_1:def 7;
      reconsider x=H.0, e = H.NK, K = H.(NK+1),Z=H.(NK+3) as Element of NAT;
A77:  len H = NK+3+1 by CARD_1:def 7;
      then len (H/^1) = NK+3+1-'1 by AFINSQ_2:def 2;
      then
A78:  len (H/^1) = NK+3 by NAT_D:34;
      1+k+3+n  >= n by NAT_1:11;
      then len ((H/^1)|n) = n by AFINSQ_1:54,A78;
      then reconsider X = (H/^1)|n as n-element XFinSequence of NAT
        by CARD_1:def 7;
A79:  for i be Nat st i in k holds Y.i = H.(1+n+i)
      proof
        let i be Nat such that
A80:    i in k;
A81:    Y.i = (H|NK).(n+1+i) by A80,A76,AFINSQ_2:def 2;
        i in Segm k by A80;
        then 1+n+i < Segm NK by XREAL_1:8,NAT_1:44;
        hence thesis by A81,NAT_1:44,FUNCT_1:49;
      end;
A82:  for i be Nat st i in k holds Y.i > e
      proof
        let i such that
A83:    i in k;
        Y.i = H.(1+n+i) by A83,A79;
        hence thesis by A83,A72;
      end;
      len <%Z%>=1 by CARD_1:def 7;
      then len (<%Z%> ^ (H|NK)) = 1+NK by A74,AFINSQ_1:17;
      then reconsider ZY = <%Z%> ^ (H|NK) as 2+n+k-element XFinSequence of NAT
        by CARD_1:def 7;
      Segm(n+1) c= Segm(NK) by NAT_1:11,39;then
      (H|NK)|(n+1) = H|(n+1) by RELAT_1:74;
      then
A84:    H|NK = (H|(n+1))^Y;
A85:   (1+1)-'1 = 1 & n+2-'2 = n by NAT_D:34;
      n+1 <= n+1+(k+4) by NAT_1:11;
      then
A86:  (H/^((1+1)-'1))|(n+1+1-'(1+1))=mid(H,1+1,n+1) by A73,AFINSQ_2:15
        .= (H|(n+1))/^(1+1-'1) by AFINSQ_2:def 3;
      A87: H|(n+1) = (H|(n+1)|1)^((H/^1)|n) by A85,A86;
      Segm 1 c= Segm(n+1) by NAT_1:11,39;
      then (H|(n+1)|1) = H|1 by RELAT_1:74
      .= <%H.0%> by NUMERAL2:1;
      then ZY = <%Z%> ^ (<% x %>^(X^Y)) by A84,A87,AFINSQ_1:27
      .=<%Z%> ^ <% x %>^(X^Y) by AFINSQ_1:27
      .= <%Z,x%>^X^Y by AFINSQ_1:27;
      then
A88:   eval(p,@(<%Z,x%>^X^Y)),0 are_congruent_mod (1+(Z+1)*(K!)) by A72;
A89:  for i be Nat st i in k holds
        Product ((Y.i + 1)+(-idseq e)),0 are_congruent_mod (1+(Z+1)*(K!))
        proof
          let i; assume
A90:      i in k; then
          Y.i = H.(n+1+i) by A79;
          hence thesis by A90,A72;
        end;
        n+1 <= n+1+(k+4) by NAT_1:11;
        then len (H|(n+1)) = n+1 by AFINSQ_1:54,A77;
        then reconsider F = H|(n+1) as n+1-element XFinSequence of NAT
          by CARD_1:def 7;
A91:    0 < len F;
        then
A92:    F.0=H.0 by FUNCT_1:47,AFINSQ_1:66;
        for z be Element of NAT  st z <= F.0
          ex y be k-element XFinSequence of NAT st
            for X1 be n-element XFinSequence of NAT st X1=F/^1 holds
          eval(p,@(<%z,F.0%>^X1^y)) = 0
        proof
          let z be Element of NAT such that
A93:        z<=F.0;
          consider y be k-element XFinSequence of NAT such that
A94:        eval(p,@(<%z,x%>^X^y)) = 0 by A93,A92,A89,Th16,A72,A82,A88;
          take y;
          let X1 be n-element XFinSequence of NAT;
          assume X1=F/^1;
          hence thesis by A94,A91,FUNCT_1:47,AFINSQ_1:66,A86,A85;
        end;
        hence thesis by A71,A70;
      end;
      then
A95:  X1 =X2 by TARSKI:2;
      set Y1 = {X/^1 where X is n+1-element XFinSequence of NAT: X in X1};
A96:  Y1 is diophantine Subset of n -xtuples_of NAT by A95,A35,HILB10_4:27;
      for s be object holds s in Y1 iff s in X0
      proof
        let s be object;
        thus s in Y1 implies s in X0
        proof
          assume s in Y1;
          then consider xS be (n+1)-element XFinSequence of NAT such that
A97:      s=xS/^1 & xS in X1;
A98:      ex w be (n+1)-element XFinSequence of NAT st xS = w & S[w]
            by A97;
          len xS=n+1 by CARD_1:def 7;
          then len (xS/^1)=n+1-'1 by AFINSQ_2:def 2;
          then reconsider S=xS/^1 as n-element XFinSequence of NAT
            by NAT_D:34,CARD_1:def 7;
          ex x be Element of NAT st for z be Element of NAT st z <= x
            ex y be k-element XFinSequence of NAT st
              eval(p,@(<%z,x%>^S^y)) = 0
          proof
            take x=xS.0;
            let z be Element of NAT such that
A99:        z <= x;
            consider y be k-element XFinSequence of NAT such that
A100:         for X1 be n-element XFinSequence of NAT st X1=xS/^1 holds
            eval(p,@(<%z,xS.0%>^X1^y)) = 0 by A98,A99;
            eval(p,@(<%z,x%>^S^y)) = 0 by A100;
            hence thesis;
          end;
          hence thesis by A97;
        end;
        assume s in X0;
        then consider S be n-element XFinSequence of NAT such that
A101:     s=S & ex x be Element of NAT st for z be Element of NAT st z <= x
        ex y be k-element XFinSequence of NAT st
        eval(p,@(<%z,x%>^S^y)) = 0;
        consider x be Element of NAT such that
A102:     for z be Element of NAT st z <= x
            ex y be k-element XFinSequence of NAT st
          eval(p,@(<%z,x%>^S^y)) = 0 by A101;
        set xS = <%x%>^S;
A103:   len <%x%> =1 by CARD_1:def 7;
        then
A104:   xS/^1 =S by AFINSQ_2:12;
        S[xS]
        proof
          let z be Element of NAT such that
A105:       z <= xS.0;
A106:     xS.0 = x by AFINSQ_1:35;
          then consider y be k-element XFinSequence of NAT such that
A107:     eval(p,@(<%z,x%>^S^y)) = 0 by A102,A105;
          take y;
          thus thesis by AFINSQ_2:12,A103,A106,A107;
        end;
        then xS in X1;
        hence s in Y1 by A104,A101;
      end;
      hence thesis by A96,TARSKI:2;
end;
