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.K is a field of characteristic 0 with algebraic closure K, and I⊆K[x1,…,xn] is generated by the finite set F. We use the notation of the page: A=K[x1,…,xn]/I, D=dimKA, V(I)={α1,…,αr}⊂Kn, μ(α) the multiplicity, Mv the matrix of multiplication by v in the basis B, and Tr(v)=tr(Mv).
Theorem. If I is zero-dimensional, RUR returns (u,fˉ,g1,gx1,…,gxn) with all polynomials in K[T], u separating, fˉ=∏α∈V(I)(T−u(α)), g1(u(α))=0 and gxi(u(α))/g1(u(α))=αi for every α∈V(I) and every i. So the map t↦(gx1(t)/g1(t),…,gxn(t)/g1(t)) is a bijection from the roots of fˉ to V(I), with inverse α↦u(α). If I is not zero-dimensional, L1 stops with an error. If I=(1), the output is fˉ=1.
Lemma 1 (steps L1 and L2)
G is a Gröbner basis of I 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,j has LM(gk)∣Lij and the pairs (i,k) and (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)⟩, the set B, form a basis of A, and the normal form of f is the unique combination of B congruent to f modulo I. The set B is finite exactly when every variable xi has a power xik among the leading monomials (finiteness theorem, CLO, Chapter 5, Section 3), and B is finite exactly when V(I) is finite. So the error in L1 is raised exactly for ideals that are not zero-dimensional. If 1∈G, then I=(1), B=∅ and V(I)=∅, and the output fˉ=1 has no roots, as required.
Column b of Mi holds the coordinates of the normal form of xib, so Mi is the matrix of multiplication by xi on A. Multiplication gives a ring homomorphism A→EndK(A), v↦Mv. So Mxib′=MiMb′, which is how L3 builds Mb (the set B is closed under division, so b′=b/xi∈B), and Mu=∑iλi−1Mi in L5.
Lemma 2 (Stickelberger)
For every v∈A, the characteristic polynomial of Mv is ∏α∈V(I)(T−v(α))μ(α). In particular Tr(v)=∑αμ(α)v(α).
Proof. The characteristic polynomial does not change when we extend scalars to K, so we work in Aˉ=K[x]/IK[x], which has the same matrices Mv. Since V(I) is finite, IK[x] is the intersection of primary ideals Qα, one for each α∈V(I), with Qα=mα, the maximal ideal of α. Distinct maximal ideals are comaximal, hence so are the Qα, and the Chinese remainder theorem gives Aˉ≅∏αK[x]/Qα. This decomposition is stable under multiplication by v, and μ(α)=dimK[x]/Qα by definition. On the factor at α, v−v(α)∈mα, and mαk⊆Qα for some k, so multiplication by v−v(α) is nilpotent there. Hence multiplication by v on that factor has the single eigenvalue v(α) with algebraic multiplicity μ(α), and the characteristic polynomial of Mv is the product of these. □
Lemma 3 (step L3)
The rank r of the Hermite matrix H=(Tr(bc))b,c∈B equals ∣V(I)∣.
Proof. By Lemma 2 applied to v=ac, the symmetric bilinear form ⟨a,c⟩=Tr(ac) on A⊗K is ∑αμ(α)ℓα(a)ℓα(c), where ℓα(a)=a(α) is evaluation at α, a well-defined linear form on Aˉ since I vanishes at α. The forms ℓα are linearly independent: for distinct points there are polynomials pβ with pβ(α)=1 if α=β and 0 otherwise (products of linear forms that separate the points), so ∑αcαℓα=0 gives cβ=0 when applied to pβ. So the matrix of the form is LTdiag(μ(α))L with L the r×D matrix of the ℓα in the basis B, of rank r, and the μ(α) are nonzero in characteristic 0. So the rank is r. The rank of a matrix with entries in K is the same over K and over K, and L3 computes it by exact elimination. □
Lemma 4 (steps L5 to L8)
For a given λ, L7 returns fˉ=∏c∈u(V(I))(T−c), and L8 exits exactly when u is separating.
Proof. By Lemma 2, the eigenvalues of Mu with algebraic multiplicity are the values u(α), each μ(α) times, and the eigenvalues of Muj are their j-th powers. So sj=tr(Muj)=∑αμ(α)u(α)j are the power sums of the D roots of fu=∏α(T−u(α))μ(α). Newton's identities kek=∑i=1k(−1)i−1ek−isi determine the elementary symmetric functions e1,…,eD of these roots, since k is invertible in characteristic 0, and fu=∑k(−1)kekTD−k. In characteristic 0, f/gcd(f,f′) is the product of (T−c) over the distinct roots c of f. So d is the number of distinct values of u on V(I). This equals r=∣V(I)∣ by Lemma 3 exactly when u takes distinct values at distinct zeros. □
Lemma 5 (termination of L4)
At most (n−1)(2r) values of λ∈{0,1,2,…} give a form u that is not separating, so the loop ends after at most (n−1)(2r)+1≤(n−1)(2D)+1 trials.
Proof. For distinct α,β∈V(I), u(α)−u(β)=∑i=1nλi−1(αi−βi) is a polynomial in λ of degree at most n−1 (with λ0=1 also at λ=0) that is not identically zero, since some αi=βi. It has at most n−1 roots in K. A value of λ fails only if it is a root for some of the (2r) pairs. The integers 0,1,2,… are distinct elements of K in characteristic 0, so among the first (n−1)(2r)+1 of them at least one succeeds. □
Lemma 6 (step L9)
Let u be separating, cα=u(α) and fˉ=∑i=0daiTi with ad=1. Then for every v∈A,
where we put i=d−m and used ∑j=0i−1cjTi−1−j=(Ti−ci)/(T−c). For a root c=cα of fˉ, this is fˉ(T)/(T−cα)=∏β=α(T−cβ), since the cβ are distinct. Second, by Lemma 2 applied to vuj, Tr(vuj)=∑αμ(α)v(α)cαj, and tr(MvMuj) in L9 is this trace by Lemma 1. Exchanging the two finite sums gives the claim. □
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 u is separating and fˉ=∏α(T−u(α)), a product over the r zeros since u is injective on V(I). By Lemma 6, g1 and the gxi are the polynomials of the definition. Evaluating at cα, every term with β in place of α contains the factor cα−cα=0, so
gv(cα)=μ(α)v(α)β=α∏(cα−cβ).
With v=1 this is nonzero, because μ(α)=0 in characteristic 0 and the cβ are distinct. Dividing the case v=xi by the case v=1 gives gxi(cα)/g1(cα)=αi. Every root of fˉ is some cα, and distinct zeros give distinct roots, so the map of the theorem is a bijection with inverse α↦u(α). Finally, all matrices have entries in K, so all traces, fˉ and the gv have coefficients in K. ■