Genericity conditions

With the same notation and assumption as in Section~#444#1239> we are now discussing the genericity conditions; we therefore begin with

for #math207##tex2html_wrap_inline4964#.

The computation we sketched in Section~#444#1252> and discussed in the next Sections returns a lifting fiber of #math208##tex2html_wrap_inline4968# for the lifting point #math209#(p1,…, pδ-1) and the primitive element #math210#λδZδ + λδ+1Zδ+1 + ... + λrZr provided the following conditions hold:

We need moreover three further assumptions:

  1. #math219#{Z0,…, Zr} is in Noether position for each homogeneous ideal #math220#h#tex2html_wrap_inline5002#⊂K[Z0,…, Zr];
  2. #math221#pδ is lucky for the truncated computation;
  3. U and #math222#λδ are lucky for the resultant computation of Remark~#R441#1288>.

In fact

  1. consider, as an example, the 1-dimensional prime ideal #tex2html_wrap_inline5007#p generated by #math223#f (Z1, Z2) : = Z12 - Z2K[Z1, Z2]. While the variables are in Noether position, any specialization of Z1 returns a single point, notwithstanding #math224#deg(f )= 2.

    On the otherside, this does not happen for a really generic frame of coordinates: if we perform a generic change of coordinates obtaining

    #math225#

    f (Y1, Y2) : = d112Y12 + d11d12Y1Y2 + d122Y22 - d21Y1 + d22Y2

    each evaluation of Y1 returns two points.

    More in general we need to avoid a degeneration in which

    #math226#

    deg(f (p1,…, pδ, Zδ+1,…, Zr) ;SPMlt; deg(f );

    this cannot occur if #math227#{Z0, Z1,…, Zr} is in Noether position for the homogeneous ideal #math228#h#tex2html_wrap_inline5018#;
  2. gcd and resultant computation of polynomials have good complexity if performed over L[T] where L is a field, but this implies the ability of performing zero-testing and inverting, which is out of the present model.

    The computation, e.g., of the resultant

    #math229#

    A(Zδ) : = #tex2html_wrap_indisplay5023#(Q, f (Zδ, Vδ+1,…, Vr)

    which satisfies #math230#deg(A)≤η : = deg(#tex2html_wrap_inline5027#))deg(f ) costs

    #math231#

    #tex2html_wrap_indisplay5029#(η) : = #tex2html_wrap_indisplay5030#O(ηlog2(η)loglog(η))

    arithmetical operations in #math232#K(Zδ) if it is performed in this <#1306#>field<#1306#> where we don't have a good complexity model for zero-testing and inverting; the result of this computation gives a polynomial #math233#A(Zδ)∈K[Zδ] of degree η.

    Let us now fix a value pK and, remarking that #math234#K(Zδ)⊂K[[Zδ]], consider the <#1307#>ring<#1307#>

    #math235#

    R : = K[[Zδ]]/(Zδ - p)η+1#tex2html_wrap_indisplay5037#{1,…, Zδη}

    where we can perform both
    • zero-testing: an element #math236#g = #tex2html_wrap_inline5039#ciZδtR is zero iff ci = 0 for each i iff g(p) = 0,
    • inverting : the inverse in R of the invertible polynomial g, #math237#g(p)≠ 0, is the polynomial #math238#s(Zδ), deg(s)≤η which satisfies

      #math239#

      s(Zδ)g(Zδ) + t(Zδ)(Zδ - p)η+1 = gcd(g(Zδ),(Zδ - p)η+1 = 1

      for a suitable #math240#t(Zδ), deg(t) ;SPMlt; deg(g).

    Thus any element

    #math241#

    g(Zδ) : = d (Zδ)/r(Zδ)∈K(Zδ), d (Zδ), r(Zδ)∈K[Zδ]

    can be canonically represented by an element #math242##tex2html_wrap_inline5051#∈#tex2html_wrap_inline5052#{1,…, Zδη} such that #math243##tex2html_wrap_inline5054#(Zδ)r(Zδ)≡d (Zδ) mod(Zδ-p)η+1.

    Thus the same algorithm which, if performed on #math244#K(Zδ), resturns #math245#A(Zδ) with complexity #math246##tex2html_wrap_inline5058#(η) can be performed also on R with the same complexity #math247##tex2html_wrap_inline5061#(η) returning some polynomial #math248#B(Zδ) : = #tex2html_wrap_inline5063#ciZδtK[Zδ] of degree bounded by η.

    Can we assume that such polynomial #math249#B(Zδ) is the <#1324#>true<#1324#> resultant #math250#A(Zδ), i.e. that #math251#B(Zδ) = #tex2html_wrap_inline5068#(Zδ) = A(Zδ)? The answer is obvious: the solution is correct iff in each step of the computation, the algorithm in R gives the same answer as the algorithm in #math252#K(Zδ), <#1326#>id est<#1326#>

    • when zero-testing #math253#g(Zδ)∈K(Zδ), #math254#g = 0#tex2html_wrap_inline5073##tex2html_wrap_inline5074#(p) = 0,
    • when computing the inverse #math255#h(Zδ) : = g-1(Zδ) of #math256#g(Zδ)∈K(Zδ), the polynomial #math257#s(Zδ) such that #math258#s(Zδ)#tex2html_wrap_inline5079#(Zδ)≡1 mod(Zδ-p)η+1 satisfies #math259#s = #tex2html_wrap_inline5081#.

    This behavieur depends on the choice of pK; there are some values p in which some wrong answer is returned failing this approach; but almost all choices are ;SPMquot;lucky;SPMquot; thus allowing to produce the correct answer #math260#B(Zδ) = #tex2html_wrap_inline5085#(Zδ) = A(Zδ) with the good #math261##tex2html_wrap_inline5087#(η) complexity while computing in the ring R instead than in the field #math262#K(Zδ).

  3. In a similar way a better complexity is obtained if the computation (see Remark~#R441#1337>) of the resultant #math263#A(Z)∈K[Z] of the polynomials #math264##tex2html_wrap_inline5092#(Z, T) and #math265#f (λδ-1(Z - T),#tex2html_wrap_inline5094#(Z, T),…,#tex2html_wrap_inline5095#(Z, T)) in K[Z][T] can be performed with the ring arithmetics of K[Z] instead of the field arithmetics of K(Z). Such ability depends on a lucky choice of the Liouville point #math266#λδ and of the primitive U.