Algorithm Search⌘K

Proofs: Rational univariate representation

These are the human proofs of Rational univariate representation, at full length.

The RUR algorithm returns a rational univariate representation of the zeros full

This proof shows: correctness.

Setting. KK is a field of characteristic 00 with algebraic closure K‾\overline{K}, and I⊆K[x1,…,xn]I \subseteq K[x_1, \ldots, x_n] is generated by the finite set FF. We use the notation of the page: A=K[x1,…,xn]/IA = K[x_1, \ldots, x_n] / I, D=dim⁡KAD = \dim_K A, V(I)={α1,…,αr}⊂K‾nV(I) = \{\alpha_1, \ldots, \alpha_r\} \subset \overline{K}^n, μ(α)\mu(\alpha) the multiplicity, MvM_v the matrix of multiplication by vv in the basis BB, and Tr⁡(v)=tr⁡(Mv)\operatorname{Tr}(v) = \operatorname{tr}(M_v).

Theorem. If II is zero-dimensional, RUR returns (u,fˉ,g1,gx1,…,gxn)(u, \bar f, g_1, g_{x_1}, \ldots, g_{x_n}) with all polynomials in K[T]K[T], uu separating, fˉ=∏α∈V(I)(T−u(α))\bar f = \prod_{\alpha \in V(I)} (T - u(\alpha)), g1(u(α))≠0g_1(u(\alpha)) \ne 0 and gxi(u(α))/g1(u(α))=αig_{x_i}(u(\alpha)) / g_1(u(\alpha)) = \alpha_i for every α∈V(I)\alpha \in V(I) and every ii. So the map t↦(gx1(t)/g1(t),…,gxn(t)/g1(t))t \mapsto (g_{x_1}(t) / g_1(t), \ldots, g_{x_n}(t) / g_1(t)) is a bijection from the roots of fˉ\bar f to V(I)V(I), with inverse α↦u(α)\alpha \mapsto u(\alpha). If II is not zero-dimensional, L1 stops with an error. If I=(1)I = (1), the output is fˉ=1\bar f = 1.

Lemma 1 (steps L1 and L2)

GG is a Gröbner basis of II by Buchberger's theorem: the loop treats every pair or removes it by the coprime criterion or by Buchberger's chain criterion in the form "some k≠i,jk \ne i, j has LM(gk)∣Lij\mathrm{LM}(g_k) \mid L_{ij} and the pairs (i,k)(i, k) and (j,k)(j, k) are no longer pending", and both criteria keep the conclusion (CLO, Chapter 2, Section 10). The selection order does not matter for correctness. Interreduction and scaling give the reduced basis.

By the theory of Gröbner bases, the monomials not in ⟨LM(G)⟩\langle \mathrm{LM}(G) \rangle, the set BB, form a basis of AA, and the normal form of ff is the unique combination of BB congruent to ff modulo II. The set BB is finite exactly when every variable xix_i has a power xikx_i^{k} among the leading monomials (finiteness theorem, CLO, Chapter 5, Section 3), and BB is finite exactly when V(I)V(I) is finite. So the error in L1 is raised exactly for ideals that are not zero-dimensional. If 1∈G1 \in G, then I=(1)I = (1), B=∅B = \emptyset and V(I)=∅V(I) = \emptyset, and the output fˉ=1\bar f = 1 has no roots, as required.

Column bb of MiM_i holds the coordinates of the normal form of xibx_i b, so MiM_i is the matrix of multiplication by xix_i on AA. Multiplication gives a ring homomorphism A→End⁡K(A)A \to \operatorname{End}_K(A), v↦Mvv \mapsto M_v. So Mxib′=MiMb′M_{x_i b'} = M_i M_{b'}, which is how L3 builds MbM_b (the set BB is closed under division, so b′=b/xi∈Bb' = b / x_i \in B), and Mu=∑iλi−1MiM_u = \sum_i \lambda^{i-1} M_i in L5.

Lemma 2 (Stickelberger)

For every v∈Av \in A, the characteristic polynomial of MvM_v is ∏α∈V(I)(T−v(α))μ(α)\prod_{\alpha \in V(I)} (T - v(\alpha))^{\mu(\alpha)}. In particular Tr⁡(v)=∑αμ(α) v(α)\operatorname{Tr}(v) = \sum_\alpha \mu(\alpha)\, v(\alpha).

Proof. The characteristic polynomial does not change when we extend scalars to K‾\overline{K}, so we work in Aˉ=K‾[x]/IK‾[x]\bar A = \overline{K}[x] / I \overline{K}[x], which has the same matrices MvM_v. Since V(I)V(I) is finite, IK‾[x]I \overline{K}[x] is the intersection of primary ideals QαQ_\alpha, one for each α∈V(I)\alpha \in V(I), with Qα=mα\sqrt{Q_\alpha} = \mathfrak{m}_\alpha, the maximal ideal of α\alpha. Distinct maximal ideals are comaximal, hence so are the QαQ_\alpha, and the Chinese remainder theorem gives Aˉ≅∏αK‾[x]/Qα\bar A \cong \prod_\alpha \overline{K}[x] / Q_\alpha. This decomposition is stable under multiplication by vv, and μ(α)=dim⁡K‾[x]/Qα\mu(\alpha) = \dim \overline{K}[x] / Q_\alpha by definition. On the factor at α\alpha, v−v(α)∈mαv - v(\alpha) \in \mathfrak{m}_\alpha, and mαk⊆Qα\mathfrak{m}_\alpha^k \subseteq Q_\alpha for some kk, so multiplication by v−v(α)v - v(\alpha) is nilpotent there. Hence multiplication by vv on that factor has the single eigenvalue v(α)v(\alpha) with algebraic multiplicity μ(α)\mu(\alpha), and the characteristic polynomial of MvM_v is the product of these. □\square

Lemma 3 (step L3)

The rank rr of the Hermite matrix H=(Tr⁡(bc))b,c∈BH = (\operatorname{Tr}(b c))_{b, c \in B} equals ∣V(I)∣|V(I)|.

Proof. By Lemma 2 applied to v=acv = ac, the symmetric bilinear form ⟨a,c⟩=Tr⁡(ac)\langle a, c \rangle = \operatorname{Tr}(ac) on A⊗K‾A \otimes \overline{K} is ∑αμ(α) ℓα(a) ℓα(c)\sum_\alpha \mu(\alpha)\, \ell_\alpha(a)\, \ell_\alpha(c), where ℓα(a)=a(α)\ell_\alpha(a) = a(\alpha) is evaluation at α\alpha, a well-defined linear form on Aˉ\bar A since II vanishes at α\alpha. The forms ℓα\ell_\alpha are linearly independent: for distinct points there are polynomials pβp_\beta with pβ(α)=1p_\beta(\alpha) = 1 if α=β\alpha = \beta and 00 otherwise (products of linear forms that separate the points), so ∑αcαℓα=0\sum_\alpha c_\alpha \ell_\alpha = 0 gives cβ=0c_\beta = 0 when applied to pβp_\beta. So the matrix of the form is LTdiag⁡(μ(α))LL^{\mathsf T} \operatorname{diag}(\mu(\alpha)) L with LL the r×Dr \times D matrix of the ℓα\ell_\alpha in the basis BB, of rank rr, and the μ(α)\mu(\alpha) are nonzero in characteristic 00. So the rank is rr. The rank of a matrix with entries in KK is the same over KK and over K‾\overline{K}, and L3 computes it by exact elimination. □\square

Lemma 4 (steps L5 to L8)

For a given λ\lambda, L7 returns fˉ=∏c∈u(V(I))(T−c)\bar f = \prod_{c \in u(V(I))} (T - c), and L8 exits exactly when uu is separating.

Proof. By Lemma 2, the eigenvalues of MuM_u with algebraic multiplicity are the values u(α)u(\alpha), each μ(α)\mu(\alpha) times, and the eigenvalues of MujM_u^j are their jj-th powers. So sj=tr⁡(Muj)=∑αμ(α)u(α)js_j = \operatorname{tr}(M_u^j) = \sum_\alpha \mu(\alpha) u(\alpha)^j are the power sums of the DD roots of fu=∏α(T−u(α))μ(α)f_u = \prod_\alpha (T - u(\alpha))^{\mu(\alpha)}. Newton's identities kek=∑i=1k(−1)i−1ek−isik e_k = \sum_{i=1}^{k} (-1)^{i-1} e_{k-i} s_i determine the elementary symmetric functions e1,…,eDe_1, \ldots, e_D of these roots, since kk is invertible in characteristic 00, and fu=∑k(−1)kekTD−kf_u = \sum_k (-1)^k e_k T^{D-k}. In characteristic 00, f/gcd⁡(f,f′)f / \gcd(f, f') is the product of (T−c)(T - c) over the distinct roots cc of ff. So dd is the number of distinct values of uu on V(I)V(I). This equals r=∣V(I)∣r = |V(I)| by Lemma 3 exactly when uu takes distinct values at distinct zeros. □\square

Lemma 5 (termination of L4)

At most (n−1)(r2)(n - 1) \binom{r}{2} values of λ∈{0,1,2,…}\lambda \in \{0, 1, 2, \ldots\} give a form uu that is not separating, so the loop ends after at most (n−1)(r2)+1≤(n−1)(D2)+1(n - 1) \binom{r}{2} + 1 \le (n - 1) \binom{D}{2} + 1 trials.

Proof. For distinct α,β∈V(I)\alpha, \beta \in V(I), u(α)−u(β)=∑i=1nλi−1(αi−βi)u(\alpha) - u(\beta) = \sum_{i=1}^{n} \lambda^{i-1} (\alpha_i - \beta_i) is a polynomial in λ\lambda of degree at most n−1n - 1 (with λ0=1\lambda^0 = 1 also at λ=0\lambda = 0) that is not identically zero, since some αi≠βi\alpha_i \ne \beta_i. It has at most n−1n - 1 roots in K‾\overline{K}. A value of λ\lambda fails only if it is a root for some of the (r2)\binom{r}{2} pairs. The integers 0,1,2,…0, 1, 2, \ldots are distinct elements of KK in characteristic 00, so among the first (n−1)(r2)+1(n - 1) \binom{r}{2} + 1 of them at least one succeeds. □\square

Lemma 6 (step L9)

Let uu be separating, cα=u(α)c_\alpha = u(\alpha) and fˉ=∑i=0daiTi\bar f = \sum_{i=0}^{d} a_i T^i with ad=1a_d = 1. Then for every v∈Av \in A,

∑j=0d−1Tr⁡(vuj) Hd−1−j(T)=∑αμ(α) v(α)∏β≠α(T−cβ)=gv(T).\sum_{j=0}^{d-1} \operatorname{Tr}(v u^j)\, H_{d-1-j}(T) = \sum_{\alpha} \mu(\alpha)\, v(\alpha) \prod_{\beta \ne \alpha} (T - c_\beta) = g_v(T).

Proof. First, for every cc,

∑j=0d−1cjHd−1−j(T)=∑j=0d−1cj∑m=0d−1−jad−mTd−1−j−m=∑i=1dai∑j=0i−1cjTi−1−j=fˉ(T)−fˉ(c)T−c,\sum_{j=0}^{d-1} c^j H_{d-1-j}(T) = \sum_{j=0}^{d-1} c^j \sum_{m=0}^{d-1-j} a_{d-m} T^{d-1-j-m} = \sum_{i=1}^{d} a_i \sum_{j=0}^{i-1} c^j T^{i-1-j} = \frac{\bar f(T) - \bar f(c)}{T - c},

where we put i=d−mi = d - m and used ∑j=0i−1cjTi−1−j=(Ti−ci)/(T−c)\sum_{j=0}^{i-1} c^j T^{i-1-j} = (T^i - c^i)/(T - c). For a root c=cαc = c_\alpha of fˉ\bar f, this is fˉ(T)/(T−cα)=∏β≠α(T−cβ)\bar f(T) / (T - c_\alpha) = \prod_{\beta \ne \alpha} (T - c_\beta), since the cβc_\beta are distinct. Second, by Lemma 2 applied to vujv u^j, Tr⁡(vuj)=∑αμ(α)v(α)cαj\operatorname{Tr}(v u^j) = \sum_\alpha \mu(\alpha) v(\alpha) c_\alpha^j, and tr⁡(MvMuj)\operatorname{tr}(M_v M_u^j) in L9 is this trace by Lemma 1. Exchanging the two finite sums gives the claim. □\square

Proof of the theorem

By Lemma 1, L1 and L2 are correct, and the cases of the unit ideal and of ideals that are not zero-dimensional are handled. By Lemma 5 the loop ends, and by Lemma 4 the final uu is separating and fˉ=∏α(T−u(α))\bar f = \prod_\alpha (T - u(\alpha)), a product over the rr zeros since uu is injective on V(I)V(I). By Lemma 6, g1g_1 and the gxig_{x_i} are the polynomials of the definition. Evaluating at cαc_\alpha, every term with β\beta in place of α\alpha contains the factor cα−cα=0c_\alpha - c_\alpha = 0, so

gv(cα)=μ(α) v(α)∏β≠α(cα−cβ).g_v(c_\alpha) = \mu(\alpha)\, v(\alpha) \prod_{\beta \ne \alpha} (c_\alpha - c_\beta).

With v=1v = 1 this is nonzero, because μ(α)≠0\mu(\alpha) \ne 0 in characteristic 00 and the cβc_\beta are distinct. Dividing the case v=xiv = x_i by the case v=1v = 1 gives gxi(cα)/g1(cα)=αig_{x_i}(c_\alpha) / g_1(c_\alpha) = \alpha_i. Every root of fˉ\bar f is some cαc_\alpha, and distinct zeros give distinct roots, so the map of the theorem is a bijection with inverse α↦u(α)\alpha \mapsto u(\alpha). Finally, all matrices have entries in KK, so all traces, fˉ\bar f and the gvg_v have coefficients in KK. ■\blacksquare

Back to Rational univariate representation