Computing critical points for invariant algebraic systems
Jean-Charles Faugère, George Labahn, Mohab Safey El Din, Éric Schost, Thi Xuan Vu
CComputing critical points for invariant algebraic systems
Jean-Charles Faug`ere ∗ , George Labahn † ,Mohab Safey El Din ‡ , ´Eric Schost † , Thi Xuan Vu ∗‡ Abstract
Let K be a field and φ , f = ( f , . . . , f s ) in K [ x , . . . , x n ] be multivariate polynomials(with s < n ) invariant under the action of S n , the group of permutations of { , . . . , n } .We consider the problem of computing the points at which f vanish and the Jacobianmatrix associated to f , φ is rank deficient provided that this set is finite.We exploit the invariance properties of the input to split the solution space accord-ing to the orbits of S n . This allows us to design an algorithm which gives a triangulardescription of the solution space and which runs in time polynomial in d s , (cid:0) n + dd (cid:1) and (cid:0) ns +1 (cid:1) where d is the maximum degree of the input polynomials. When d, s are fixed,this is polynomial in n while when s is fixed and d (cid:39) n this yields an exponentialspeed-up with respect to the usual polynomial system solving algorithms. Our main motivation in this paper is the problem of finding the critical points of a polynomialmap φ restricted to an algebraic set V ( f ), where f = ( f , . . . , f s ) and φ come from themultivariate polynomial ring K [ x , . . . , x n ], with K a field of characteristic zero. The problemof computing such points appears in many application areas including for example polynomialoptimization and real algebraic geometry.In our case we consider the closely related problem of computing a description of the set W ( φ, f ) defined by the following equations: (cid:104) f , . . . , f s (cid:105) + (cid:104) M s +1 (Jac( f , φ )) (cid:105) (1)where, Jac( f , φ ) is the Jacobian matrix of ( f , . . . , f s , φ ) with respect to ( x , . . . , x n ), and M r ( G ) denotes the set of all r -minors of a matrix G . If we assume that the Jacobian matrix ∗ Inria, Sorbonne Universit´e, CNRS, Laboratoire d’Informatique de Paris 6, ´Equipe PolSys, CryptoNextSecurity, 4 place Jussieu, F-75252, Paris Cedex 05, France, email:[email protected]. † Cheriton School of Computer Science, University of Waterloo, Waterloo ON, Canada N2L 3G1,emails: { glabahn, eschost, txvu } @uwaterloo.ca. ‡ Sorbonne Universit´e, CNRS, Laboratoire d’Informatique de Paris 6, ´Equipe PolSys, 4 place Jussieu,F-75252, Paris Cedex 05, France, email:[email protected]. a r X i v : . [ c s . S C ] S e p ac( f ) has full rank s at any point of V ( f ), then, the Jacobian criterion [11, Theorem 16.19]implies that the algebraic set V ( f ) is smooth and ( n − s )-equidimensional, and that W ( φ, f )is indeed the set of critical points of φ on V ( f ).When φ is linear, there exist algorithms for determining critical points using d O ( n ) oper-ations in K [2, Section 14.2]. More precisely, using Gr¨obner basis techniques, the paper [16,Corollary 3] establishs that, if the polynomials f , . . . , f s are generic enough of degree d , thenthis computation can be done using O (cid:16)(cid:18) n + D reg n (cid:19) ω + n (cid:18) d s ( d − n − s (cid:18) n − s − (cid:19)(cid:19) (cid:17) operations in K . Here D reg = d ( s −
1) + ( d − n + 2, and ω is the exponent of multiplyingtwo ( n × n )-matrices with coefficients in K (see [40] for a generalization to systems withmixed degrees).In this paper, we consider the important case where the polynomials f , . . . , f s and φ areall invariant under the action of the symmetric group S n . As we will show later, the set W ( φ, f ) is then also invariant under S n .There has been considerable work on solving symmetric algebraic systems. Indeed, whileit is always possible to compute the Gr¨obner basis of a set of symmetric polynomials, symme-tries of the initial system are lost during the computation. In [7], for a finite symmetry group,Colin proposed to use primary and secondary invariants [41] to reformulate the problem. Forthe particular case of S n -invariant equations, in [15], the authors compute a SAGBI-Gr¨obnerbasis in the ring K [ e , . . . , e n ], where e i is a variable corresponding to i -th elementary sym-metric polynomial η i in ( x , . . . , x n ). However, even if f , . . . , f s and φ are S n -invariant, theequations in (1) are usually not invariant, so these technique cannot be directly applied toour problem.It is possible to prove that the system of equations in (1) is globally invariant : for all σ ∈ S n , and any g among either f , . . . , f s or the ( s + 1)-minors of Jac( f , φ ), either σ ( g ) or − σ ( g ) belongs again to the same set of equations. This implies that W ( φ, f ) is S n -invariant,as we claimed above. As an example, with n = 3 and s = 1, in order to determine the criticalpoints of φ = x x x − x − x − x over the sphere defined by f = x + x + x −
6, onehas to solve the globally invariant set of equations defined by { f = 0 , x x − x x − x +3 x = 0 , x x − x x − x +3 x = 0 , x x − x x − x +3 x = 0 } . For such systems, following [14], the authors in [17] used divided differences to construct anew system which is S n -invariant. Our work is inspired by this reference, but the specifictype of the equations that we solve, involving minors of a Jacobian matrix, requires us toextend the work from [17] (in addition, no complexity analysis is given in that reference).The global invariance property allows us to split the set W = W ( φ, f ) into orbits underthe action of the symmetric group. The size of the orbit of a point in W will depend on thenumber of pairwise distinct coordinates of that point. For example, for f and φ as above, thepoints (2 , , , (0 , √ , √ , ( − , − , −
1) are solutions with three elements in their respective S -orbits, while the point ( √ , √ , √
2) is also a solution, with only one point in its orbit2this is the whole decomposition of W into orbits). To devise a fast algorithm, the differentsizes of orbits needs to be taken into consideration. This phenomenon is to be expected forsystems such as (1), but is not discussed for the particular family of equations in [17] (onthe other hand, that reference takes into consideration further properties of the family ofequations considered therein).The structure of these orbits is determined by the number of pairwise distinct coordinatesof the points they contain. To study them, we make use of partitions of n . A sequence λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ), with the (cid:96) i and n i positive integers and n < · · · < n r , is called a partition of n if n (cid:96) + n (cid:96) + · · · + n r (cid:96) r = n . Partitions of n will be used to parameterizeorbits, with λ as above parameterizing those points in W having (cid:96) distinct sets of n equalcoordinates, (cid:96) distinct sets of n equal coordinates and so on. We will write W λ for the setof such orbits contained in W , so that W is the disjoint union of all W λ , for all partitions λ of n .For instance, for the φ and f mentioned previously, our algorithm will determine thatthe set W (1 ) of orbits parameterized by λ = (1 ), which corresponds to the orbits with alldistinct coordinates ( ξ , ξ , ξ ), is equal to the zero set of( f, − , − x + x + x ) , x + x + x ) + 8( x x + x x + x x ) − W (1 ) is empty, as we saw above). The set W (1 ) of orbits parameterized by λ = (1 ), that is, orbits of points of the form ( ξ , ξ , ξ ), with ξ (cid:54) = ξ , is the orbit of thezero set of ( x + 2 x − , x + x x − , x − x ) , where the first component is f restricted to the hyperplane x = x . In particular, W (1 ) is the union of the orbits of the points (2 , , , (0 , √ , √ , ( − , − , −
1) seen above.In this paper we provide a procedure to determine invariant polynomials that describethese S n -orbits. For an orbit parameterized by the partition λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ), we workwith points which have distinct coordinates ( ξ , , . . . , ξ ,(cid:96) , ξ , , . . . , ξ ,(cid:96) , . . . , ξ r, , . . . , ξ r,(cid:96) r ), sothat instead of n coordinates, there are only (cid:96) = (cid:96) + · · · + (cid:96) r distinct coordinates forpoints in this orbit. Then, invariance under of W permutations implies that single distinctpoints are permuted, groups of two points are permuted, etc. This will allow us to workwith polynomials in K [ e , . . . , e r ] = K [ e , , . . . , e ,(cid:96) , e , , . . . , e ,(cid:96) , . . . , e r, , . . . , e r,(cid:96) r ], in orderto represent a certain “compressed” image W (cid:48) λ ⊂ K (cid:96) of W λ ; here, e i, , . . . , e i,(cid:96) i are variablesstanding for the elementary symmetric polynomial in (cid:96) i indeterminates and K is an algebraicclosure of K . In our running example, for λ = (1 ), we have (cid:96) = 2 and W (cid:48) (1 ) is the set { (2 , , (0 , √ , ( − , − } .Throughout the paper, we will assume that W , and thus all W λ and W (cid:48) λ , are finite. Then,for λ as above, the cardinality of W (cid:48) λ is smaller than that of W λ by a factor γ λ = (cid:18) nn , . . . , n , . . . , n r , . . . , n r (cid:19) , where each n i is repeated (cid:96) i times. Altogether, if d is the maximum of the degrees of theinput of polynomials, then we will prove some bounds, which will be denoted by c λ , on the3ardinality of the finite set W (cid:48) λ ; we will see that, in practice, each of the c λ provides anaccurate bound on the cardinality of W (cid:48) λ . The sum of the c λ ’s then gives us an upper boundon the size of the output of our main algorithm. We did not find a closed formula for thissum, but we can prove that it is bounded above by c = d s (cid:18) n + d − n (cid:19) . (2)We will see that, in practice, this is a rather rough upper bound but in several cases, itcompares well to the upper bound ˜ c = d s ( d − n − s (cid:18) ns (cid:19) (3)from Nie and Ranestad [34, Theorem 2.2] on the size of W . For example, when d = 2, wehave c = 2 s ( n + 1) while ˜ c = 2 s (cid:0) ns (cid:1) . More generally, when d and s are fixed, c is polynomialin n (since it is bounded above by d s ( n + d − d ) while ˜ c is exponential in n (since it isgreater than ( d − n ). When s is fixed and d = n , c is n O (1) n , whereas ˜ c is n O (1) ( n − n − s .In view of this discussion, our algorithm will naturally compute descriptions of the sets W (cid:48) λ rather than W λ (we will also explain how one would recover the later knowing theformer). There are a number of ways to represent algebraic sets; in our case we makeuse of a representation based on univariate polynomials. In particular, if Y ⊂ K m is azero-dimensional variety defined by polynomials in K [ z , . . . , z m ], then a zero-dimensionalparametrization R = (( q, v , . . . , v m ) , µ ) of Y consists of(i) a squarefree polynomial q in K [ y ], with y a new indeterminate and deg( q ) = | Y | ,(ii) polynomials ( v , . . . , v m ) in K [ y ] with deg( v i ) < deg( q ) for all i , and satisfying Y = { ( v ( τ ) , . . . , v m ( τ )) ∈ K m | q ( τ ) = 0 } ,(iii) a vector µ = ( µ , . . . , µ m ) in K m such that µ v + · · · + µ m v m = y .When these conditions hold, we write Y = Z ( R ).The last condition says that the roots of q are the values taken by the linear form µ z + · · · + µ m z m on Y . In particular, this linear form takes pairwise distinct values onthe points of Y . This representation was first introduced in the works of Kronecker andK¨onig [30] and has been widely used in computer algebra [1, 19, 20, 21, 22, 38]. The outputof our algorithm will thus be a collection of zero-dimensional parameterizations, one for eachof the sets W (cid:48) λ ; we will call such a data structure a symmetric representation of W (precisedefinitions are in Section 2).However, rather than using Gr¨obner bases to compute such descriptions, we will use a symbolic homotopy continuation , so as to control precisely the cost of the algorithm. Homo-topy continuation has become a foundational tool for numerical algorithms while the use ofsymbolic homotopy continuation algorithms is more recent. Such algorithms first appearedin [5, 25], for general inputs, and later for sparse [29, 26, 27, 28] and multi-homogeneoussystems [39, 24, 23]. 4n our case we can make use of a recent sparse symbolic homotopy method given in [31]specifically designed to handle determinantal systems over weighted polynomial rings, thatis, multivariate polynomial rings where each variable has a weighted degree, which is apositive integer. These domains arise naturally for our orbits: the domain arising from anorbit parameter λ has variables e i,k which are defined corresponding to elementary symmetricpolynomials η i,k ; since η i,k has degree k , the variable e i,k will naturally be assigned weight k . Theorem 1.1.
Suppose f = ( f , . . . , f s ) and φ are S n -invariant polynomials in K [ x , . . . , x n ] ,with degree at most d ≥ , and suppose that W = W ( φ, f ) is finite. There exists a random-ized algorithm that takes f , φ as input and outputs a symmetric representation for the set W ,and whose runtime is polynomial in d s , (cid:0) n + dd (cid:1) , (cid:0) ns +1 (cid:1) . The total number of points describedby the output is at most d s (cid:0) n + d − n (cid:1) . Note that the runtime is polynomial in the bound we give on the output size, as well as thenumber (cid:0) ns +1 (cid:1) of maximal minors in the matrix Jac( f , φ ). Section 4 gives a more preciseestimate on the runtime of the algorithm.We use standard notions and notations of commutative algebra and algebraic geometrywhich can be found for example in [8, 11]. We will assume that the reader is familiar withconcepts such as dimension , Zariski topology , equidimensional algebraic set and the degree ofan algebraic set, with definitions found in [8, 11].The remainder of the paper is organized as follows. In the next section, we provide severalproperties of invariant polynomials and discuss in detail the sets W λ and W (cid:48) λ mentionedabove. Section 3 contains our main algorithm, called Critical Points Per Orbit and includesa proof of correctness. The runtime of this algorithm is analysed in Section 4, finishingthe proof of Theorem 1.1. Experiments to validate our new algorithm is given in Section 5followed by a section which gives topics for future research. The latter section also includesa discussion on how our results can decide emptiness of S n -invariant algebraic sets over areal field. The appendices include a proof of two technical propositions. S n -invariants One of our key observations, formalized in the next section, is that the special nature of ourset of critical points allows us to split W ( φ, f ) into subsystems defined by the orbits of thesymmetric group S n .More precisely, in this paper an orbit is a set of the form S n ( ξ ), for some point ξ in K n ,that is, it is the set of all S n -conjugates of ξ . As mentioned in the introduction, the size ofan orbit S n ( ξ ) will depend on the number of pairwise distinct coordinates of ξ . For example,with n = 3, a point of the form ( ξ , ξ , ξ ) will have an orbit of size 3, unless we have ξ = ξ (in which case the orbit has size 1).As a result, we need to consider the separation of distinct coordinates in an orbit, whichis what we do in this section. We do this through a discussion of the geometry of (finite) S n -invariant subsets of K n and the data structures we can use to represent them. Much ofwhat follows is preliminary for our description of orbits presented in the next section.5 .1 Partitions Partitions play a major role in describing our orbits. In this subsection, we gather the basicdefinitions of partitions and of a few notions attached to them, which will be used throughoutthis section.A sequence λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ), with (cid:96) i ’s and n i ’s positive integers and n < · · · < n r ,is called a partition of n , sometimes denoted by λ (cid:96) n , if n (cid:96) + n (cid:96) + · · · + n r (cid:96) r = n . Thenumber (cid:96) = (cid:80) ri =1 (cid:96) i is called the length of the partition λ . We remark that to a partitionsuch as λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) we can associate (in a one-to-one manner) the ordered list( n , . . . , n , . . . , n r , . . . , n r ), with each n i repeated (cid:96) i times.We will make use of the refinement order on partitions. To describe this we first need todefine the union of partitions: if λ and λ (cid:48) are partitions of a and a (cid:48) , respectively, then λ ∪ λ (cid:48) is the partition of a + a (cid:48) whose ordered list is obtained by merging those of λ and λ (cid:48) . Then,consider two partitions λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) and λ (cid:48) = ( m k m k . . . m k s s ) of the same integer n . As in [33, p. 103] (or e.g. [3, p. 16]), we write λ ≤ λ (cid:48) , and we say that λ refines λ (cid:48) , if λ isthe union of some partitions ( λ i,j ) ≤ i ≤ s, ≤ j ≤ k i , where λ i,j is a partition of m i for all i, j . Example 2.1.
For the partitions of n = 3 , we have (1 ) ≤ (1 ) ≤ (3 ) . Let λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) be a partition of n having length (cid:96) . For k = 1 , . . . , r , wewill denote by Z k = ( z k, , . . . , z k,(cid:96) k ) a sequence of (cid:96) k indeterminates. When convenient,we will also index the entire sequence of indeterminates ( Z , . . . , Z r ) = ( z , , . . . , z r,(cid:96) r ) as( z , . . . , z (cid:96) ), so that z = z , , . . . , z (cid:96) = z r,(cid:96) r . From this point of view, introducing τ = 0 and τ k = (cid:80) ki =1 (cid:96) i , for k = 1 , . . . , r , any index i in 1 , . . . , (cid:96) can be written uniquely as i = τ k − + u ,for some k in 1 , . . . , r and u in 1 , . . . , (cid:96) k . Thus, the indeterminates z k, , . . . , z k,(cid:96) k are numbered z τ k − +1 , . . . , z τ k , with τ r = (cid:96) .We will let S λ be the group S λ = S (cid:96) × · · · × S (cid:96) r . S λ acts naturally on K [ Z , . . . , Z r ], and we will denote by K [ Z , . . . , Z r ] S λ the K -algebra of S λ -invariant polynomials. Note that S λ can be seen as a subgroup of the permutation group S (cid:96) of { , . . . , (cid:96) } , where S (cid:96) acts on the first (cid:96) indices, S (cid:96) acts on the next (cid:96) ones, etc.Finally, for i = 1 , . . . , r , we will let η i = ( η i, , . . . , η i,(cid:96) i ) denote the vector of elementarysymmetric polynomials in variables Z i , where η i,j has degree j for all i, j . S λ -invariant polynomials: the Symmetric Coordinates algorithm
Let λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) be a partition of n having length (cid:96) , and, for i = 1 , . . . , r , let e i = ( e i, , . . . , e i,(cid:96) i ) be a set of (cid:96) i new variables. Then, by the fundamental theorem ofsymmetric polynomials [9, Theorem 3.10.1], for any f in K [ Z , . . . , Z r ] S λ , there exists aunique ¯ f in K [ e , . . . , e r ] with f ( Z , . . . , Z r ) = ¯ f ( η , . . . , η r ) , (4)for η , . . . , η r as defined in the previous subsection. We will need a quantitative version ofthis existence result, which gives an estimate on the cost of computing ¯ f from f .6 emma 2.2. There exists an algorithm
Symmetric Coordinates ( λ, f ) which, given a partition λ of n and f of degree at most d in K [ Z , . . . , Z r ] S λ , returns ¯ f such that f = ¯ f ( η , . . . , η r ) ,using O ˜( (cid:0) (cid:96) + dd (cid:1) ) operations in K . Proof.
Algorithm
Symmetric Coordinates is a slight generalization of the procedure describedin the proof of Bl¨aser and Jindal’s algorithm [4, Theorem 4], which was written only for thecase of r = 1, and for polynomials represented as straight-line programs.The key to the algorithm is the following. Assume we know an integral domain L containing K [ e , . . . , e r ], and vectors ζ , . . . , ζ r of elements in L , where for each i , ζ i =( ζ i, , . . . , ζ i,(cid:96) i ) ∈ L (cid:96) i are the (cid:96) i pairwise distinct roots of P i ( T ) = T (cid:96) i − ( e i, + ρ i, ) T (cid:96) i − + · · · + ( − (cid:96) i ( e i,(cid:96) i + ρ i,(cid:96) i ) , and where ρ i, , . . . , ρ i,(cid:96) i are the elementary symmetric polynomials evaluated at 1 , . . . , (cid:96) i .Then, ¯ f satisfies ¯ f ( e , + ρ , , . . . , e r,(cid:96) r + ρ r,(cid:96) r ) = f ( ζ , . . . , ζ r ).As in Bl¨aser and Jindal’s algorithm, we take for L a ring of multivariate power series,namely L = K [[ e , . . . , e r ]]. Our construction, involving the shifts by ( ρ , , . . . , ρ r,(cid:96) r ) showsthat at e = · · · = e r = 0, P i ( T ) factors as ( T − · · · ( T − (cid:96) i ).Applying Newton’s iteration, we deduce the existence of the requested power series roots ζ i = ( ζ i, , . . . , ζ i,(cid:96) i ). In order to obtain the polynomial ¯ f , we only need truncations of theseroots at precision d . For i = 1 , . . . , r , we can obtain the truncation of ζ i using O ˜( (cid:96) i (cid:0) (cid:96) i + dd (cid:1) )operations in K , where the factor (cid:0) (cid:96) i + dd (cid:1) accounts for the cost of multivariate power seriesarithmetic [32]. Taking all i ’s into account, this adds up to O ˜( (cid:96) (cid:0) (cid:96) + dd (cid:1) ) arithmetic operations.We then evaluate f at these truncated power series. Since f has degree at most d , thiscan be done using O ( (cid:0) (cid:96) + dd (cid:1) ) (+ , × ) operations on (cid:96) -variate power series truncated in degree d , for a total of O ˜( (cid:0) (cid:96) + dd (cid:1) ) operations in K . This gives us ¯ f ( e , + ρ , , . . . , e r,(cid:96) r + ρ r,(cid:96) r ). Wethen apply the translation ( e i,j ) i,j ← ( e i,j − ρ i,j ) i,j in order to obtain the polynomial ¯ f , alsoat a cost of O ˜( (cid:0) (cid:96) + dd (cid:1) ) operations in K : through successive multiplications, we incrementallycompute the translates of all monomials of degree up to d and then, before combining, usingthe coefficients of ¯ f ( e , + ρ , , . . . , e r,(cid:96) r + ρ r,(cid:96) r ). S λ -equivariant polynomials: the Symmetrize algorithm
As before we let λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) denote a partition of n of length (cid:96) = (cid:80) ri =1 (cid:96) i . Theaim of this subsection is to define S λ -equivariant systems of polynomials and give a detaileddescription of an algorithm, called Symmetrize , that turns an S λ -equivariant system into onewhich is S λ -invariant.Consider a sequence of polynomials q = ( q , . . . , q (cid:96) ) in K [ Z , . . . , Z r ]. We say that q is S λ - equivariant if for any σ in S λ and i in 1 , . . . , (cid:96) , we have σ ( q i ) = q σ ( i ) , or equivalently q ( z σ (1) , . . . , z σ ( (cid:96) ) ) = q σ ( i ) ( z , . . . , z (cid:96) ); Throughout this paper we use O ˜( · ) to indicate that polylogarithmic factors are omitted, that is, f is O ˜( g ) if there exists a constant k such that f is O ( g log k ( g )). S λ as permutations of { , . . . , (cid:96) } , as explainedin Section 2.1.In geometric terms, the zero-set V ( q ) ⊂ K (cid:96) of such a system is S λ -invariant, even thoughthe equations themselves may not be invariant. In what follows, we describe how to deriveequations p = ( p , . . . , p (cid:96) ) that generate the same ideal as q (in a suitable localization of K [ Z , . . . , Z r ]) and are actually S λ -invariant. We will need an assumption, discussed below,that z i − z j divides q i − q j for all pairwise distinct indices i, j . Example 2.3.
Let n = 3 and λ = (1 ) so r = 2 , (cid:96) = 2 , (cid:96) = 1 and (cid:96) = 3 ; we have S λ = S × S . We take q = ( q , q , q ) , where q = z z ( z + z + 2 z ) + z z z ,q = z z ( z + z + 2 z ) + z z z ,q = z z z ( z + z + 2 z ) + z z z . These polynomials satisfy both the equivariance property and the divisibility property. Ourprocedure will produce the following polynomials: p = ( z + z + 2 z ) z ,p = ( z + z + 2 z ) z z + ( z + z + 2 z ) z z ,p = z z z ( z + z + 2 z ) + z z z . The polynomials ( p , p , p ) are symmetric in ( z , z ) and ( z ) , that is, are S × S -invariant.They generate the same ideal as ( q , q , q ) in the localization K [ z , z , z ] ( z − z )( z − z )( z − z ) . In order to construct a set of invariant generators we make use of divided differences of q = ( q , . . . , q (cid:96) ). These are defined as q { i } = q i for i in { , . . . , (cid:96) } , and for each set of k distinct integers I := { i , . . . , i k } ⊂ { , . . . , (cid:96) } , with k ≥ q I = q { i ,...,i r − ,i r +1 ,...,i k } − q { i ,...,i q − ,i q +1 ,...,i k } z i r − z i q , (5)for any choice of i r , i q in I , with i r (cid:54) = i q . Indeed, it is known (see e.g. [17, Theorem 1]) thatthis defines q I unambiguously (independently of the choice of i r , i q ). Another useful propertyof divided differences is the following:(i) if z i − z j divides q i − q j for all 1 ≤ i < j ≤ (cid:96) , then q I is a polynomial for all I ⊂ { , . . . , (cid:96) } .The following proposition then gives our construction of the polynomials p . In what follows,for i ≥ η i ( y , . . . , y s ) denotes the degree i elementary symmetric function in variables y , . . . , y s . Proposition 2.4.
Suppose the sequence q = ( q , . . . , q (cid:96) ) in K [ Z , . . . , Z r ] (cid:96) is S λ -equivariantand satisfies z i − z j divides q i − q j for ≤ i < j ≤ (cid:96) . For ≤ k ≤ r − and ≤ j < (cid:96) k +1 , efine p τ k +1 = τ k +1 (cid:88) i = τ k +1 q { i,τ k +1 +1 ,...,τ r } ,p τ k + j = j (cid:88) s =1 η j − s ( z τ k + s +2 , . . . , z τ k +1 ) (cid:0) τ k + s (cid:88) i = τ k +1 q { i,τ k + s +1 ,...,τ r } (cid:1) . Then the sequence p = (cid:0) p , . . . , p τ , p τ +1 , . . . , p τ , . . . , p τ r − +1 , . . . , p τ r (cid:1) is in K [ Z , . . . , Z r ] S λ . If all q i ’s have degree at most d , then deg( p i ) ≤ d − (cid:96) + i holds for i = 1 , . . . , (cid:96) . In particular, if (cid:96) ≥ d + 2 , then p i = 0 for all i = 1 , . . . , (cid:96) − d − . The degree bound comes by inspection. We defer the rest of the proof (which follows byinduction) to Appendix A.We can also show that q can be written as a linear combination of p , that is, we can findan (cid:96) × (cid:96) matrix polynomial U such that p U = q . The construction of U proceeds as follows.Let M be the block-diagonal matrix with blocks M , . . . , M r given by M k +1 = η ( z τ k +3 , . . . , z τ k +1 ) η ( z τ k +3 , . . . , z τ k +1 ) · · · η (cid:96) k +1 − ( z τ k +3 , . . . , z τ k +1 ) 00 1 η ( z τ k +4 , . . . , z τ k +1 ) · · · η (cid:96) k +1 − ( z τ k +4 , . . . , z τ k +1 ) 00 0 1 · · · η (cid:96) k +1 − ( z τ k +5 , . . . , z τ k +1 ) 0... ... ... ... ...0 0 0 · · · · · · , for all 0 ≤ k ≤ r −
1. Note that det( M k +1 ) = 1 for all k , hence det( M ) = 1.For a non-negative integer u , denote by I u the identity matrix of size u and by a zeromatrix. Then for k = 0 , . . . , r − j = 1 , . . . , (cid:96) k +1 , we define the following τ r × τ r polynomial matrices. Set B τ +1 = I τ r , C τ +1 = I τ r , D τ + j = I τ r , and B τ k + j = I τ k k,j
00 0 I τ r − τ k +1 , with E k,j = I j − z τ k + j − z τ k +1 ... z τ k + j − z τ k + j − . . . − I (cid:96) k +1 − j , (6) C τ k + j = I τ k k,j
00 0 I τ r − τ k +1 , with F k,j = diag ( z τ k + j − z τ k + t ) j − t =1 − j . . . − j − j I (cid:96) k +1 − j , (7)9 τ k + j = diag ( z τ k + j − z t ) τ k t =1 k,j I (cid:96) k +1
00 0 I τ r − τ k +1 , G k,j : j th row is (1 , . . . , , rest zeros . (8)Then we have: Proposition 2.5.
Suppose the sequence q = ( q , . . . , q (cid:96) ) in K [ Z , . . . , Z r ] (cid:96) satisfies the con-ditions of Proposition 2.4. Let ∆ = (cid:81) ≤ i Example 2.6. Consider again the polynomials q = ( q , q , q ) and p = ( p , p , p ) of Exam-ple 2.3. The matrix U which relates p to q is constructed as follows. For k = 0 and j = 1 , let B = , C = D = , B = z − z − , C = z − z − − 00 0 1 , D = while for k = 1 and j = 1 we have B = − , C = − , D = z − z z − z 01 1 1 . In the case λ = (1 ) , M = and hence U = ( B C D )( B C D )( B C D ) = ( z − z )( z − z ) − ( z − z )( z − z ) 0 ( z − z ) ( z − z ) 01 1 1 . Note that det( U ) = ( z − z )( z − z )( z − z ) . p are straightforward to implement. The following propositiondescribes the resulting algorithm, called Symmetrize , and gives the cost of this procedure. Proposition 2.7. There exists an algorithm Symmetrize ( λ, q ) which takes as input q as inProposition 2.4 and a partition λ of n , and returns p as defined in that proposition. For q of degree at most d , the runtime is O ˜( (cid:96) (cid:0) (cid:96) + dd (cid:1) ) operations in K . The proof occupies the rest of this section. Write q = ( q , . . . , q (cid:96) ), and recall the expres-sions defining p = ( p , . . . , p (cid:96) ): for k = 0 , . . . , r − 1, we have p τ k + (cid:96) k +1 = τ k +1 (cid:88) i = τ k +1 q { i,τ k +1 +1 ,...,τ r } and for j = 1 , . . . , (cid:96) k +1 − p τ k + j = j (cid:88) s =1 η j − s ( z τ k + s +2 , . . . , z τ k +1 ) (cid:0) s (cid:88) i =1 q { τ k + i,τ k + s +1 ,...,τ r } (cid:1) . The main issue is to compute the divided differences q { τ k + i,τ k + s +1 ,...,τ r } appearing in theseexpressions, for k = 0 , . . . , r − ≤ i ≤ s ≤ (cid:96) k +1 . Once this is done, the combinationsnecessary to obtain p τ k + j are easily carried out. The main ingredient in the proof is thefollowing lemma which describes the computation of a single divided difference. Lemma 2.8. There exists an algorithm Divided Difference ( q , I ) that takes as input q as inProposition 2.7 and a subset I = { i , . . . , i k } of { , . . . , (cid:96) } , and returns q I . For q of degreeat most d , the runtime is O ˜( (cid:96) (cid:0) (cid:96) + dd (cid:1) ) operations in K .Proof. For j = 1 , . . . , k − 1, we claim that given q { i ,...,i j − } , we can obtain q { i ,...,i j } using O ˜( (cid:0) (cid:96) + dd (cid:1) ) operations in K .To see this note that q { i ,...,i k − } has degree at most d . In order to compute q { i ,...,i j } ,we use evaluation / interpolation. Choosing (cid:0) (cid:96) + dd (cid:1) points as prescribed in [6], the algorithmgiven there allows us to compute the values of both numerator and denominator in (5) in O ˜( (cid:0) (cid:96) + dd (cid:1) ) operations, then compute their ratio, and finally interpolate q { i ,...,i j } in the sameasymptotic runtime. The result then follows.Our Symmetrize algorithm then proceeds as follows. Apply algorithm Divided Difference from Lemma 2.8 to all [ τ k + i, τ k + s + 1 , . . . , τ r ], for k = 0 , . . . , r − ≤ i ≤ s ≤ (cid:96) k +1 .There are O ( (cid:96) ) such indices, so this step takes O ˜( (cid:96) (cid:0) (cid:96) + dd (cid:1) ) operations in K , allowing us tocompute all sums (cid:80) si =1 q { τ k + i,τ k + s +1 ,...,τ r } for the same asymptotic cost.For k = 0 , . . . , r − j = 1 , . . . , (cid:96) k +1 − s = 1 , . . . , j , we then compute the elementarysymmetric polynomial η j − s ( z τ k + s +2 , . . . , z τ k +1 ), which does not involve any arithmetic opera-tions. We multiply it by the above sum, with cost O ˜( (cid:0) (cid:96) + dd (cid:1) ), since the polynomials involvedin the product have degree sum at most d and at most (cid:96) variables. Taking all indices k, j, s into account, this adds another O ˜( (cid:96) (cid:0) (cid:96) + dd (cid:1) ) steps to the total.11 .4 Symmetric representations In this subsection we describe the geometry of S n -orbits in K n , we define the data structurewe will use to represent S n -invariant sets, and present some basic algorithms related to it. The mapping E λ and its fibers. For a partition λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) of n , we define thefollowing two subsets of K n :(i) C λ : the set of all points ξ in K n that can be written as ξ = (cid:0) ξ , , . . . , ξ , (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , ξ ,(cid:96) , . . . , ξ ,(cid:96) (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , ξ r, , . . . , ξ r, (cid:124) (cid:123)(cid:122) (cid:125) n r , . . . , ξ r,(cid:96) r , . . . , ξ r,(cid:96) r (cid:124) (cid:123)(cid:122) (cid:125) n r (cid:1) . (9)(ii) C strict λ : the set of all ξ in C λ for which the ξ i,j ’s in (9) are pairwise distinct.To any point ξ in K n we can associate its type : this is the unique partition λ of n suchthat there exists σ in S n for which σ ( ξ ) lies in C strict λ . Since all points in an orbit have thesame type, we can then define the type of an orbit as the type of any point in it. Any orbitof type λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) has size γ λ = (cid:18) nn , . . . , n , . . . , n r , . . . , n r (cid:19) = n ! n ! (cid:96) · · · n r ! (cid:96) r since the stabilizer of a point in C strict λ is S (cid:96) n × · · · × S (cid:96) r n r .Clearly all points in C strict λ have type λ , but this is not necessarily true for all points in C λ .This can be understood with the help of the refinement order we introduced in Subsection 2.1,as C λ contains points of type λ (cid:48) for all λ (cid:48) ≥ λ . More precisely, C λ is the disjoint union of all C strict λ for all λ (cid:48) ≥ λ . Example 2.9. For the partitions of n = 3 , we have (1 ) < (1 ) < (3 ) . In addition,(a) C (1 ) is K , while C strict(1 ) is the set of all points ξ with pairwise distinct coordinates.(b) C (1 ) is the set of points that can be written ξ = ( ξ , , ξ , , ξ , ) , while C strict(1 ) is thesubset of it where ξ , (cid:54) = ξ , .(c) C (3 ) = C strict(3 ) is the set of points ξ whose coordinates are all equal. For λ as above, we define a mapping E λ : C λ → K (cid:96) by E λ : ξ as in (9) (cid:55)→ ( η i ( ξ i, , . . . , ξ i,(cid:96) i ) , . . . , η (cid:96) i ( ξ i, , . . . , ξ i,(cid:96) i )) ≤ i ≤ r , where for i = 1 , . . . , r and j = 1 , . . . , (cid:96) i , η j ( ξ i, , . . . , ξ i,(cid:96) i ) is the degree j elementary symmetricfunction in ξ i, , . . . , ξ i,(cid:96) i . One should see this mapping as a means to compress orbits: throughthe application of E λ , one can represent a whole orbit O of type λ , which has size γ λ , by thesingle point E λ ( O ∩ C λ ) = E λ ( O ∩ C strict λ ). 12o put this into practice, we need to be able to recover an orbit from its image. Notethat the mapping E λ is onto: for ε = ( ε , , . . . , ε r,(cid:96) r ) in K (cid:96) , one can find a point ξ in thepreimage E − λ ( ε ) by finding the roots ξ i, , . . . , ξ i,(cid:96) i of P i ( T ) = T (cid:96) i − ε i, T (cid:96) i − + · · · + ( − (cid:96) i ε i,(cid:96) i , for i = 1 , . . . , r . Since we will use this idea often, we will write E ∗ λ ( ε ) = S n ( ξ ) for the orbit ofany such point ξ in E − λ ( ε ). This is well-defined, as all points in this fiber are S n -conjugate.More generally, for a set G in K (cid:96) , we will write E ∗ λ ( G ) for the union of the orbits E ∗ λ ( ε ), for ε in G .The image E λ ( C strict λ ) of those points having type λ is an open subset O λ (cid:40) K (cid:96) , definedby the conditions that the polynomials P i above are pairwise coprime and squarefree. For ε in K (cid:96) \ O λ , the orbit E ∗ λ ( ε ) does not have type λ , but rather type λ (cid:48) , for some partition λ (cid:48) > λ . Example 2.10. With n = 3 and λ = (1 ) , we have (cid:96) = 2 and E λ maps points of the form ( ξ , , ξ , , ξ , ) to ( ξ , , ξ , ) . The polynomials P , P defined in the previous paragraph arerespectively given by P ( T ) = T − ε , and P ( T ) = T − ε , , and O λ is defined by ε , (cid:54) = ε , .The point ε = (2 , is in O λ ; the orbit E ∗ λ (2 , is { (2 , , , (3 , , , (3 , , } . On theother hand, ε = (1 , is not in O λ ; the orbit E ∗ λ (1 , is the point { (1 , , } , and it hastype (3 ) > (1 ) . Finally, if we define G = { (1 , , (2 , } , then E ∗ λ ( G ) is the set W = { (1 , , , (2 , , , (3 , , , (3 , , } . We will need an algorithm that computes the type λ (cid:48) of the orbit E ∗ λ ( ε ), for a given ε in K (cid:96) , and also computes the value that the actual compression mapping E λ (cid:48) takes at thisorbit. The algorithm’s specification assumes inputs in K (since our computation model isa RAM over K ) but the procedure makes sense over any field extension of K . We will usethis remark later in the proof of Lemma 2.16. Lemma 2.11. There exists an algorithm Type Of Fiber ( λ, ε ) which takes as input a partition λ of n with length (cid:96) and a point ε in K (cid:96) , and returns a partition λ (cid:48) of n of length k and atuple f in K k , such that(i) λ (cid:48) is the type of the orbit O := E ∗ λ ( ε ) (ii) E λ (cid:48) ( O ∩ C strict λ (cid:48) ) = { f } .The algorithm runs in time O ˜( n ) .Proof. Write ε = ( ε , , . . . , ε r,(cid:96) r ). The points in E − λ ( ε ) are obtained as permutations of ξ = (cid:0) ξ , , . . . , ξ , (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , ξ ,(cid:96) , . . . , ξ ,(cid:96) (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , ξ r, , . . . , ξ r, (cid:124) (cid:123)(cid:122) (cid:125) n r , . . . , ξ r,(cid:96) r , . . . , ξ r,(cid:96) r (cid:124) (cid:123)(cid:122) (cid:125) n r (cid:1) , where for i = 1 , . . . , r , ξ i, , . . . , ξ i,(cid:96) i are the roots of P i ( T ) = T (cid:96) i − ε i, T (cid:96) i − + · · · + ( − (cid:96) i ε i,(cid:96) i = 0 . ξ amounts to finding the duplicates among the ξ i,j ’s. Findingsuch duplicates can be done by computing the product P = (cid:0) T (cid:96) − ε , T (cid:96) − + · · · + ( − (cid:96) ε ,(cid:96) (cid:1) n · · · (cid:0) T (cid:96) r − ε r, T (cid:96) r − + · · · + ( − (cid:96) r ε r,(cid:96) r (cid:1) n r and its squarefree factorization P = Q m · · · Q m s s , with m < · · · < m s and all Q i ’s squarefreeand pairwise coprime. If k i = deg( Q i ) then ξ has type λ (cid:48) = ( m k m k . . . m k s s ) with λ (cid:48) > λ . Ifwe write Q i = T k i − f i, T k i − + · · · + ( − k i f i,k i , ≤ i ≤ s, then our output is ( λ (cid:48) , f ), where f = ( f , , . . . , f s,k s ).Using subproduct tree techniques [18, Chapter 10] to compute P and fast GCD [18,Chapter 14], all computations take quasi-linear time O ˜( n ). Example 2.12. Let n = 3 and λ = (1 ) , with E λ ( ξ , , ξ , , ξ , ) = ( ξ , , ξ , ) . We saw thatfor ε = (1 , in K , the orbit E ∗ λ (1 , is { (1 , , } , which has type λ (cid:48) = (3 ) .Since n = 1 and n = 2 , the above algorithm first expands the product ( T − T − as T − T + 3 T − , then computes its squarefree factorization as ( T − . From this, we readoff that s = 1 , m = 3 and k = 1 , so that λ (cid:48) is indeed (3 ) . The output is ( λ (cid:48) , E λ (cid:48) (1 , , ,the latter being equal to (1) . A data structure for S n -invariant sets. The previous setup allows us to representinvariant sets in K n as follows. Let W be a set in K n , invariant under the action of S n . Fora partition λ of n with (cid:96) , we write W λ = S n ( W ∩ C strict λ ) ⊂ K n and W (cid:48) λ = E λ ( W ∩ C strict λ ) ⊂ K (cid:96) , (10)where S n ( W ∩ C strict λ ) is the orbit of W ∩ C strict λ under S n , or, equivalently, the set of pointsof type λ in W (so this matches the notation used in the introduction).For two distinct partitions λ, λ (cid:48) of n , W λ and W λ (cid:48) are disjoint, so that any invariant set W can be written as the disjoint union W = (cid:116) λ (cid:96) n W λ . When W is finite, we then can represent W λ by describing the image W (cid:48) λ . Indeed, the cardinality of the set W (cid:48) λ is smaller than thatof the orbit W λ by a factor of γ λ , and we can recover W λ as W λ = E ∗ λ ( W (cid:48) λ ). Altogether, weare led to the following definition. Definition 2.13. Let W be a finite set in K n , defined over K and S n -invariant. A symmetricrepresentation of W is a sequence ( λ i , R i ) ≤ i ≤ N , where the λ i ’s are all the partitions of n forwhich W λ i is not empty, and, for each i , R i is a zero-dimensional parametrization of W (cid:48) λ i . Example 2.14. Suppose n = 3 and W = { (1 , , , (2 , , , (3 , , , (3 , , } . Then with λ = (1 ) we have W λ = { (2 , , , (3 , , , (3 , , } , W (cid:48) λ = { (2 , } ⊂ K and γ λ = 3 , while with λ (cid:48) = (3 ) , we have W λ (cid:48) = { (1 , , } , W (cid:48) λ (cid:48) = { (1) } ⊂ K and γ λ (cid:48) = 1 .A symmetric representation of W would consist of ( λ, R λ ) and ( λ (cid:48) , R λ (cid:48) ) , with Z ( R λ ) = { (2 , } and Z ( R λ (cid:48) ) = { (1) } . G in K (cid:96) ; possibly, some points in G will not be in the openset O λ (that is, may correspond to orbits having type λ (cid:48) , for some λ (cid:48) > λ ). As usual, thefinite set G will be described by means of a zero-dimensional parametrization. Our goal willthen be to compute a symmetric representation of E ∗ λ ( G ). Example 2.15. Take n = 3 , and again let λ = (1 ) , with E λ ( ξ , , ξ , , ξ , ) = ( ξ , , ξ , ) .Assume we are given G = { (1 , , (2 , } ⊂ K . In this case, E ∗ λ ( G ) is the set W seen inExamples 2.10 and 2.14, and the output we seek is a distinct coordinates representation of W , as discussed in Example 2.14. Lemma 2.16. There exists a randomized algorithm Decompose ( λ, R ) , which takes as inputa partition λ of n with length (cid:96) and a zero-dimensional parametrization R of a set G ⊂ K (cid:96) ;it returns a symmetric representation of E ∗ λ ( G ) . The expected runtime is O ˜( D n ) operationsin K , with D = deg( R ) = | G | .Proof. In the first step, we apply our algorithm Type Of Fiber from Lemma 2.11 where theinput fiber is given not with coefficients in K , but as the points described by R . A generalalgorithmic principle, known as dynamic evaluation , allows us to do this as follows. Let R = (( q, v , . . . , v (cid:96) ) , µ ), with q and the v i ’s in K [ y ]. We then call Type Of Fiber with inputcoordinates ( v , . . . , v (cid:96) ), and attempt to run the algorithm over the residue class ring K [ y ] /q ,as if q were irreducible.If q is irreducible, K [ y ] /q is a field, and we encounter no problem. However, in general, K [ y ] /q is only a product of fields, so the algorithm may attempt to invert a zero-divisor.When this occurs, a “splitting” of the computation occurs. This amounts to discoveringa non-trivial factorization of q . A direct solution then consists of running the algorithmagain modulo the two factors that were discovered. Overall, this computes a sequence( R i , λ i , f i ) ≤ i ≤ N , where for i = 1 , . . . , N ,(i) R i = (( q i , v i, , . . . , v i,(cid:96) ) , µ i ) is a zero-dimensional parametrization that describes a set F i ⊂ F . In addition F is the disjoint union of F , . . . , F N ;(ii) λ i is a partitition of n , of length (cid:96) i ;(iii) f i is a sequence of (cid:96) i elements with entries in the residue class ring K [ y ] /q i ;(iv) for any ε in F i , corresponding to a root τ of q i , Type Of Fiber ( λ, ε ) = ( λ i , f i ( τ )).Since Type Of Fiber takes time O ˜( n ), this process takes time O ˜( D n ), with D = deg( R ).The overhead O ˜( D ) is the penalty incurred by a straightforward application of dynamicevaluation techniques.For i = 1 , . . . , N , let V i = E − λ ( F i ), so that W = S n ( V ) is the union of the orbits W i = S n ( V i ). Then, from (iv) above we see that all points in W i have type λ i and that ( W i ) (cid:48) λ i is the set G i = { f i ( τ ) | q i ( τ ) = 0 } ⊂ K (cid:96) i . Using the algorithm of [35, Proposition 1], we cancompute a zero-dimensional parametrization S i of G i in time O ˜( D i n ), with D i = deg( R i ).The total cost is thus O ˜( D n ). 15he λ i ’s may not be pairwise distinct. Up to changing indices, we may assume that λ , . . . , λ s are representatives of the pairwise distinct values among them. Then, for i =1 , . . . , s , we compute a zero-dimensional parametrization T i that describes the union ofthose Z ( S j ), for j such that λ j = λ i . Using algorithm [35, Lemma 3], this takes a total of O ˜( D n ) operations in K . Finally, we return ( λ i , T i ) ≤ i ≤ s . We can now turn to the main question in this article. Let f = ( f , . . . , f s ) be polynomials in K [ x , . . . , x n ] S n , with s ≤ n , and with V = V ( f ) ⊂ K n denoting the algebraic set defined by f = · · · = f s = 0. Given a polynomial φ in K [ x , . . . , x n ] S n , we are interested in describingthe algebraic set W = W ( φ, f ) defined by the simultaneous vanishing of the polynomials f , . . . , f s , M s +1 (Jac( f , φ )) (11)where M s +1 (Jac( f , φ )) is the set of ( s + 1)-minors of the Jacobian matrix Jac( f , φ ) ∈ K [ x , . . . , x n ] ( s +1) × n . Equivalently, this is the set of all x in V at which Jac( f , φ ) has rankless than s + 1.If we assume that Jac( f ) has full rank s at any point of V , then V is smooth of codi-mension s (or empty) and W is the set of critical points of φ on it. However, most of ourdiscussion can take place without this assumption. For the sake of simplicity, in any case,we will still refer to the solutions of (11) as critical points . W Fundamental to our results is the fact that W is invariant under the action of the symmetricgroup. This follows from the next lemma, being a direct consequence of the chain rule. Lemma 3.1. Let g be in K [ x , . . . , x n ] and σ in S n . Then for k in { , . . . , n } , we have σ (cid:18) ∂g∂x k (cid:19) = ∂ ( σ ( g )) ∂x σ ( k ) . (12) Corollary 3.2. The algebraic set W is S n -invariant.Proof. Let ξ be in W and σ be in S n . We need to show that σ ( ξ ) is in W , that is, f i ( σ ( ξ )) = 0for all i and Jac( f , φ ) has rank at most s at σ ( ξ ).The first statement is clear, since ξ cancels f and f is S n -invariant. For the secondclaim, since all f i ’s and φ are S n -invariant, Lemma 3.1 implies that the Jacobian matrixJac( f , φ ) at σ ( ξ ) is equal to (Jac( f , φ )( ξ )) A − , where A is the matrix of σ . Therefore, aswith Jac( f , φ )( ξ ), it has rank at most s .We remark that the proof of the corollary implies a slightly stronger property, whichwe already mentioned in the introduction: the system f , . . . , f s , M s +1 (Jac( f , φ )) is globally16nvariant (that is, applying any σ ∈ S n permutes these equations, possibly changing signs).However, our algorithm does not use this fact directly.The corollary above also implies that the discussion in Section 2.4 applies to W . Inparticular, for a partition λ of n , the sets W λ and W (cid:48) λ of (10) are well-defined. In whatfollows, we fix a partition λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) of n and we let (cid:96) be its length; we explain howto compute a description of W (cid:48) λ along the lines of Section 2.4. For this, we let Z , . . . , Z r bethe indeterminates associated to λ , as defined in Section 2.1, with Z i = z i, , . . . , z i,(cid:96) i . As inthat section, we also write all indeterminates z , , . . . , z r,(cid:96) r as z , . . . , z (cid:96) . Definition 3.3. With λ and Z , . . . , Z r as above, we define T λ , the K -algebra homomor-phism K [ x , . . . , x n ] → K [ Z , . . . , Z r ] mapping x , . . . , x n to z , , . . . , z , (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , z ,(cid:96) , . . . , z ,(cid:96) (cid:124) (cid:123)(cid:122) (cid:125) n . . . , z r, , . . . , z r, (cid:124) (cid:123)(cid:122) (cid:125) n r , . . . , z r,(cid:96) r , . . . , z r,(cid:96) r (cid:124) (cid:123)(cid:122) (cid:125) n r . (13) The operator T λ extends to vectors or matrices of polynomials entrywise. We can now define f [ λ ] = T λ ( f ) = ( f [ λ ]1 , . . . , f [ λ ] s ) and J [ λ ] = T λ (Jac( f , φ )) = (cid:2) J [ λ ] i,j (cid:3) ≤ i ≤ s +1 , ≤ j ≤ n . (14)Notice that for f in K [ x , . . . , x n ] S n , and for any indices j, k in { , . . . , n } for which T λ ( x j ) = T λ ( x k ), we have T λ (cid:18) ∂f∂x j (cid:19) = T λ (cid:18) ∂f∂x k (cid:19) ; (15)this follows by applying Lemma 3.1 to f and the transposition ( j k ). Thus T λ (cid:18) ∂f∂x , . . . , ∂f∂x n (cid:19) = (cid:0) f [ λ ]1 , , . . . , f [ λ ]1 , (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , f [ λ ]1 ,(cid:96) , . . . , f [ λ ]1 ,(cid:96) (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , f [ λ ] r, , . . . , f [ λ ] r, (cid:124) (cid:123)(cid:122) (cid:125) n r , . . . , f [ λ ] r,(cid:96) r , . . . , f [ λ ] r,(cid:96) r (cid:124) (cid:123)(cid:122) (cid:125) n r (cid:1) , (16)where f [ λ ] i,j are polynomials in the variables ( Z , . . . , Z r ). Lemma 3.4. The columns of the transformed Jacobian matrix J [ λ ] have the form: J [ λ ] = (cid:0) J [ λ ]1 , , . . . , J [ λ ]1 , (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , J [ λ ]1 ,(cid:96) , . . . , J [ λ ]1 ,(cid:96) (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , J [ λ ] r, , . . . , J [ λ ] r, (cid:124) (cid:123)(cid:122) (cid:125) n r , . . . , J [ λ ] r,(cid:96) r , . . . , J [ λ ] r,(cid:96) r (cid:124) (cid:123)(cid:122) (cid:125) n r (cid:1) , (17) Proof. This follows directly from (16), since( J [ λ ] s +1 , , . . . , J [ λ ] s +1 ,n ) = T λ (cid:18) ∂φ∂x , . . . , ∂φ∂x n (cid:19) and ( J [ λ ] i, , . . . , J [ λ ] i,n ) = T λ (cid:18) ∂f i ∂x , . . . , ∂f i ∂x n (cid:19) for i = 1 , . . . , s , and all polynomials f , . . . , f s , φ are in K [ x , . . . , x n ] S n .17e will then let G [ λ ] = [ G [ λ ] i,j ] ≤ i ≤ s +1 , ≤ j ≤ (cid:96) be the matrix with entries in K [ Z , . . . , Z r ]obtained from Jac( f , φ ) by first applying T λ and then keeping only one representative amongall repeated columns highlighted in the previous lemma. Example 3.5. Let s = 1 and n = 5 , so we consider two polynomials f , φ in K [ x , . . . , x ] ,and take λ = (1 ) . Then f [ λ ]1 ( z , , z , , z , ) = T λ ( f ) = f ( z , , z , , z , , z , , z , ) , and G [ λ ] = T λ ( ∂f ∂x ) T λ ( ∂f ∂x ) T λ ( ∂f ∂x ) T λ ( ∂φ∂x ) T λ ( ∂φ∂x ) T λ ( ∂φ∂x ) ∈ K [ z , , z , , z , ] × . It is easy to see that the polynomials f [ λ ] are S λ -invariant, where S λ is the permutationgroup S (cid:96) × · · · × S (cid:96) r introduced in the previous section. However, this is generally not thecase for the entries of G [ λ ] . Lemma 3.6. Let g [ λ ] = ( g [ λ ]1 , . . . , g [ λ ] (cid:96) ) be a row of G [ λ ] . Then(i) z i − z j divides g [ λ ] i − g [ λ ] j for ≤ i < j ≤ (cid:96) ;(ii) g [ λ ] is S λ -equivariant.Proof. For the sake of definiteness, let us assume that g [ λ ] is the row corresponding to thegradient of f , with the other cases treated similarly.For statement ( i ), we start from indices i, j as in the lemma and let S be the K -algebra homomorphism K [ Z , . . . , Z r ] → K [ Z , . . . , Z r ] that maps z i to z j , leaving all othervariables unchanged. Let u, v in { , . . . , n } be indices such that g [ λ ] i = T λ ( ∂f /∂x u ) and g [ λ ] j = T λ ( ∂f /∂x v ) and σ ∈ S n the transposition ( u v ). From Lemma 3.1, we have that σ ( ∂f /∂x u ) = ∂f /∂x v and applying S ◦ T λ gives S ( T λ ( σ ( ∂f /∂x u ))) = S ( T λ ( ∂f /∂x v )).For any h ∈ K [ x , . . . , x n ] we have, by construction, S ( T λ ( σ ( h ))) = S ( T λ ( h )). Applying thison the left-hand side of the previous equality gives S ( g [ λ ] i ) = S ( g [ λ ] j ). As a result, z i − z j divides g [ λ ] i − g [ λ ] j , as claimed.For statement ( ii ), we take indices k in { , . . . , r } and j, j (cid:48) in { , . . . , (cid:96) k } . We let σ ∈ S λ be the transposition that maps ( k, j ) to ( k, j (cid:48) ) and prove that σ ( g [ λ ] k,j ) = g [ λ ] k,j (cid:48) . As before,there exist indices u, v in { , . . . , n } such that g [ λ ] k,j = T λ ( ∂f /∂x u ) and g [ λ ] k,j (cid:48) = T λ ( ∂f /∂x v ).Without loss of generality, assume that u and v are the smallest such indices. Then T λ maps x u , . . . , x u + (cid:96) k − to z k,j and x v , . . . , x v + (cid:96) k − to z k,j (cid:48) .Let τ ∈ S n be permutation that permutes ( u, . . . , u + (cid:96) k − 1) with ( v, . . . , v + (cid:96) k − τ ( ∂f /∂x v ) = ∂f /∂x u . Then T λ ( τ ( ∂f /∂x u )) = T λ ( ∂f /∂x v ) = g [ λ ] k,j (cid:48) .By construction, the left-hand side is equal to σ ( T λ ( ∂f /∂x u )), that is, σ ( g [ λ ] k,j ).18emma 3.6 implies that we can apply Algorithm Symmetrize from Section 2.3 to eachrow of G [ λ ] . The result is a polynomial matrix H [ λ ] in K [ Z , . . . , Z r ], whose rows areall S λ -equivariant, and such that H [ λ ] = G [ λ ] U [ λ ] , for some polynomial matrix U [ λ ] in K [ Z , . . . , Z r ] (cid:96) × (cid:96) . Applying Algorithm Symmetric Coordinates from Lemma 2.2 to the en-tries of both f [ λ ] and H [ λ ] gives polynomials ¯ f [ λ ] and a matrix ¯ H [ λ ] , all with entries in K [ e , . . . , e r ], with variables e i = e i, , . . . , e i,(cid:96) for all i , and such that f [ λ ] = ¯ f [ λ ] ( η , . . . , η r )and H [ λ ] = ¯ H [ λ ] ( η , . . . , η r ).The following summarizes the main properties of this construction. For the definitionsof the sets C λ , C strict λ , the mapping E λ and the open set O λ ⊂ K (cid:96) , see Section 2.4. Proposition 3.7. Let λ be a partition of n of length (cid:96) .(i) If (cid:96) ≤ s , then E λ ( W ∩ C λ ) is the zero-set of ¯ f [ λ ] in K (cid:96) .(ii) If (cid:96) > s , then W (cid:48) λ = E λ ( W ∩ C strict λ ) is the zero-set of ¯ f [ λ ] and all ( s + 1) -minors of ¯ H [ λ ] in O λ ⊂ K (cid:96) .Proof. Let ξ be in the set C λ defined in Section 2.4, and write ξ = (cid:0) ξ , , . . . , ξ , (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , ξ ,(cid:96) , . . . , ξ ,(cid:96) (cid:124) (cid:123)(cid:122) (cid:125) n , . . . , ξ r, , . . . , ξ r, (cid:124) (cid:123)(cid:122) (cid:125) n r , . . . , ξ r,(cid:96) r , . . . , ξ r,(cid:96) r (cid:124) (cid:123)(cid:122) (cid:125) n r (cid:1) . Set ζ = ( ξ , , ξ , , . . . , ξ r,(cid:96) r ) ∈ K (cid:96) and ε = E λ ( ξ ) ∈ K (cid:96) . By definition, we have f ( ξ ) = f [ λ ] ( ζ )and Jac( f , φ )( ξ ) = J [ λ ] ( ζ ). Thus, ξ is in W ∩ C λ if and only if it cancels f and Jac( f , φ ) hasrank at most s at ξ , that is, if f [ λ ] ( ζ ) = 0 and J [ λ ] ( ζ ) has rank at most s . The point ξ is in W ∩ C strict λ if all the entries of ζ are also pairwise distinct.In addition, we have f [ λ ] ( ζ ) = ¯ f [ λ ] ( ε ) and, by construction, rank( J [ λ ] ( ζ )) = rank( G [ λ ] ( ζ )).If (cid:96) ≤ s then, since G [ λ ] has (cid:96) columns, we see that ξ is in W ∩ C λ if and only if ε = E λ ( ξ )cancels ¯ f [ λ ] . Since E λ : C λ → K (cid:96) is onto, this implies our first claim.Suppose further that ξ is in C strict λ , so that ε is in O λ . From Proposition 2.4, we have H [ λ ] = G [ λ ] U [ λ ] . Our assumption on ξ implies that U [ λ ] ( ζ ) is invertible, so that G [ λ ] and H [ λ ] have the same rank at ζ . Finally, we have H [ λ ] ( ζ ) = ¯ H [ λ ] ( ε ). All this combined showsthat ξ is in W (cid:48) λ = E λ ( W ∩ C strict λ ) if and only if ε = E λ ( ξ ) cancels ¯ f [ λ ] and all ( s + 1)-minorsof ¯ H [ λ ] . Since the restriction E λ : C strict λ → O λ is onto, this implies the second claim. Critical Points Per Orbit algorithm The main algorithm of this paper is Critical Points Per Orbit which takes as input symmetric f = ( f , . . . , f s ) and φ in K [ x , . . . , x n ] and, if finite, outputs a symmetric representationof the critical point set W = W ( φ, V ( f )). Using our notation from Section 2, this meansthat we want to compute zero-dimensional parametrizations of W (cid:48) λ = E λ ( W ∩ C strict λ ), for allpartitions λ of n for which this set is not empty. The algorithm is based on Proposition 3.7,with a minor modification, as we will see that it is enough to consider partitions of n oflength (cid:96) either exactly equal to s , or at least s + 1.For any partition λ , we first need to transform f and φ , in order to obtain the polynomialsin Proposition 3.7. 19 emma 3.8. There exists an algorithm Prepare F ( f , λ ) which takes as input f as above anda partition λ , and returns ¯ f [ λ ] . If f has degree at most d , the algorithm takes O ˜( n (cid:0) n + dd (cid:1) ) operations in K . Similarly, there exists an algorithm Prepare F H ( f , φ, λ ) which takes asinput f , φ as above and a partition λ , and returns ¯ f [ λ ] and ¯ H [ λ ] . If f and φ have degree atmost d , then the algorithm takes O ˜( n (cid:0) n + dd (cid:1) ) operations in K .Proof. In the first case, applying T λ to f takes linear time in the number of monomials O ( n (cid:0) n + dd (cid:1) ) and gives us f [ λ ] . We then invoke Symmetric Coordinates ( λ, f [ λ ] ), using Lemma 2.2,in order to obtain ¯ f [ λ ] with the cost being O ˜( n (cid:0) n + dd (cid:1) ) operations in K .In the second case, we obtain f [ λ ] as above. We also compute the matrix Jac( f , φ ),which takes O ( n (cid:0) n + dd (cid:1) ) operations. For the same cost, we apply T λ to all its entries andremove redundant columns, as specified in Lemma 3.4, so as to yield the matrix G [ λ ] . Wethen apply Algorithm Symmetrize from Proposition 2.7 to all rows of G [ λ ] , which takes O ˜( n (cid:0) n + dd (cid:1) ) operations, and returns H [ λ ] . Finally, we apply Symmetric Coordinates to allentries of this matrix which gives ¯ H [ λ ] and takes O ˜( n (cid:0) n + dd (cid:1) ) operations in K .At the core of the algorithm, we need a procedure for finding isolated solutions of certainpolynomial systems. In our main algorithm, we solve such systems using procedures called Isolated Points ( g ) and Isolated Points ( g , H , k ). Given polynomials g , the former returns azero-dimensional parametrization of the isolated points of V ( g ). The latter takes as inputpolynomials g , a polynomial matrix H and an integer k , and returns a zero-dimensionalparametrization of the isolated points of V ( g , M k ( H )), where M k ( H ) denotes the set of k -minors of H (note that the former procedure can be seen as a particular case of the latter,where we take H to be a matrix with no row and k = − Decompose from Lemma 2.16,our algorithm also requires a procedure Remove Duplicates ( S ). This inputs a list S =( λ i , R i ) ≤ i ≤ N , where each λ i is a partition of n and R i a zero-dimensional parametriza-tion. As all λ i ’s may not be distinct in this list, this procedure removes pairs ( λ i , R i ) from S so as to ensure that all resulting partitions are pairwise distinct (the choice of which entriesto remove is arbitrary; it does not affect correctness of the overall algorithm). Proposition 3.9. Algorithm Critical Points Per Orbit is correct.Proof. The goal of the algorithm is to compute zero-dimensional representations of W (cid:48) λ = E λ ( W ∩ C strict λ ) for all partitions λ of n for which this set is not empty.To understand the first loop, recall first that W is assumed to be finite. Hence thisalso holds for all W ∩ C λ , and thus for all E λ ( W ∩ C λ ). As a result, for λ of length s ,Proposition 3.7(i) implies that at Step 2b , Isolated Points ( ¯ f λ ) returns a zero-dimensionalparametrization of G := E λ ( W ∩ C λ ). Then, we recall from Lemma 2.16 that the outputof Decompose ( λ, R λ ) is a symmetric representation of E ∗ λ ( G ). Note that the latter set isthe orbit of W ∩ C λ , that is, the set of all orbits contained in W whose type λ (cid:48) satisfies λ (cid:48) ≥ λ . Taking into account all partitions λ of length s , the set of partitions λ (cid:48) ≥ λ coversall partitions of length (cid:96) ∈ { , . . . , s } , so that at the end of Step 2, we have zero-dimensional20 lgorithm 1 Critical Points Per Orbit ( f , φ ) Input: f = ( f , . . . , f s ) and φ in K [ x , . . . , x n ] S n such that W = W ( φ, V ( f )) is finite. Output: A symmetric representation of W .1. S = [ ]2. For λ (cid:96) n of length s (a) ¯ f [ λ ] = Prepare F ( f , λ )(b) R λ = Isolated Points ( ¯ f [ λ ] )(c) append the output of Decompose ( λ, R λ ) to S 3. For λ (cid:96) n of length in { s + 1 , . . . , n } (a) ¯ f [ λ ] , ¯ H [ λ ] = Prepare F H ( f , φ, λ )(b) R λ = Isolated Points ( ¯ f [ λ ] , ¯ H [ λ ] , s + 1)(c) ( λ i , R i ) ≤ i ≤ N = Decompose ( λ, R λ )(d) append ( λ i , R i ) to S , where i is such that λ i = λ , if such an i exists4. Return Remove Duplicates ( S )parametrizations of W (cid:48) λ for all partitions of length (cid:96) ∈ { , . . . , s } (with possible repetitions).Calling Remove Duplicates ( S ) will remove any duplicates among this list.The second loop deals with partitions λ of length at least s + 1. Since we assume that W is finite, W (cid:48) λ is finite for any such λ . Proposition 3.7(ii) then implies that the points in W (cid:48) λ are isolated points of the zero-set of ¯ f [ λ ] and of the ( s + 1)-minors of ¯ H [ λ ] . As a result, W (cid:48) λ isa subset of Z ( R λ ), for R λ computed in Step 3b with all other points in Z ( R λ ) correspondingto points in W with type λ (cid:48) > λ . In particular, after the call to Decompose , it suffices tokeep the entry in the list corresponding to the partition λ , to obtain a description of W (cid:48) λ . Critical Points Per Orbit Algorithm In this section we provide a complexity analysis of our Critical Points Per Orbit algorithmand hence also complete the proof of Theorem 1.1.At the core of the Critical Points Per Orbit algorithm is a procedure, Isolated Points . Recallthat on input polynomials g , a polynomial matrix H and an integer k , it returns a zero-dimensional parametrization of the isolated points of V ( g , M k ( H )), where M k ( H ) denotes theset of k -minors of H . We apply this procedure to polynomials with entries in K [ e , . . . , e r ] =21 [ e , , . . . , e ,(cid:96) , e , , . . . , e ,(cid:96) , . . . , e r, , . . . , e r,(cid:96) r ].Rather than using classical methods for solving these polynomial systems, we use the sym-bolic homotopy method for weighted domains given in [31], as this algorithm is the best suitedto handle a weighted-degree structure exhibited by such systems. Indeed, the polynomialring arising from an orbit parameter λ , K [ e , . . . , e r ], is obtained through a correspondencebetween the variable e i,k and the elementary symmetric polynomial η i,k ( x j , . . . , x j m ), for cer-tain indices j , . . . , j m . More precisely, for any f in K [ Z , . . . , Z r ] S λ , let ¯ f be the polynomialin K [ e , . . . , e r ] satisfying f ( Z , . . . , Z r ) = ¯ f ( η , . . . , η r ) , with η i = ( η i, , . . . , η i,(cid:96) i ) for all i . Since each η i,k has degree k , it is natural to assign a weight k to variable e i,k , so that the weighted degree of ¯ f equals the degree of f . Our vector ofvariable weights is then is w = (1 , . . . , (cid:96) , , . . . , (cid:96) , . . . , , . . . , (cid:96) r ). In this section, we briefly review the algorithm for solving determinantal systems over a ringof weighted polynomials.Suppose we work with polynomials in K [ Y ] = K [ y , . . . , y m ], where each variable y i hasweight w i ≥ y i ) = w i ). The weighted degree of a monomial y α · · · y α m m is then (cid:80) mi =1 w i α i , and the weighted degree of a polynomial is the maximum of the weighteddegree of its terms with non-zero coefficients. The weighted column degrees of a polynomialmatrix is the sequence of the weighted degrees of its columns, where the weighted degree ofa column is simply the maximum of the weighted degrees of its entries.Let f = ( f , . . . , f τ ) be a sequence of polynomials in K [ Y ] and G = [ g i,j ] ∈ K [ Y ] p × q amatrix of polynomials such that p ≤ q and m = q − p + τ + 1, and let V p ( G , f ) denote theset of points in K at which all polynomials in f and all p -minors of G vanish. In [31], asymbolic homotopy algorithm for weighted domains is presented which constructs a symbolichomotopy from a generic start system to the system defining V p ( G , f ) and then uses this toefficiently determine the isolated points of V p ( G , f ).The main theorem of [31], in the special case of weighted polynomial rings, is given interms of a number of parameters. Let ( γ , . . . , γ τ ) be the weighted degrees of ( f , . . . , f τ ),let ( δ , . . . , δ q ) be the weighted column degrees of G , let d be the maximum of the degrees(in the usual sense) of all f , G and setΓ = m (cid:18) m + dm (cid:19) + m (cid:18) qp (cid:19) . The following quantities are all related to the degrees of some geometric objects presentin the algorithm. We define c = γ · · · γ τ · η m − τ ( δ , . . . , δ q ) w · · · w m and e = ( γ + 1) · · · ( γ τ + 1) · η m − τ ( δ + 1 , . . . , δ q + 1) w · · · w m , η n − s is the elementary symmetric polynomial of degree n − s . For a subset i = { i , . . . , i m − τ } ⊂ { , . . . , q } , we further let ( d i , , . . . , d i ,m ) denote the sequence obtainedby sorting ( γ , . . . , γ τ , δ i , . . . , δ i m − τ ) in non-decreasing order, and we write κ i = max ≤ k ≤ m ( d i , · · · d i ,k w k +1 · · · w m ) and κ = (cid:88) i = { i ,...,i m − τ }⊂{ ,...,q } κ i . (18)Note that without loss of generality, in these equations, we may also assume that the weights w , . . . , w m are reordered to form a non-decreasing sequence. Theorem 4.1. [31, Theorem 5.3] Let G be a matrix in K [ Y ] p × q and f = ( f , . . . , f τ ) bepolynomials in K [ Y ] such that p ≤ q and m = q − p + τ + 1 . There exists a randomizedalgorithm which takes G and f as input and computes a zero-dimensional parametrizationof these isolated solutions using O ˜ (cid:16)(cid:0) c ( e + c ) + d (cid:0) κw · · · w m (cid:1) (cid:1) m Γ (cid:17) operations in K . Moreover, the number of solutions in the output is at most c . When there is no matrix G , so τ = m , then the runtimes reported above remain the samewith the term Γ becoming Γ = m (cid:0) m + dm (cid:1) . In this case, the term κ is simply equal to κ = max ≤ k ≤ m ( γ · · · γ k w k +1 · · · w m ), assuming that the degrees γ , . . . , γ k are given in non-decreasing order.We finish this subsection with an observation in those cases with m > q − p + τ + 1. Remark 4.2. Note that when m > q − p + τ + 1 , then there are no isolated points in V p ( G , f ) . Indeed if we let I ⊂ K [ Y ] be the ideal generated by the p -minors of G then aresult due to Eagon and Northcott [10, Section 6] implies that all irreducible components of V ( I ) have codimension at most q − p + 1 . By Krull’s theorem the irreducible components of V p ( G , f ) = V ( I + (cid:104) f , . . . , f τ (cid:105) ) then have codimension at most q − p + 1 + τ . This implies thatthe irreducible components of V p ( G , f ) in K m have dimension at least m − ( q − p + τ + 1) ,which is positive when m > q − p + τ + 1 . Isolated Points procedure Estimating the runtimes for the Isolated Points algorithms follows from Theorem 4.1, for theweighted domains associated to various partitions of n . Thus we let λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) bea partition of length (cid:96) , with (cid:96) ≥ s .The parameters that appear in Theorem 4.1 can be determined as follows. The weightsof variables ( e , . . . , e r ) are w = (1 , . . . , (cid:96) , . . . , , . . . , (cid:96) r ). For i = 1 , . . . , s , the weighteddegree of ¯ f [ λ ] i is the same as the degree of f [ λ ] i and so is at most d .For j = 1 , . . . , (cid:96) , the weighted column degree of the j th column of ¯ H [ λ ] is at most δ j = d − − (cid:96) + j (note that all entries of the Jacobian matrix of f , φ have degree at most23 − 1; then apply Proposition 2.4). In particular, if (cid:96) > d , then all entries on the j -th columnof ¯ H [ λ ] equal zero for j = 1 , . . . , (cid:96) − d . Finally, in what follows, we letΓ = n (cid:18) n + dd (cid:19) + n (cid:18) ns + 1 (cid:19) . Partitions of length s . We recall that when the length (cid:96) of the partition λ equals s , wedo not need to deal with a matrix ¯ H [ λ ] . In this situation, one only needs to compute theisolated points of V ( ¯ f [ λ ] ).Consider such a partition λ = ( n (cid:96) n (cid:96) . . . n (cid:96) r r ) and the corresponding variables ( e , . . . , e r ),with wdeg( e i,k ) = k for all i = 1 , . . . , r and k = 1 , . . . , (cid:96) i . We make the following claim: ifthere exists i such that (cid:96) i > d , then there is no isolated point in V ( ¯ f [ λ ] ) . Indeed, in such acase, variable e i,(cid:96) i does not appear in ¯ f [ λ ] , for weighted degree reasons, so that the zero-setof this system is invariant with respect to translations along the e i,(cid:96) i axis. In particular, itadmits no isolated solution.Therefore we can suppose that all (cid:96) i ’s are at most d . In this case, the quantities c, e, κ used in Theorem 4.1 become respectively c λ = d s w λ , e λ = n ( d + 1) s w λ , κ λ = d s = w λ c λ , with w λ = (cid:96) ! · · · (cid:96) r !. In this case Theorem 4.1 implies that V ( ¯ f [ λ ] ) contains at most c λ isolated points, and that and one can compute all of them using O ˜ (cid:0)(cid:0) c λ ( e λ + c λ ) + d c λ (cid:1) n Γ λ (cid:1) ⊂ O ˜ (cid:0) d c λ ( e λ + c λ ) n Γ (cid:1) operations in K . Partitions of length greater than s . For a partition λ of length (cid:96) greater than s , wehave to take into account the minors of the matrix ¯ H [ λ ] . Note that the assumptions ofTheorem 4.1 are satisfied: the matrix ¯ H [ λ ] is in K [ e , . . . , e r ] ( s +1) × (cid:96) , with (cid:96) ≥ s + 1, andwe have s equations ¯ f [ λ ] in K [ e , . . . , e r ], so the number of variables (cid:96) does indeed satisfy (cid:96) = (cid:96) − ( s + 1) + s + 1.We claim that if (cid:96) > d , then the algebraic set V s +1 ( ¯ H [ λ ] , ¯ f [ λ ] ) does not have any isolatedpoint. Indeed, in this case, we pointed out above that the columns of indices 1 to (cid:96) − d in ¯ H [ λ ] are identically zero. After discarding these zero-columns from ¯ H [ λ ] , we obtain a matrix L [ λ ] of dimension ( s + 1) × d such that V s +1 ( ¯ H [ λ ] , ¯ f [ λ ] ) = V s +1 ( L [ λ ] , ¯ f [ λ ] ), and using Remark 4.2with p = s + 1 , q = d, τ = s and m ≥ (cid:96) shows that this algebraic set has no isolated points.Thus, let us now assume that (cid:96) ≤ d . The matrix ¯ H [ λ ] has weighted column degrees( δ , . . . , δ (cid:96) ) = ( d − (cid:96), . . . , d − f [ λ ] isat most d . To estimate the runtime of Isolated Points ( ¯ H [ λ ] , ¯ f [ λ ] ), we will need the followingproperty. 24 emma 4.3. Let κ be defined as in (18) with m = (cid:96) , τ = s , p = s + 1 , q = (cid:96) , ( δ , . . . , δ (cid:96) ) =( d − − (cid:96), . . . , d − , and ( γ , . . . , γ s ) = ( d, . . . , d ) . Then, for partitions of length (cid:96) at most d , one has κ = d s η (cid:96) − s ( d − , . . . , d − (cid:96) ) . Proof. Without loss of generality, we reorder the weights w as w (cid:48) = ( w (cid:48) , . . . , w (cid:48) (cid:96) ) such that w (cid:48) ≤ · · · ≤ w (cid:48) (cid:96) .Take i = ( i , . . . , i (cid:96) − s ) ⊂ { , . . . , (cid:96) } , and let d i = ( d i , , . . . , d i ,(cid:96) ) be the sequence obtainedby reordering ( d, . . . , d, δ i , . . . , δ i (cid:96) − s ) in non-decreasing order; we first compute the value of κ i from (18). If d i , = 0 (which can happen only if (cid:96) = d ), then κ i = 0. Otherwise, thesequence d i starts with d i , ≥ (cid:96) − s , after which it keeps the value d . On the other hand, the ordered sequence of weights never increases by more than 1, sothat for all k = 1 , . . . , (cid:96) , we have w (cid:48) k ≤ d i ,k . In this case, κ i = max ≤ k ≤ (cid:96) ( d i , · · · d i ,k w k +1 · · · w m ) = d i , · · · d i ,(cid:96) = d s δ i · · · δ i (cid:96) − s ;note that this equality also holds if d i , = 0, since then both sides vanish. Since κ = (cid:80) i = { i ,...,i (cid:96) − s }⊂{ ,...,q } κ i , we get κ = (cid:88) i = { i ,...,i (cid:96) − s }⊂{ ,...,(cid:96) } d s δ i · · · δ i (cid:96) − s = d s η (cid:96) − s ( d − , . . . , d − (cid:96) ) . (19)as claimed.The procedure Isolated Points (cid:0) ¯ f [ λ ] , ¯ H [ λ ] (cid:1) then uses the algorithm in Theorem 4.1 withinput (cid:0) ¯ f [ λ ] , ¯ H [ λ ] (cid:1) . Writing as before w λ = (cid:96) ! · · · (cid:96) r !, the quantities used in the theorembecome c λ = d s η (cid:96) − s ( d − , . . . , d − (cid:96) ) w λ , e λ = n ( d + 1) s η (cid:96) − s ( d, . . . , d − (cid:96) + 1) w λ ,κ λ = d s η (cid:96) − s ( d − , . . . , d − (cid:96) ) = w λ c λ . This implies that running Isolated Points (cid:0) ¯ f [ λ ] , ¯ H [ λ ] (cid:1) uses O ˜ (cid:0)(cid:0) c λ ( e λ + c λ ) + d c λ (cid:1) n Γ (cid:1) operations which is again in O ˜ (cid:0) d c λ ( e λ + c λ ) n Γ (cid:1) . As before, the number of solutions in the output is at most c λ .25 .3 Finishing the proof of Theorem 1.1 We can now finish estimating the runtime of the Critical Points Per Orbit Algorithm. Forpartitions of length s , at Step 2a, we only need to compute ¯ f [ λ ] which takes O ˜( n (cid:0) n + dd (cid:1) )operations in K as per Lemma 3.8. At Step 2b, the procedure Isolated Points ( ¯ f [ λ ] ) takesat most O ˜ ( d c λ ( e λ + c λ ) n Γ) operations in K , as we saw in Subsection 4.2. The outputof this procedure contains at most c λ points; then, by Lemma 2.16, the cost of the call to Decompose at Step 2c is O ˜( c λ n ), which is negligible compared to the previous costs.For partitions of length greater than s , computing ¯ f [ λ ] and ¯ H [ λ ] at Step 3a takes O ˜( n (cid:0) n + dd (cid:1) )operations in K , by Lemma 3.8. The procedure Isolated Points (cid:0) ¯ f [ λ ] , ¯ H [ λ ] (cid:1) at Step 3b requiresat most O ˜ ( d c λ ( e λ + c λ ) n Γ) operations in K , as we saw in Subsection 4.2. Again, sincethe number of solutions in the output is at most c λ , the cost of Decompose at Step 3c is still O ˜( c λ n ) which, as before, is negligible in comparison to the other costs. To complete ouranalysis, we need the following lemma. Lemma 4.4. With all notation being as above, the following holds (cid:88) λ (cid:96) n,(cid:96) λ ≥ s c λ ≤ c and (cid:88) λ (cid:96) n,(cid:96) λ ≥ s e λ ≤ e , where c = d s (cid:0) n + d − n (cid:1) and e = n ( d + 1) s (cid:0) n + dn (cid:1) .Proof. The proof relies on the combinatorics of integer partitions and properties of elemen-tary symmetric functions. Details are given in Appendix C.As a result, the total cost incurred by our calls to Isolated Points and Decompose is O ˜ (cid:18) c ( e + c ) n d (cid:18)(cid:18) n + dd (cid:19) + (cid:18) ns + 1 (cid:19)(cid:19)(cid:19) . Since (cid:0) n + dd (cid:1) ≤ ( n + 1) (cid:0) n + d − d (cid:1) , we will simplify this further, by noticing that for d ≥ e = n ( d + 1) s (cid:0) n + dn (cid:1) ≤ n ( n + 1) d s (cid:0) n + d − n (cid:1) = n ( n + 1) c so this is O ˜ (cid:18) c n d (cid:18)(cid:18) n + dd (cid:19) + (cid:18) ns + 1 (cid:19)(cid:19)(cid:19) . For the remaining operations, the total cost of Prepare F and Prepare F H is n (cid:88) λ (cid:96) n,(cid:96) λ ≥ s (cid:18) n + dd (cid:19) . Since (cid:0) n + dd (cid:1) ≤ ( n + 1) (cid:0) n + d − d (cid:1) , the binomial term in the sum is in O ( n c ), so the totalis O ( n c ), and can be neglected. Similarly, the cost of Remove Duplicates is negligible.Therefore, the total complexity of Critical Points Per Orbit is then in O ˜ (cid:32) n d s +2 (cid:18) n + dd (cid:19) (cid:18)(cid:18) n + dd (cid:19) + (cid:18) ns + 1 (cid:19)(cid:19)(cid:33) ⊂ (cid:18) d s (cid:18) n + dd (cid:19)(cid:18) ns + 1 (cid:19)(cid:19) O (1) . Finally, the total number of solutions reported by our algorithm is at most (cid:80) λ (cid:96) n,(cid:96) λ ≥ s c λ ,which itself is at most c . 26 Experimental results In this section, we report on an implementation and set of experimental runs supporting theresults in this paper. We compare our Critical Points Per Orbit algorithm from Section 3.2with a naive algorithm which computes a zero-dimensional parametrization of V ( I ), where I is the ideal generated by f and the ( s + 1)-minors of Jac( f , φ ). Since no implementationof the weighted sparse determinantal homotopy algorithm is available at the moment, bothalgorithms use Gr¨obner bases computations to solve polynomial systems. Furthermore,using Gr¨obner bases computations is sufficient to see the advantage of our algorithm whenthe symmetric structure is exploited in our algorihm.Our experiments are run using the Maple computer algebra system running on a computerwith 16 GB RAM; the Gr¨obner basis computation in Maple uses the implementation of the F and FGLM algorithms from the FGb package [13]. The symmetric polynomials f and φ are chosen uniformly at random in K [ x , . . . , x n ], with K = GF(65521), and have the samedegree n as the number of variables, that is, deg( f ) = · · · = deg( f s ) = deg( φ ) = n ; thenumber s of equations f ranges from 2 to n − D , that we compute using our algorithm; that is, D is the sum of thedegrees deg( R λ ) that we obtain for all partitions λ of length at least s . The next column is (cid:6) (cid:80) (cid:96) λ ≥ s c λ (cid:7) , which is an upper bound on D (here, c λ is as in Subsection 4.2); as we can see,this bound is quite sharp in general. We next give the upper bound c from (2), which weproved in Lemma 4.4. While this bound is sufficient to prove asymptotic results (for fixedinput degree, for instance, see the discussion in the introduction), we see that it is far fromsharp.Finally, we give the number of points deg( I ) computed by the naive algorithm, togetherwith the upper bound ˜ c from (3); in some cases, we did not complete computations withthe naive algorithm, so deg( I ) was unavailable. We see that in all cases, the output of ouralgorithm is significantly smaller than the one from the direct approach. n s D (cid:6) (cid:80) (cid:96) λ ≥ s c λ (cid:7) c deg( I ) ˜ c R λ ) obtained by our algorithm, togetherwith their degrees; Time( total ) denotes the total time spent in our algorithm. On theother hand, Time( naive ) is the time to compute a zero-dimensional parametrization for thealgebraic set V ( I ) using the naive algorithm. Experiments are stopped once the computationhas gone past 24 hours, with the corresponding time marked with a dash.In our experiments, the output R λ was always empty for partitions of length less than s .Indeed, for any partition λ of length at most s − Z ( R λ ) = V ( ¯ f [ λ ]1 , . . . , ¯ f [ λ ] s ), where the ¯ f [ λ ] i are s polynomials in less than s variables derived from the input f . Since the polynomials f are chosen at random, the evaluated block symmetric polynomials f [ λ ]1 , . . . , f [ λ ] s are generic.Using [31, Proposition 2.1.(ii)] or modifiying slightly the proof of [31, Proposition 4.5], weindeed expect Z ( R λ ) to be empty for such partitions λ of length less than s . However, wepoint out that this output can be non-trivial in the general, non-generic case. In this paper we have provided a new algorithm for efficiently describing the critical pointset of a function φ a variety V ( f ) with φ and the defining functions of the variety allsymmetric. The algorithm takes advantage of the symmetries and lower bounds for describingthe generators of the set of critical points and as a result is more efficient than previousapproaches.When f = ( f , . . . , f s ) ⊂ R [ x , . . . , x n ], with R is a real field, then computing the criticalpoints of polynomial maps restricted to V ( f ) finds numerous applications in computationalreal algebraic geometry. In particular such computations provide an effective Morse-theoreticapproach to many problems such as real root finding, quantifier elimination or answeringconnectivity queries (see [2]). We view the complexity estimates in this paper as a possiblefirst step towards better algorithms for studying real algebraic sets defined by S n -invariantpolynomials.For instance, let d be the maximum degree of the entries in f = ( f , . . . , f s ) and assumethat f generates an ( n − s )-equidimensional ideal whose associated algebraic set is smooth.Then under these assumptions, we observe that the set W ( φ u , V ( f )) with φ u : ( x , . . . , x n ) → ( x − u ) + · · · + ( x n − u ) and u ∈ R , has a non-empty intersection with all connected components of V ( f ) ∩ R n .Hence, when W ( φ u , f ) is finite for a generic choice of u , then one can use our algorithm todecide whenever V ( f ) ∩ R n is empty. This is done in time polynomial in d s , (cid:0) n + dd (cid:1) , (cid:0) ns +1 (cid:1) .In such cases, for d, s fixed, we end up with a runtime which is polynomial in n as in[42, 36, 37]. These latter references are restricted to situations when d < n is fixed. Ifnow, one takes families of systems where d = n and s is fixed, we obtain a runtime which ispolynomial in 2 n . This is an exponential speed-up with the best previous possible alternativeswhich run in time 2 O ( n log( n )) as in for example [2, Chap. 13] (but note that these algorithmsare designed for general real algebraic sets). 28 s Partition( λ ) Time( R λ ) deg( R λ ) (cid:100) c λ (cid:101) Time( total ) Time( naive ) deg( I )4 2 λ = (1 ) λ = (1 ) λ = (2 ) λ = (1 ) 1.524s0.684s0.200s0.380s 748816 848816 3.136s 0.905s 8564 3 λ = (1 ) λ = (1 ) 2.497s0.772s 1532 1632 4.468s 0.577s 7445 2 λ = (1 ) λ = (1 ) λ = (1 λ = (1 ) λ = (1 ) λ = (2 ) 9.236s6.832s2.128s2.816s0.316s0.392s 91421121122525 111461131132525 34.944s 2143.144s 155755 3 λ = (1 ) λ = (1 ) λ = (1 λ = (1 ) 18.829s18.120s4.607s5.316s 312026262 372096363 48.019s 3423.660s 187605 4 λ = (1 ) λ = (1 ) 17.080s12.024s 4499 53105 37.372s 969.396s 111606 2 λ = (1 ) λ = (1 ) λ = (1 λ = (1 ) λ = (2 ) λ = (1 ) λ = (1 ) λ = (1 ) λ = (2 ) λ = (3 ) 44.979s94.240s110.615s413.351s7.241s15.208s92.589s0.756s1.072s0.956s 1333442663972216432363618 1433842663972216432363618 861.888s - -6 3 λ = (1 ) λ = (1 ) λ = (1 λ = (1 ) λ = (2 ) λ = (1 ) λ = (1 ) 92.881s773.924s114.064s495.432s7.356s9.236s17.908s 6375650475636108216 6876550475636108216 1658.071s - -6 4 λ = (1 ) λ = (1 ) λ = (1 λ = (1 ) 98.312s591.78s26.196s46.420s 142800216324 153810216324 842.256s - -6 5 λ = (1 ) λ = (1 ) 154.808s121.768s 150320 162324 251.752s - - Table 2: Algorithm Timings29btaining an algorithm to decide whether V ( f ) ∩ R n is empty in time polynomial in d s , (cid:0) n + dd (cid:1) , (cid:0) ns +1 (cid:1) , without assuming that W ( φ u , f ) is finite for a generic u ∈ R , is still an openproblem. Acknowledgements. G. Labahn is supported by the Natural Sciences and EngineeringResearch Council of Canada (NSERC), grant number RGPIN-2020-04276. ´E. Schost issupported by an NSERC Discovery Grant. T.X. Vu is supported by a labex CalsimLabfellowship/scholarship. The labex CalsimLab, reference ANR-11-LABX-0037-01, is fundedby the program “Investissements d’avenir” of the Agence Nationale de la Recherche, referenceANR-11-IDEX-0004-02. M. Safey El Din and T.X. Vu are supported by the ANR grantsANR-18-CE33-0011 Sesame , ANR-19-CE40-0018 De Rerum Natura and ANR-19-CE48-0015 ECARP , the PGMO grant CAMiSAdo and the European Union’s Horizon 2020research and innovation programme under the Marie Sklodowska-Curie grant agreement N.813211 ( POEMA ). References [1] M.-E. Alonso, E. Becker, M.-F. Roy, and T. W¨ormann. Zeros, multiplicities, and idem-potents for zero-dimensional systems. In Algorithms in Algebraic Geometry and Appli-cations , pages 1–15. Springer, 1996.[2] S. Basu, R. Pollack, and M.-F. Roy. Algorithms in Real Algebraic Geometry (Algorithmsand Computation in Mathematics) . Springer-Verlag, Berlin, Heidelberg, 2006.[3] G. Birkhoff. Lattice Theory . American Mathematical Society, 1967.[4] M. Bl¨aser and G. Jindal. On the Complexity of Symmetric Polynomials. In A. Blum,editor, ,volume 124 of Leibniz International Proceedings in Informatics (LIPIcs) , pages 47:1–47:14, Dagstuhl, Germany, 2018. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik.[5] A. Bompadre, G. Matera, R. Wachenchauzer, and A. Waissbein. Polynomial equationsolving by lifting procedures for ramified fibers. Theoretical Computer Science , 315(2-3):335–369, May 2004.[6] J. Canny, E. Kaltofen, and Y. Lakshman. Solving systems of non-linear polynomialequations faster. In Proceedings of the 1989 International Symposium on Symbolic andAlgebraic Computation , ISSAC’89, pages 121–128. ACM, 1989.[7] A. Colin. Solving a system of algebraic equations with symmetries. Journal of Pureand Applied Algebra , 117-118:195 – 215, 1997.[8] D. A. Cox, J. Little, and D. O’Shea. Ideals, Varieties, and Algorithms: An Introductionto Computational Algebraic Geometry and Commutative Algebra, 3rd ed. Springer-Verlag New York, Inc., Secaucus, NJ, USA, 2007.309] H. Derksen and G. Kemper. Computational Invariant Theory . Invariant Theory andAlgebraic Transformation Groups, I. Springer-Verlag, Berlin, 2002. Encyclopedia ofMathematical Sciences, 130.[10] J. A. Eagon and D. G. Northcott. Ideals defined by matrices and a certain complexassociated with them. Proceedings of the Royal Society of London A: Mathematical,Physical and Engineering Sciences , 269(1337):188–204, 1962.[11] D. Eisenbud. Commutative Algebra: with a View Toward Algebraic Geometry . GraduateTexts in Mathematics. Springer, New York, Berlin, Heildelberg, 1995.[12] N.-E. Fahssi. Polynomial triangles revisited. https://arxiv.org/abs/1202.0228 ,2012.[13] J.-C. Faug`ere. FGb: A Library for Computing Gr¨obner Bases. In Komei Fukuda,Joris Hoeven, Michael Joswig, and Nobuki Takayama, editors, Mathematical Software- ICMS 2010 , volume 6327 of Lecture Notes in Computer Science , pages 84–87, Berlin,Heidelberg, September 2010. Springer Berlin / Heidelberg.[14] J.-C. Faug`ere, M. Hering, and J. Phan. The membrane inclusions curvature equations. Advances in Applied Mathematics , 31(4):643 – 658, 2003.[15] J.-C. Faug`ere and S. Rahmany. Solving systems of polynomial equations with symme-tries using SAGBI-Gr¨obner bases. In Proceedings of the 2009 International Symposiumon Symbolic and Algebraic Computation , ISSAC ’09, pages 151–158, New York, NY,USA, 2009. ACM.[16] J.-C. Faug`ere, M. Safey El Din, and P.-J. Spaenlehauer. Critical points and Gr¨obnerbases: The unmixed case. In Proceedings of the 2012 International Symposium onSymbolic and Algebraic Computation , ISSAC ’12, pages 162–169, New York, NY, USA,2012. ACM.[17] J.-C. Faug`ere and J. Svartz. Solving polynomial systems globally invariant under anaction of the symmetric group and application to the equilibria of n vortices in theplane. In Proceedings of the 2012 International Symposium on Symbolic and AlgebraicComputation , ISSAC ’12, pages 170–178, New York, NY, USA, 2012. ACM.[18] J. V. Z. Gathen and J. Gerhard. Modern Computer Algebra . Cambridge UniversityPress, New York, NY, USA, 2 edition, 2003.[19] P. Gianni and T. Mora. Algebraic solution of systems of polynomial equations usingGr¨obner bases. In AAECC , volume 356 of LNCS , pages 247–257. Springer, 1989.[20] M. Giusti, J. Heintz, J.-E. Morais, J. Morgenstern, and L.-M. Pardo. Straight-line pro-grams in geometric elimination theory. Journal of Pure and Applied Algebra , 124:101–146, 1998. 3121] M. Giusti, J. Heintz, J.-E. Morais, and L.-M. Pardo. When polynomial equation systemscan be solved fast? In AAECC-11 , volume 948 of LNCS , pages 205–231. Springer, 1995.[22] M. Giusti, G. Lecerf, and B. Salvy. A Gr¨obner-free alternative for polynomial systemsolving. Journal of Complexity , 17(1):154–211, 2001.[23] J.D. Hauenstein, M. Safey El Din, ´E. Schost, and T.X. Vu. Solving determinantalsystems using homotopy techniques. 2019.[24] J. Heintz, G. Jeronimo, J. Sabia, and P. Solerno. Intersection theory and deformationalgorithms: the multi-homogeneous case, 2002.[25] J. Heintz, T. Krick, S. Puddu, J. Sabia, and A. Waissbein. Deformation techniques forefficient polynomial equation solving. Journal of Complexity , 16(1):70 – 109, 2000.[26] M. I. Herrero, G. Jeronimo, and J. Sabia. Computing isolated roots of sparse polynomialsystems in affine space. Theoretical Computer Science , 411(44):3894 – 3904, 2010.[27] M. I. Herrero, G. Jeronimo, and J. Sabia. Affine solution sets of sparse polynomialsystems. Journal of Symbolic Computation , 51:34 – 54, 2013. Effective Methods inAlgebraic Geometry.[28] M. I. Herrero, G. Jeronimo, and J. Sabia. Elimination for generic sparse polynomialsystems. Discrete & Computational Geometry , 51(3):578–599, 2014.[29] G. Jeronimo, G. Matera, P. Solern´o, and A. Waissbein. Deformation techniques forsparse systems. Foundations of Computational Mathematics , 9(1):1–50, February 2009.[30] L. Kronecker. Grundz¨uge einer arithmetischen Theorie der algebraischen Gr¨ossen. Jour-nal f¨ur die Reine und Angewandte Mathematik , 92:1–122, 1882.[31] G. Labahn, M. Safey El Din, ´E. Schost, and T.X. Vu. Homotopy techniques for solutionof sparse determinantal ideals. 2020.[32] G. Lecerf and ´E. Schost. Fast multivariate power series multiplication in characteristiczero. SADIO Electronic Journal on Informatics and Operations Research , 5(1):1–10,September 2003.[33] I. G. Macdonald. Symmetric functions and Hall polynomials . Oxford university press,1998.[34] J. Nie and K. Ranestad. Algebraic degree of polynomial optimization. SIAM Journalon Optimization , 20(1):485–502, April 2009.[35] A. Poteaux and ´E. Schost. On the complexity of computing with zero-dimensionaltriangular sets. Journal of Symbolic Computation , 50:110–138, 2013.3236] C. Riener. On the degree and half-degree principle for symmetric polynomials. Journalof Pure and Applied Algebra , 216(4):850 – 856, 2012.[37] C. Riener. Symmetric semi-algebraic sets and non-negativity of symmetric polynomials. Journal of Pure and Applied Algebra , 220(8):2809 – 2815, 2016.[38] F. Rouillier. Solving zero-dimensional systems through the Rational Univariate Repre-sentation. Applicable Algebra in Engineering, Communication and Computing , 9(5):433–461, 1999.[39] M. Safey El Din and ´E. Schost. Bit complexity for multi-homogeneous polynomial sys-tem solving - application to polynomial minimization. Journal of Symbolic Computation ,87:176–206, 2018.[40] P.-J. Spaenlehauer. On the complexity of computing critical points with Gr¨obner bases. SIAM Journal on Optimization , 24(3):1382–1401, 2014.[41] B. Sturmfels. Algorithms in Invariant Theory . Springer-Verlag, Berlin, Heidelberg,1993.[42] V. Timofte. On the positivity of symmetric polynomial functions.: Part i: Generalresults. Journal of Mathematical Analysis and Applications , 284(1):174 – 190, 2003. A Proof of Proposition 2.4 The proof of Proposition 2.4 will be done in stages. We start with some rather straightforwardlemmas. Lemma A.1. Consider an S λ -equivariant sequence q = ( q , . . . , q (cid:96) ) in K [ Z , . . . , Z r ] . Then,for any I ⊂ { , . . . , (cid:96) } and any σ in S λ , we have σ ( q I ) = q σ ( I ) .Proof. By induction on the size of I . Lemma A.2. Consider a sequence q = ( q , . . . , q (cid:96) ) in K [ Z , . . . , Z r ] , and suppose that(i) z i − z j divides q i − q j for ≤ i < j ≤ (cid:96) ,(ii) q is S λ -equivariant.Then, for k in { , . . . , r } and s in { , . . . , (cid:96) k } , the polynomial (cid:80) τ k + si = τ k +1 q { i,τ k + s +1 ,...,(cid:96) } is in-variant under any permutation of { z τ k +1 , . . . , z τ k + s } .Proof. For any σ ∈ S λ permuting only { z τ k +1 , . . . , z τ k + s } , we have, using the previous lemma, σ (cid:0) τ k + s (cid:88) i =1 q { i,τ k + s +1 ,...,(cid:96) } (cid:1) = τ k + s (cid:88) i = τ k +1 σ (cid:0) q { i,τ k + s +1 ,...,(cid:96) } (cid:1) = τ k + s (cid:88) i = τ k +1 q { σ ( i ) ,τ k + s +1 ,...,(cid:96) } . Since σ permutes { z τ k +1 , . . . , z τ k + s } and the last sum runs over all i = τ k + 1 , . . . , τ k + s , itequals (cid:80) τ k + si = τ k +1 q { i,τ k + s +1 ,...,(cid:96) } . 33e can now prove the proposition. The fact that all entries of p are polynomials followsfrom our first assumption. Proving that they are S λ -invariant requires more work, as wehave to deal with numerous cases. While most are straightforward, the last case does involvenontrivial calculations.Fix k ∈ { , . . . , r − } . We first prove that for s in { , . . . , (cid:96) k +1 } , i in { τ k + 1 , . . . , τ k + s } , and m in { , . . . , r − } , with m (cid:54) = k , then the term q { i,τ k + s +1 ,...,τ r } is symmetric in { z τ m +1 , . . . , z τ m +1 } . Indeed, consider a permutation σ ∈ S λ that acts on { z τ m +1 , . . . , z τ m +1 } only. By Lemma A.1, σ ( q { i,τ k + s +1 ,...,τ r } ) is equal to q { σ ( i ) ,σ ( τ k + s +1) ,...,σ ( τ r ) } . If m < k , then allindices i, τ k + s +1 , . . . , τ r are left invariant by σ while for m > k , [ σ ( i ) , σ ( τ k + s +1) , . . . , σ ( τ r )]is a permutation of [ i, τ k + s + 1 , . . . , τ r ]. In both cases, q { σ ( i ) ,σ ( τ k + s +1) ,...,σ ( τ r ) } = q { i,τ k + s +1 ,...,τ r } ,as claimed.Consider first the invariance of p τ k +1 . By Lemma A.2, the sum (cid:80) τ k +1 i = τ k +1 q { i,τ k +1 +1 ,...,τ r } issymmetric in { z τ k +1 , . . . , z τ k +1 } . Next, for i in { τ k + 1 , . . . , τ k +1 } and m in { , . . . , r − } ,with m (cid:54) = k , each term q { i,τ k +1 +1 ,...,τ r } is symmetric in { z τ m +1 , . . . , z τ m +1 } , making use of theprevious paragraph with s = (cid:96) k +1 . As a result, p τ k +1 is S λ -invariant.Next, for j in { , . . . , (cid:96) k +1 − } and σ in S λ , we prove that σ ( p τ k + j ) = p τ k + j . Assume firstthat σ acts only on { z τ m +1 , . . . , z τ m +1 } , for some m in { , . . . , r − } with m (cid:54) = k . For s in { , . . . , j } , the polynomial η j − s ( z τ k + s +2 , . . . , z τ k +1 ) depends only on { z τ k +1 , . . . , z τ k +1 } and sois σ -invariant. Using our earlier argument we see that for i in { τ k + 1 , . . . , τ k + s } the divideddifference q { i,τ k + s +1 ,...,τ r } is σ -invariant. As a result, p τ k + j itself is σ -invariant.It remains to prove that p τ k + j is σ -invariant for a permutation σ of { τ k + 1 , . . . , τ k +1 } .We do this first for σ = ( τ k + 1 , τ k + 2), by proving that all summands in the definitionof p τ k + j are σ -invariant. For any s in { , . . . , j } , η j − s ( z τ k + s +2 , . . . , z τ k +1 ) does not dependon ( z τ k +1 , z τ k +2 ), so it is σ -invariant. For s in { , . . . , j } , the sum (cid:80) τ k + si = τ k +1 q { i,τ k + s +1 ,...,τ r } issymmetric in ( τ k + 1 , τ k + 2), since σ just permutes two terms in the sum while for s = 1, q { τ k +1 ,τ k +2 ,...,τ r } is symmetric in ( z τ k +1 , z τ k +2 ) by Lemma A.1. Thus, our claim is proved for σ = ( τ k + 1 , τ k + 2).It remains to prove that p τ k + j is invariant in ( z τ k +2 , . . . , z τ k +1 ). For any t = 1 , . . . , j , set p τ k + j,t = j (cid:88) s = t η j − s ( z τ k + t +2 , . . . , z τ k +1 ) (cid:0) τ k + s (cid:88) i = τ k +1 q { i,τ k + s +1 ,...,τ r } (cid:1) . (20)Then p τ k + j = p τ k + j, and we have the recursive identity p τ k + j,t − = p τ k + j,t + η j − t +1 ( z τ k + t +1 , . . . , z τ k +1 ) (cid:0) τ k + t − (cid:88) i = τ k +1 q { i,τ k + t,...,τ r } (cid:1) . (21)For any t , set z : t = ( z τ k +1 , . . . , z τ k + t ) and z t : = ( z τ k + t , . . . , z τ k +1 ). We will show that for t = 1 , . . . , j , the polynomial p τ k + j,t satisfies: p τ k + j,t is block symmetric in z : t and z t +1: (22)Taking t = 1 implies that p τ k + j = p τ k + j, is symmetric in z = ( z τ k +2 , . . . , z τ k +1 ), as claimed.34o prove statement (22) we use decreasing induction on t = j, . . . , 1. The statement istrue when t = j since in this case p τ k + j,j = (cid:80) τ k + ji = τ k +1 q { i,τ k + j +1 ,...,τ r } , which is symmetric in z : j by Lemma A.2, while each summand q { i,τ k + j +1 ,...,τ r } is symmetric in z j +1: by Lemma A.1.Assume now that (22) is true for some index t in { , . . . , j } ; we show that it also holds for t − 1. That is, we have p τ k + j,t is block symmetric in z : t and z t +1: and need to show that p τ k + j,t − is block symmetric in z : t − and z t : .From Lemma A.2, we have that (cid:80) τ k + t − i = τ k +1 q { i,τ k + t,...,τ r } is symmetric in z : t − . Further-more, from our induction hypothesis, the polynomial p τ k + j,t is symmetric in z : t − , while η j − t +1 ( z τ k + t +1 , . . . , τ k +1 ) depends only on z t : . Thus, in view of (21), we see that p τ k + j,t − issymmetric in z : t − . It remains to prove that it is also symmetric in z t : .We will prove this by showing σ ( p τ k + j,t − ) = p τ k + j,t − for any σ = ( τ k + t + 1 , τ k + (cid:15) )with (cid:15) ∈ { t, t + 2 , . . . , (cid:96) k +1 } . For any such σ with t + 2 ≤ (cid:15) ≤ (cid:96) k +1 , our induction hypothesisimplies that σ ( p τ k + j,t ) = p τ k + j,t , while σ ( η j − t +1 ( z τ k + t +1 , . . . , τ k +1 )) = η j − t +1 ( z τ k + t +1 , . . . , τ k +1 )and σ (cid:0) q { i,τ k + t,...,τ r } (cid:1) = q { i,τ k + t,...,τ r } hold for all i . Together with (21), we get σ ( p τ k + j,t − ) = p τ k + j,t − . Finally, if σ = ( τ k + t + 1 , τ k + t ), then we have σ ( η j − t +1 ( z τ k + t +1 , . . . , τ k +1 )) = η j − t +1 ( z τ k + t , z τ k + t +2 , . . . , τ k +1 )and σ (cid:0) q { i,τ k + t,...,τ r } (cid:1) = q { i,τ k + t,...,τ r } for all i = τ k + 1 , . . . , τ k + t − 1. Notice that η j − t +1 ( z τ k + t , z τ k + t +2 , . . . , τ k +1 ) − η j − t +1 ( z τ k + t +1 , . . . , τ k +1 ) = ( z τ k + t − z τ k + t +1 ) η j − t ( z τ k + t +2 , . . . , z τ k +1 ) . Therefore, σ ( p τ k + j,t − ) − p τ k +ˆ ı,t − = σ ( p τ k + j,t ) − p τ k + j,t + ( z τ k + t − z τ k + t +1 ) η j − t ( z τ k + t +2 , . . . , z τ k +1 ) (cid:0) τ k + t − (cid:88) i = τ k +1 q { i,τ k + t,...,τ r } (cid:1) = σ ( p τ k + j,t ) − p τ k + j,t + η j − t ( z τ k + t +2 , . . . , z τ k +1 ) (cid:0) τ k + t − (cid:88) i = τ k +1 ( q { i,τ k + t +1 ,τ k + t +2 ,...,τ r } − q { i,τ k + t,τ k + t +2 ,...,τ r } ) (cid:1) , (23)where the last equality follows from the definition of divided differences. In particular, σ ( p τ k + j,j − ) − p τ k + j,j − = σ ( p τ k + j,j ) − p τ k + j,j + τ k + j − (cid:88) i = τ k +1 ( q { i,τ k + j +1 ,...,τ r } − q { i,τ k + j,τ k + j +2 ,...,τ r } ) . In addition, since p τ k + j,j = (cid:80) τ k + ji = τ k +1 q { i,τ k + j +1 ,...,τ r } , then when σ = ( τ k + j + 1 , τ k + j ), wehave σ ( p τ k + j,j ) − p τ k + j,j = (cid:80) τ k + j − i = τ k +1 ( q { i,τ k + j,τ k + j +2 ,...,τ r } − q { i,τ k + j +1 ,...,τ r } ). This implies that σ ( p τ k + j,j − ) − p τ k + j,j − = 0.When t ≤ j − 1, from (21), taken at index t + 1, if σ = ( τ k + t + 1 , τ k + t ), we also have σ ( p τ k + j,t ) = σ ( p τ k + j,t +1 ) + η j − t ( z τ k + t +2 , . . . , z τ k +1 ) (cid:0) τ k + t − (cid:88) i = τ k +1 q { i,τ k + t,τ k + t +2 ,...,τ r } + q { τ k + t,τ k + t +1 ,...,τ k +1 } (cid:1) . σ ( p τ k + j,t ) − p τ k + j,t = σ ( p τ k + j,t +1 ) − p τ k + j,t +1 + η j − t ( z τ k + t +2 , . . . , z τ k +1 ) (cid:0) τ k + t − (cid:88) i = τ k +1 ( q { i,τ k + t,τ k + t +2 ,...,τ r } − q { i,τ k + t +1 ,...,τ r } ) (cid:1) and so σ ( p τ k + j,t +1 ) − p τ k + j,t +1 = σ ( p τ k + j,t ) − p τ k + j,t + η j − t ( z τ k + t +2 , . . . , z τ k +1 ) (cid:0) τ k + t − (cid:88) i = τ k +1 ( q { i,τ k + t +1 ,...,τ r } − q { i,τ k + t,τ k + t +2 ,...,τ r } ) (cid:1) . (24)Combining (23) and (24) gives σ ( p τ k + j,t − ) − p τ k + j,t − = σ ( p τ k + j,t +1 ) − p τ k + j,t +1 . By induction,we have that p τ k + j,t +1 is symmetric in z : t +1 and so σ ( p τ k + j,t +1 ) = p τ k + j,t +1 for σ = ( τ k + t +1 , τ k + t ) which in turn implies that σ ( p τ k + j,t − ) = p τ k + j,t − . This gives our result. B Proof of Proposition 2.5 Define the row vector h = (cid:0) h τ +1 , . . . , h τ , . . . , h τ r − +1 , . . . , h τ r (cid:1) where, for k = 0 , . . . , r − j = 1 , . . . , (cid:96) k +1 , h τ k + j = τ k + j (cid:88) i = τ k +1 q { i,τ k + j +1 ,...,τ r } . (25)Then for all i = 1 , . . . , m , k = 0 , . . . , r − p τ k + (cid:96) k +1 = h τ k + (cid:96) k +1 , and for j = 1 , . . . , (cid:96) k +1 − p τ k + j = j (cid:88) s =1 η j − s ( z τ k + s +2 , . . . , z τ k +1 ) h τ k + s . Then h = p M , where we recall that M is the block-diagonal matrix with blocks M , . . . , M r where M k +1 = η ( z τ k +3 , . . . , z τ k +1 ) η ( z τ k +3 , . . . , z τ k +1 ) · · · η (cid:96) k +1 − ( z τ k +3 , . . . , z τ k +1 ) 00 1 η ( z τ k +4 , . . . , z τ k +1 ) · · · η (cid:96) k +1 − ( z τ k +4 , . . . , z τ k +1 ) 00 0 1 · · · η (cid:96) k +1 − ( z τ k +5 , . . . , z τ k +1 ) 0... ... ... ... ...0 0 0 · · · · · · . M ) = 1 and N = M − is also a polynomial matrix in K [ Z ] with det( N ) = 1.We construct a matrix J which defines the column operations converting h into q asfollows. Recall that for k = 0 , . . . , r − j = 1 , . . . , (cid:96) k +1 , we have defined the following τ r × τ r polynomial matrices. Set B τ +1 = I τ r , C τ +1 = I τ r , D τ + j = I τ r , and B τ k + j = I τ k k,j 00 0 I τ r − τ k +1 , with E k,j = I j − z τ k + j − z τ k +1 ... z τ k + j − z τ k + j − . . . − I (cid:96) k +1 − j ; C τ k + j = I τ k k,j 00 0 I τ r − τ k +1 , with F k,j = diag ( z τ k + j − z τ k + t ) j − t =1 − j . . . − j − j I (cid:96) k +1 − j ; D τ k + j = diag ( z τ k + j − z t ) τ k t =1 k,j I (cid:96) k +1 00 0 I τ r − τ k +1 , G k,j : j th row is (1 , . . . , . Let J = r − (cid:89) k =0 (cid:96) k +1 (cid:89) j =1 B τ k + j C τ k + j D τ k + j ∈ K [ Z , . . . , Z r ] τ r × τ r . We will prove that this matrix satisfies q = h J . Note first that, for k = 0 , . . . , r − j = 1 , . . . , (cid:96) k +1 we have det( B τ k + j ) = det( E k,j ) = − 1, det( C τ k + j ) = det( F k,j ) = − j (cid:81) j − t =1 ( z τ k + j − z t ), and det( D τ k + j ) = (cid:81) τ k t =1 ( z τ k + j − z t ). This implies thatdet( J ) = α r − (cid:89) k =0 (cid:96) k +1 (cid:89) j =1 j − (cid:89) t =1 ( z τ k + j − z t ) τ k (cid:89) t =1 ( z τ k + j − z t ) = α ∆ for some α ∈ K (cid:54) =0 . Define U = N J . Then p = q U , and det( U ) is a unit in K [ Z , . . . , Z r , / ∆], as claimed.It remains to prove q = h J . For s = 0 , . . . , τ r , define q s = (cid:0) q { ,s +1 ,...,τ r } . . . q { s,s +1 ,...,τ r } h s +1 . . . h τ r (cid:1) , so that for s = 0 we have q = h , whereas for s = τ r we have q τ r = q . We prove thefollowing: for k in { , . . . , r − } and j in { , . . . , (cid:96) k } , q τ k + j = q τ k + j − B τ k + j C τ k + j D τ k + j . (26)Our claim q = h J then follows from a direct induction, taking into account the values of q and q τ r given above. 37ake k in { , . . . , r − } and j in { , . . . , (cid:96) k } . Right-multiplying q τ k + j − by B τ k + j onlyaffects the entry at index τ k + j . It replaces h τ k + j by j − (cid:88) i =1 q { τ k + i,τ k + j,...,τ r } ( z τ k + j − z τ k + i ) − h τ k + j . Using the defining relation of divided differences, we get q { τ k + i,τ k + j,...,τ r } ( z τ k + j − z τ k + i ) = q { τ k + i,τ k + j +1 ,...,τ r } − q { τ k + j,τ k + j +1 ,...,τ r } . With the definition of h τ k + j in (25), the new entry at index τ k + j simplifies as − jq { τ k + j,τ k + j +1 ,...,τ r } .When we multiply the resulting vector by C τ k + j , we affect only entries from indices τ k + 1to τ k + j . More precisely, the previous relation shows that we obtain the vector (cid:0) q { ,τ k + j,...,τ r } . . . q { τ k ,τ k + j,...,τ r } q { τ k +1 ,τ k + j +1 ,...,τ r } . . . q { τ k + j,τ k + j +1 ,...,τ r } h τ k + j +1 . . . h τ r (cid:1) . Finally, right-multiplication by D τ k + j affects entries of indices 1 , . . . , τ k . For i = 1 , . . . , τ k , itreplaces q { i,τ k + j,...,τ r } by q { i,τ k + j,...,τ r } ( z τ k + j − z i ) + q { τ k + j,τ k + j +1 ,...,τ r } = q { i,τ k + j +1 ,...,τ r } . Thus, the resulting vector is (cid:0) q { ,τ k + j +1 ,...,τ r } . . . q { τ k ,τ k + j +1 ,...,τ r } q { τ k +1 ,τ k + j +1 ,...,τ r } . . . q { τ k + j,τ k + j +1 ,...,τ r } h τ k + j +1 . . . h τ r (cid:1) which is precisely q τ k + j , as claimed in (26). C Proof of Lemma 4.4 To simplify our notation, for all 1 ≤ s ≤ (cid:96) , we abbreviate η (cid:96) − s ( d − , . . . , d − (cid:96) ) to g (cid:96) − s . Then,we claim that one has g (cid:96) − s < d ( d − · · · ( d − (cid:96) + 1) . Indeed, let f ( t ) = ( t + d − t + d − · · · ( t + d − (cid:96) ), so that f (1) = d ( d − · · · ( d − (cid:96) + 1).From Vieta’s formula we have f ( t ) = (cid:96) (cid:88) s =0 g (cid:96) − s t s and so we also have f (1) = (cid:80) (cid:96)s =0 g (cid:96) − s . Therefore, d ( d − · · · ( d − (cid:96) + 1) = (cid:96) (cid:88) s =0 g (cid:96) − s and so g (cid:96) − s < d ( d − · · · ( d − (cid:96) + 1) for all 1 ≤ s ≤ (cid:96) .38ow, for any partition λ = ( n (cid:96) . . . n (cid:96) r r ) (cid:96) n of length (cid:96) λ , we have c λ = d s g (cid:96) λ − s w λ with w λ = r (cid:89) i =1 (cid:96) i != d s (cid:96) λ ! (cid:81) ri =1 (cid:96) i ! g (cid:96) λ − s (cid:96) λ != d s h ( λ ) F d,(cid:96) λ ,s , where h ( λ ) = (cid:96) λ ! (cid:81) ri =1 (cid:96) i ! = (cid:0) (cid:96) λ (cid:96) ,...,(cid:96) r (cid:1) and F d,(cid:96) λ ,s = g (cid:96)λ − s (cid:96) λ ! . From our previous inequality we have F d,(cid:96) λ ,s ≤ d ( d − · · · ( d − (cid:96) λ + 1) (cid:96) λ ! = (cid:18) d(cid:96) λ (cid:19) and so (cid:88) λ (cid:96) n, (cid:96) λ ≥ s c λ ≤ d s (cid:32) (cid:88) λ (cid:96) n, (cid:96) λ ≥ s h ( λ ) (cid:18) d(cid:96) λ (cid:19)(cid:33) . (27)Let a be a sequence of m + 1 numbers ( a , a , . . . , a m ) and let p a ( t ) = (cid:80) mi =0 a i t i be itsgenerating polynomial. The polynomial coefficients associated to a are defined by (cid:18) kn (cid:19) a = (cid:40) [ t n ] ( p a ( t ) k ) , if 0 ≤ n ≤ mk , if n < n > mk where [ t n ] (cid:80) i c i t i = c n is the coefficient of t n in the series (cid:80) i c i t i . For any partition λ of n ,let further λ (cid:48) be its conjugate partition. By [12, Lemma 2.1], we have (cid:18) kn (cid:19) a = (cid:88) λ (cid:96) n,(cid:96) λ (cid:48) ≤ n a k − (cid:96) λ (cid:48) h ( λ ) w a ( λ ) (cid:18) k(cid:96) λ (cid:19) , (28)where w a ( λ ) is the function w a ( λ ) = (cid:81) mi =1 a (cid:96) i i , and (cid:96) λ , (cid:96) λ (cid:48) are the respective lengths of λ and λ (cid:48) . If we consider m = n , a = (1 , . . . , 1) = and k = d , then equation (28) becomes (cid:18) dn (cid:19) = (cid:88) λ (cid:96) n,(cid:96) λ (cid:48) ≤ n h ( λ ) (cid:18) d(cid:96) λ (cid:48) (cid:19) . For any partition λ of n , the length of its conjugate satisfies (cid:96) λ (cid:48) ≤ n and so[ t n ](1 + t + · · · + t n ) d = (cid:18) dn (cid:19) = (cid:88) λ (cid:96) n h ( λ ) (cid:18) d(cid:96) λ (cid:19) . (29)Furthermore,(1 + t + · · · + t n ) d = (1 − t n +1 ) d (1 − t ) d = (cid:16) d (cid:88) k =0 ( − k (cid:18) dk (cid:19) t ( n +1) k (cid:17)(cid:16) ∞ (cid:88) i =0 (cid:18) d + i − i (cid:19) t i (cid:17) , t n appears only when k = 0 and i = n . In other words,[ t n ] (1 + t + · · · + t n ) d = (cid:18) n + d − n (cid:19) . (30)Combining (27), (29) and (30), gives (cid:88) λ (cid:96) n, (cid:96) λ ≥ s c λ ≤ d s (cid:32)(cid:88) λ (cid:96) n h ( λ ) (cid:18) d(cid:96) λ (cid:19)(cid:33) ≤ d s (cid:18) n + d − n (cid:19) . We prove the inequality (cid:80) λ (cid:96) n, (cid:96) λ ≥ s e λ ≤ n ( d + 1) s (cid:0) n + dn (cid:1)(cid:1)