How to count the number of zeros that a polynomial has on the unit circle?
R. S. Vieira

TL;DR
This paper introduces a method to count the zeros of complex polynomials on the unit circle by transforming the problem into a real zero counting problem using Möbius transformations, applicable to various polynomial classes.
Contribution
It presents a novel approach that reduces the problem of counting zeros on the unit circle to counting real zeros, extending to special polynomial classes and applications.
Findings
Method applies to arbitrary complex polynomials
Effective for symmetric zero polynomials
Useful for Salem and Mahler measure polynomials
Abstract
The classical problem of counting the number of real zeros of a real polynomial was solved a long time ago by Sturm. The analogous problem of counting the number of zeros that a polynomial has on the unit circle is, however, still an open problem. In this paper, we show that the second problem can be reduced to the first one through the use of a suitable pair of M\"obius transformations - often called Cayley transformations - that have the property of mapping the unit circle onto the real line and vice versa. Although the method applies to arbitrary complex polynomials, we discuss in detail several classes of polynomials with symmetric zeros as, for instance, the cases of self-conjugate, self-adjoint, self-inversive, self-reciprocal and skew-reciprocal polynomials. Finally, an application of this method to Salem polynomials and to polynomials with small Mahler measure is also discussed.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
How to count the number of zeros that a polynomial has on the unit
circle?
R. S. Vieira
e-mail*:* [email protected] * orcid**: 0000-0002-8343-7106.*
Universidade Federal de São Carlos (UFSCar), Departamento de Matemática,
Rod. Washington Luís, Km. 235, SP-310, CEP. 13565-905, São Carlos, São Paulo, Brasil.
Abstract
The classical problem of counting the number of real zeros of a real polynomial was solved a long time ago by Sturm. The analogous problem of counting the number of zeros that a polynomial has on the unit circle is, however, still an open problem. In this paper, we show that the second problem can be reduced to the first one through the use of a suitable pair of Möbius transformations — often called Cayley transformations — that have the property of mapping the unit circle onto the real line and vice versa. Although the method applies to arbitrary complex polynomials, we discuss in detail several classes of polynomials with symmetric zeros as, for instance, the cases of self-conjugate, self-adjoint, self-inversive, self-reciprocal and skew-reciprocal polynomials. Finally, an application of this method to Salem polynomials and to polynomials with small Mahler measure is also discussed.
keywords:
Self-inversive polynomials, Self-reciprocal polynomials, Salem polynomials, Sturm theorem, Möbius transformations, Cayley transformations.
1 Methods for counting the number of real
zeros of real polynomials
The first exact method for counting the number of zeros that a real polynomial has on the real line (or in a given interval of the real line) was presented by Sturm in 1829 (see [1], p. 323). In its simplest form, Sturm algorithm works as follows: given a real polynomial of degree , let be two real numbers which are not a multiple zero of . Then, construct the so-called Sturm sequence111This is the classical Sturm sequence. For the definition of more general Sturm sequences, see [2]., whose elements are defined as follows:
[TABLE]
where is the derivative of , denotes the remainder of the polynomial division of by and is the integer determined from the condition that has degree zero. Now, let denote the number of sign variations in the sequence for . Then, Sturm showed that the number of distinct zeros of in the half-open interval is, just, This is the content of the so-called Sturm theorem, whose proof can be found in many places — see, for example, [2]. It works because as we vary from to on the real line the sequence suffers a sign variation when, and only when, passes through a zero of ; thus, the number of sign variations of from to exactly counts the number of distinct real zeros of in this interval. Considering the interval as the whole real line, the number of real zeros of is obtained (Sturm algorithm in this case can be further simplified, as it is enough to keep only the leading terms of the polynomials , which asymptotically dominates the behaviour of these polynomials).
Notice that Sturm sequence is constructed in very similar fashion as the sequence of remainders obtained in computation of the greatest common divisor (gcd) of the polynomials and : the only difference is that we should keep the opposite of the polynomial remainders in each step. Alternatively, we could compute the ordinary sequence of the remainders obtained in the computation of the gcd of and (where , and , ), from which the Sturm sequence can be obtained by negating the signs of each two consecutive remainders as follows:
[TABLE]
This can be easily shown by comparing the construction of the two sequences and noticing that the quotients appearing in Sturm’s sequence are related with the respective quotients , obtained in the gcd of and , through the formula . This relationship shows us that the complexity of Sturm algorithm is the same as the complexity of the gcd of and .
We remark that Sturm’s method requires a real polynomial with no multiple zeros at the endpoints and , although may have multiple zeros in the open interval . Notice also that the counting excludes that eventual zero at but includes the zero at ; it is, however, an easy matter to verify if has or not a zero at , so that we can also count the number of zeros of in any closed interval of the real line. Besides, keep in mind that the Sturm algorithm counts only the number of distinct real zeros of . This issue, however, can be overcome by additional analysis222Indeed, Sturm himself had shown in a subsequent paper (see [1], p. 345) that the number of non-real zeros of in the interval can also be determined from his method by other arguments. Moreover, from a generalization of Sturm algorithm due to Thomas [3], the multiplicity of the zeros can be counted directly..
It is worth to mention that Sturm derived this theorem during his researches on qualitative aspects of differential equations, which gave rise to the so-called Sturm-Liouville theory. In fact, in an interval of weeks, Sturm published similar theorems regarding the distribution of zeros of orthogonal functions, which are solutions of Sturm-Liouville differential equation [1]. Sturm was influenced by the works of Fourier and, as a matter of a fact, his method can be thought of as a refinement of Fourier’s previous result [4] that establishes an upper bound for the number of real zeros of in a given half-open interval of the real line through the number of sign variations in the Fourier sequence , for running from to over the real line. Thus, we can say that Sturm’s method makes Fourier’s exact.
Since the publication of Sturm’s fundamental papers, other methods for counting or isolating the real zeros of a given real polynomial were formulated. In 1834, Vincent published a paper [5] (republished two years later, with few additions, in [6]), in which a method based on successive replacements in terms of continued fractions was proposed. His method was based on a previous work of Budan [7], who established a theorem equivalent to that of Fourier commented above, although in a different form. Unfortunately, Vincent’s work was almost forgotten thenceforward and, in fact, it was only rescued from oblivion in 1976 by Collins and Akritas, who formulated a powerful bisection method based on Vincent’s theorem for isolating the zeros of a given real polynomial [8]. Two years later, Akritas [9] gave a fundamental contribution to this method by replacing the uniform substitutions that take place in Vincent’s algorithm by non-uniform ones based on previously calculated bounds for the zeros of the testing polynomial (with that modification, Akritas was able to reduce the complexity of Vincent’s method from exponential to polynomial type). Further improvements of these methods, among with new symbolic and numeric techniques, gave rise to some of the fastest algorithms known to date for counting or isolating the zeros of real polynomials on the real line [10, 11, 12, 13, 14, 15] and also on regions of the complex plane [16, 17, 18, 19, 20, 21, 22, 23].
2 The Cayley transformations and polynomials
The methods described above determine the exact number of zeros of a real polynomial on the real line . The correspondent problem of determining the exact number of zeros of a given polynomial on the unit circle is still unsolved. In fact, this is an old question whose first works remount to the end of xix century, for instance, the pioneer works Eneström, Kakeya, Schur, Kempner, Cohn, among others — see [24] and references therein. In the recent years, a great interest in this problem has emerged, usually in connection with the theory of the so-called self-inversive polynomials. These are complex polynomials whose zeros are all symmetric with respect to the unit circle (real self-inversive polynomials includes the self-reciprocal and the skew-reciprocal polynomials). These classes of polynomials are very important in both pure and applied mathematics, as they appear in several problems related to the theory of numbers, algebraic curves, knots theory, stability theory, dynamic systems, error-correcting codes, cryptography and even in classical, quantum and statistical mechanics — see [24] and references therein. An important question regarding self-inversive and self-reciprocal polynomials is the number of zeros that these polynomials have in the unit circle . There are a countless number of papers devoted to the question of finding conditions for all, some, or no zero of a self-inversive polynomial to lie on , see [24].
In this paper, we present a method that reduces the problem of counting the number of zeros that an arbitrary complex polynomial has on the unit circle to the problem of counting the number of zeros of a real polynomial on the real line. Because the second problem is completely addressed by Sturm (or any other real root-counting) algorithm, our approach also solves the first problem completely. The method is based on the use of the following pair of Möbius transformations:
[TABLE]
which are often called Cayley transformations. Together with the relations , and , , these two transformations become the inverse of each other in the extended complex plane . It can be easily verified that maps the real line onto the complex unit circle, while maps the unit circle onto the real line333We remark that the transformations (2.1) are not the only pair of Möbius transformations that maps onto and vice versa: they are, however, the most adequate ones for our purposes.. Besides, sends any point in the upper-half (lower-half) plane to the interior (exterior) of , so that sends any point in the inside (outside) of to the upper-half (lower-half) plane.
Given a complex polynomial of degree , we define the transformed polynomials and by the formulas:
[TABLE]
The factor in front of the second formula in (2.2) is to make the two mappings the inverse each of the other. The following theorems discuss some properties of these transformed polynomials and their zeros.
Theorem 1**.**
Let be a complex polynomial of degree . If has a zero of multiplicity at the point , then defined as above will be a polynomial of degree . Similarly, if has a zero of multiplicity at the point , then defined as above will be a polynomial of degree .
Proof.
Suppose that has a zero at of multiplicity , where . Write, , where is is a polynomial of degree with no zeros at . From (2.2) we get that , where . Now, expanding in powers of we can verify that its leading coefficient equals ; because we conclude that is a polynomial of degree and so it is . By the same argument, if has a zero of multiplicity at the point , then, from (2.2) we get that will be is a polynomial of degree . ∎
Thus, the condition for the transformed polynomial (respectively, ) to have the same degree as the original polynomial is that has no zero at (respectively, at ).
Theorem 2**.**
Let be the zeros of a complex polynomial of degree . If , then the zeros of the transformed polynomials will be, respectively, . Similarly, if , then the zeros of the transformed polynomial will be, respectively, .
Proof.
Inverting the first equation in (2.2), we get that , , but which means that is a zero of . Similarly, inverting the second equation in (2.2) we get that , , and the condition implies that is a zero of . ∎
Theorem 2 shows us that whenever a polynomial is transformed through a Cayley transformation, its zeros are accordingly transformed through the inverse transformation. Besides, from the relations and , we see that if has a zero at the point (respectively, ), then the transformed polynomial (respectively, ) will have a zero at infinity, which confirms again that the transformed polynomial cannot have the same degree as in these cases.
The previous results imply the following theorem, which is a keystone in what follows:
Theorem 3**.**
Let be a complex polynomial of degree that has zeros on , counted with multiplicity, and such that . Then the transformed polynomial will have exactly zeros on , also counted with multiplicity. Similarly, if is a complex polynomial of degree that has zeros on , counted with multiplicity, and such that , then the transformed polynomial will have zeros on , also counted with multiplicity.
Proof.
These statements follow directly from theorems proved above and from the fact that the Cayley transformations and map on and vice versa, respectively. ∎
The following complements Theorem 3:
Theorem 4**.**
Let be a complex polynomial of degree that has exactly zeros symmetric to and such that . Then, the polynomial will have exactly zeros symmetric to (i.e., complex conjugate zeros). Conversely, if is a complex polynomial of degree that has precisely zeros symmetric to and such that , then the polynomial will have precisely zeros symmetric to .
Proof.
Let and be any pair of zeros of that are symmetric to 444The star means complex conjugation so that, if , then , and .. The corresponding zeros of will be and . However, from (2.1) we can easily show that , so that . Similarly, if and are any complex conjugate pair of zeros of , then it follows that the corresponding zeros of are and . But from (2.1) we can show that , so that . ∎
3 General complex polynomials
It is clear from Theorem 3 how we can count the number of zeros that a polynomial of degree has on the unit circle: all we need to do is to compute the transformed polynomial and then use some real-root-counting (rrc) method to count the number of zeros of on the real line555We mention that the idea of using a Möbius transformation to verify if a given polynomial has some zero on the unit circle is not new, although this topic seems to not have been explored in detail before. Indeed, as far as we know, such possibility was discussed only in some old references due to Kempner [25, 26] and, more recently, in an expository note due to Conrad [27] (who credited F. Rodriguez-Villegas for this idea). We remark, however, that Kempner considered a only real polynomial , while the transformed polynomial was defined through the formula, ; this essentially corresponds to the case discussed by us in Algorithm 4. Conrad, on the other hand, made no mention to Sturm algorithm or any other rcc method.. Some care should be taken, however, depending on whether method we use to this end. For example, as mentioned in Section 1, Sturm and Akritas methods do not take into account the multiplicity of the zeros of the testing polynomials; if we want to account the multiplicities, then a suitable rrc method should be employed to this end — for example, Thomas algorithm [3]. Besides, we shall see that the action of the Cayley transformation over a polynomial usually results in a non-real polynomial even when is real666We shall see in Theorem 8 that the transformed polynomial will be a real polynomial only if the original polynomial is self-adjoint., whereas most of the rrc methods need a real polynomial to work with — including Sturm or Akritas methods. Thus, whenever is not a real polynomial, an auxiliary real polynomial , which has the same number of zeros on than , should be found.
In what follows, we shall present algorithms777For the sake of simplicity, hereafter we shall consider that the rrc method employed in the algorithms has the same properties as those of Sturm’s method. The symbol will denote an rrc procedure that gives the exact number of distinct zeros that a real polynomial has on the interval of the real line. that allow one to compute the number of zeros that a polynomial of degree has on . First we shall present general algorithms that work with an arbitrary complex-polynomial; then, specific algorithms that take into account the symmetry of the zeros of the testing polynomials regarding or will be presented. The asymptotic complexities of these algorithms are all the same, as the rrc procedures used in the algorithms are the most time-consuming part of them (for the complexity of Sturm and Akritas algorithms, see [2]). Nonetheless, when comparing polynomials of the same degree we shall see that the specific algorithms are usually faster because they deliver a polynomial of smaller degree to the rrc procedure.
Let us begin with the case where the testing polynomial is an arbitrary complex polynomial of degree . From (2.2), it follows that the transformed polynomial will usually have non-real coefficients. Thus, provided that the rrc procedure works only with a real polynomial, we need to find an auxiliary polynomial , with real coefficients, that has the same number of zeros on as does . We can overcome this issue in two ways: The first way consists of multiplying the transformed polynomial by its complex conjugate, , so that a polynomial of degree is obtained in place, namely, It is clear that the zeros of are the complex conjugate of the zeros of , from which it follows that the real polynomial has the same number of real zeros than , counted without multiplicity, as required. Now we can use the rrc procedure to count the number of real zeros of , which, according to Theorem 3, will correspond to the number of zeros that the original polynomial has on , provided (if then all we need to do is to add to the final result). This is described in Algorithm 1. The second way consists of writing the transformed polynomial in the form , where and , so that and are both real polynomials. Then we can compute the gcd of and and define It follows that the polynomial has degree utmost and, in particular, it has the same number of zeros on as does the polynomial . This is the content of the following:
Theorem 5**.**
The zeros of the polynomial are precisely the zeros of whose complex conjugate is also a zero of . Thus, the degree of equals the number of zeros of whose complex conjugate is also a zero of it, counted with multiplicity.
Proof.
We can decompose the complex polynomial in a product of two polynomials, say, , where consists of a real polynomial that gathers all the zeros of which appear in complex conjugate pairs (real zeros included), while is a non-real polynomial that gathers all the remaining zeros of . Thus, it follows from the definition of the polynomials and given above that the polynomial divides both and , while cannot divide both of them. Therefore, as the zeros of correspond to the common zeros of and , the first result follows. Finally, the degree of follows from the Fundamental Theorem of Algebra. ∎
Notice as well that each common zero of and is also a zero of ; the converse, however, is not true: if is a zero of , then can be either a common zero of and or we should have . The first case happens whenever is a zero of — in particular when is real — whence, the second case occurs whenever is a zero of whose complex conjugate is not a zero of it. Therefore, to obtain a real polynomial that has the same number of zeros on as does , we can just compute the gcd of the real polynomials and , where . This alternative, which was already suggested in [27], is described in Algorithm 2.
We highlight that we can also count the number of zeros of in a given arc of the unit circle888This works for all the cases considered in the advance, with few modifications if necessary. For this reason we shall not comment about this possibility further (we do remark, however, that the replacement cannot be employed anymore to this end, as this would lead to a wrong result due to the fact that this map is not one-to-one). . Let be the referred arc of the unit circle. In the simplest case, we assume that , so that the interval is mapped to the interval of the real line, where and (with the following conventions: and ). The number of zeros of on the arc can thereby be found by counting the number of real zeros that the polynomial (defined by one of the two possible ways as described above), has on the interval of . In the case where (which corresponds to an interval on that contains the point ), we need to split the algorithm into two parts because, in this case, the interval on will be composed of two disjoint intervals — namely, we have . Thus, the procedure must be replaced by in this case. Finally, if the point belongs to the interval and , then we should add to the final result. This is described in Algorithm 3 (for the sake of simplicity, we considered in the pseudo-code).
Moreover, it is clear that we can also locate and isolate the zeros on the unit circle of a given polynomial through these algorithms. In fact, after we map the zeros of the polynomial on the unit circle to the real line through the Cayley transformations (2.1), we can find an interval containing all the real zeros of the transformed polynomial ; then, from Sturm or Akritas procedures, we can refine this interval, for example by a bisection method, so that we obtain a list of intervals, each one containing exactly one real zero of — indeed, in many symbolic computing software, is this list of isolating intervals that is returned by the implemented procedures of Sturm and Akritas, see [2, 28]. This list of isolating intervals of provides a corresponding list of arcs on the unit circle that isolate and locate the zeros of on . These intervals can be further refined recursively so that approximated values for the zeros are returned.
Finally, notice that we can also count the number of zeros that a polynomial has in any circle or straight line of the complex plane by considering a suitable Möbius transformation , , in place of Cayley transformation (2.1).
4 Real and self-conjugate polynomials
The algorithms presented in the previous section apply to arbitrary complex polynomials. In the most important cases, however, the coefficients of the testing polynomial enjoy certain symmetries which allow us to implement faster algorithms. Henceforward, we shall specialize in classes of polynomials whose zeros are either symmetric with respect to the real line or to the unit circle. We shall call a complex polynomial whose zeros are all symmetric to as a self-conjugate polynomial and a complex polynomial whose zeros are all symmetric to as a self-inversive polynomial.
Let us consider in this section the analysis of self-conjugate polynomials (self-inversive polynomials will be considered in the next section). If is self-conjugate, then, for any zero of , the complex conjugate number is also a zero of it. Of course, any real polynomial has this property, but there can be non-real polynomials with this property as well. The necessary and sufficient condition for a complex polynomial of degree to be self-conjugate is that and that there exists a fixed complex number of modulus such that, — see [24] for the proof. From this we can see that the coefficients of any self-conjugate polynomial of degree satisfy the properties for each ranging from [math] to . Real polynomials are those self-conjugate polynomials with .
Notice that even when is a real polynomial, the transformed polynomial is not necessarily real. Thus, to count the number of zeros of a self-conjugate polynomial on the unit circle, we need to compute, as an intermediary step, the real polynomial by one of the two methods discussed in Section 3. However, as we shall see in the following, the polynomials have additional symmetries when is self-conjugate, which allow us to improve the algorithms.
Let us first consider that is defined as In this case, the following theorem shows us that if is self-conjugate, then the polynomial has only even powers of :
Theorem 6**.**
Let be a self-conjugate polynomial of degree such that . Then, the polynomial will be a real polynomial of degree in the variable .
Proof.
According to (2.2), we have that, , which is clearly a real polynomial. If, moreover, is self-conjugate, then we get that But it follows from (2.1) that , so that we obtain . Thus, we plainly see that , from which we conclude that has only even powers of . ∎
Hence, provided that is not a zero of — which is the same of saying that is not a zero of —, the number of real zeros of will be twice the number of the positive zeros of , counted without multiplicity. This property allows us to modify Algorithm 1 by replacing with and the procedure with , so that a faster algorithm for self-conjugate polynomials is achieved (because now has degree instead of ). Notice, however, that the eventual zero of at should be counted separately, in the same fashion as the eventual zero of at the point . This is exemplified in Algorithm 4. We should remark, however, that this algorithm is not suitable for counting the number of zeros that a self-conjugate polynomial of degree has in a finite interval of because the change of variable is not a one-to-one map. In fact, in this case we can no longer guarantee that the number of zeros that has on this interval corresponds to the twice the number of zeros of in the respective positive interval of the real line.
The another possibility is to define through . This has the advantage of providing a real polynomial whose degree is at most . In fact, we have the following:
Theorem 7**.**
Let be a self-conjugate polynomial of degree . Then, the degree of the polynomial will match the number of zeros of that are symmetric to .
Proof.
We have seen in Theorems 3 and 4 that any pair of zeros of that are on, or are symmetric to, the unit circle are mapped into a pair of real, or non-real complex conjugate, zeros of . On the other hand, Theorem 5 states that the zeros of the polynomial as defined above are precisely the complex conjugate zeros of . These two assertions imply that the degree of equals the number of zeros of that are symmetric to . ∎
The corresponding algorithm is the same as Algorithm 2 and does not need to be presented again. We highlight, nevertheless, that if all the zeros of a self-conjugate polynomial which not lie on are not symmetric to either, then the degree of provides directly the number of zeros of on , so that in this case there is no need of using any rrc method whatsoever.
5 Self-inversive, self-adjoint and skew-adjoint polynomials
In this section we shall consider the case of a complex polynomial whose zeros are all symmetric with respect to the unit circle. This means that, for any zero of , the complex number is also a zero of it. Any polynomial of this kind is called a self-inversive polynomial and the necessary and sufficient condition for a polynomial of degree to be self-inversive is that and that there exists a complex number with modulus such that — see [24] for the proof. The coefficients of any self-inversive polynomial of degree satisfy the properties , for ranging from [math] to . If a given polynomial is self-inversive with (resp. ) we shall call it a *self-adjoint *(skew-adjoint) polynomial.
The following theorem shows that there is a one-to-one correspondence between the sets of self-inversive and self-conjugate polynomials, as well as between the sets of self-adjoint and real polynomials.
Theorem 8**.**
Let be a self-inversive polynomial. Then, the transformed polynomial defined in (2.2) will be a self-conjugate polynomial. Moreover, if is a self-adjoint (resp. skew-adjoint) polynomial, then the transformed polynomial will be a real (imaginary) polynomial. Similarly, let be a self-conjugate polynomial. Then the polynomial defined in (2.2) will be a self-inversive polynomial and if is a real (imaginary) polynomial, then will be a self-adjoint (skew-adjoint) polynomial.
Proof.
The result follows from Theorems 3 and 4. Explicitly, we have the following: Let us first suppose self-inversive. Then, But we have the identity , from which simplifies to ; this proves that is self-conjugate. Besides, notice that if (resp. ), so that is self-adjoint (skew-adjoint) polynomial, then we get that will be a real (imaginary) polynomial because the value of is preserved during this transformation. Now, suppose a self-conjugate polynomial. Then, we get that But we have the identity , from which we obtain ; this proves that is self-inversive. Moreover, if (resp. ), so that is a real (imaginary) polynomial, then we see that becomes a self-adjoint (skew-adjoint) polynomial. ∎
Now, let us see how we can count the number of zeros that a self-adjoint or a self-inversive polynomial has on the unit circle. Let us first consider the case where is self-adjoint. In this case, Theorem 8 ensures that is already a real polynomial, so that there is no need of computing the polynomials introduced in Section 3. This results in Algorithm 5, which is usually faster than Algorithms 1 and 2, as the steps concerning the computation of are absent. Of course, this algorithm also works for skew-adjoint polynomials: we just have to make the additional replacement .
Let us now suppose self-inversive with . In this case, the transformed polynomial is not real anymore. A direct approach to work around this issue would be to compute the real polynomial as introduced in Section 3, but we actually have a better alternative: as the next theorem shows, a self-inversive polynomial can always be transformed into a self-adjoint polynomial , whose degree is the same as that of , through a simple change of variable:
Theorem 9**.**
Let be a self-inversive polynomial of degree such that . Then, there exist values for the real variable in the interval for which the composition will provide a self-adjoint polynomial of degree . The possible values of are related with through the formula , for , such that for any admissible value of . Conversely, if is a self-adjoint polynomial of degree , then will provide a self-inversive polynomial of degree such that .
Proof.
Let be a self-inversive polynomial of degree . Making the change of variable , we shall get another polynomial of degree , , where , . Now, is self-inversive so that its coefficients satisfy the relations , . From this we can see that the condition for to be a self-adjoint polynomial is that Inverting this relation, we conclude that can assume distinct values in the interval , which are determined by the formula , for ; each one of them leads to a particular self-adjoint polynomial Notice that, in terms of , we can also write: , , where denotes the th root of unity of degree . Finally, given a self-adjoint polynomial of degree , then it is clear that will be a self-inversive polynomial with for any admissible value of , as above. ∎
We highlight that Theorem 9 means that any self-inversive polynomial can be thought of a rotated self-adjoint polynomial. In fact, if denote the zeros of a self-inversive polynomial of degree , and the correspondent zeros of the self-adjoint polynomials , , as provided by Theorem 9, then it is a straightforward matter to show that , for any and running from to , where . Therefore, we can say that the zeros of are* rotated* with respect to the zeros of by an angle equal to in the clockwise direction. Theorem 9 also shows us that if we rotate the zeros of a given self-inversive polynomial of degree by an angle equal to any root of unity of degree , then we shall obtain another self-inversive polynomial with the same This means there are exactly self-inversive polynomials conjugated in this way for the same value of .
Now, Theorem 9 enables us to implement a specific algorithm for counting the number of zeros that a self-inversive polynomial has on . This is described in Algorithm 6. Because it differs from Algorithm 5 only by the replacement (we can choose ), both algorithms have essentially the same complexity.
6 Self-reciprocal and skew-reciprocal polynomials. An application to
Salem polynomials
As the last case to be discussed in this work, let us suppose the possibility of a complex polynomial of degree which is, at the same time, self-conjugate and self-inversive. From the properties and which should be satisfied by self-conjugate and self-inversive polynomials, respectively, it follows that such polynomials should satisfy the property: Contrary to the previous cases, however, can assume only the values or (to see why, replace by in the formula above), which means that must be a real polynomial. In the first case we say that is a self-reciprocal polynomial, while in the second case , is often called a skew-reciprocal polynomial. The coefficients of any self-reciprocal and any skew-reciprocal polynomial satisfy, respectively, the relations and , for any from [math] to , see [24].
The behaviour of self-reciprocal and skew-reciprocal polynomials at is described in the following
Theorem 10**.**
If is a zero of a self-reciprocal polynomial , then its multiplicity is even. Moreover, if is a zero of a self-reciprocal polynomial of degree , then its multiplicity is the same as the parity of . Similarly, if is a zero of a skew-reciprocal polynomial , then its multiplicity is odd. Moreover, if is a zero of a skew-reciprocal polynomial of degree , then its multiplicity is the opposite of the parity of .
Proof.
First of all, notice that any skew-reciprocal polynomial has a zero at , as well as, any self-reciprocal (resp. skew-reciprocal) polynomial of odd (even) degree has a zero at . These propositions follow directly from the evaluation of at and from the symmetry of its coefficients. Now, suppose that is a zero of a self-reciprocal polynomial of odd multiplicity, say , . Then, and, as is a skew-reciprocal polynomial, it follows that would be a skew-reciprocal polynomial without zeros at , a contradiction. Similarly, suppose that is a zero of with multiplicity . Then and, as is self-reciprocal, it follows that is self-reciprocal without zeros at . Thus must have even degree, which implies that has the same parity as the degree of . Moreover, suppose that is a zero of a skew-reciprocal polynomial of even parity, say, , . Then, , and as is self-reciprocal, it follows that would be a skew-reciprocal polynomial without zeros at , again a contradiction. Similarly, suppose that is a zero of with multiplicity . Then and, as is self-reciprocal, it follows that is skew-reciprocal without zeros at . Thus must have odd degree, which implies that the parity of is opposed to the parity of the degree of . ∎
Besides, the action of the Cayley transformation (2.1) over a self-reciprocal or skew-reciprocal polynomial of degree and with no zeros at leads to a real polynomial of degree in the variable , as it is shown in the next theorem:
Theorem 11**.**
Let be a self-reciprocal polynomial of even degree, say , with no zeros at . Then, the Cayley-transformed polynomial will be a real polynomial of degree in the variable .
Proof.
Let be a self-reciprocal polynomial of even degree, say, . Because the coefficients of any self-reciprocal polynomial satisfy the relations , , it follows that can be written as, . On the other hand, the transformed polynomial defined in (2.2) becomes, , after a simplification. Therefore, we can plainly see that is an even function of , which means that is in fact a polynomial of degree on the variable . Furthermore, is also a real polynomial because all the imaginary terms inside the brackets will cancel after we expand the binomials. ∎
We can also show through similar arguments that, if is a skew-reciprocal polynomial with no zero at , then the transformed polynomial will be a pure imaginary polynomial in the variable . Notice as well that any zero of at is mapped to infinity, as we have seen, so that the degree of will be less than the degree of in this case; similarly, any zero of at is mapped to zero, so that will be multiplied by some power of in this case.
Theorems 10 and 11 provide a great improvement to the algorithms presented in the previous sections. In fact, to count the number of zeros that a self-reciprocal or skew-reciprocal polynomial has on , we can first remove its zeros (if any) at the points and by dividing it successively by and so that a self-reciprocal polynomial , with no zeros at is obtained in place. Then, we can compute the Cayley-transformation of and, thanks to Theorem 11, to make the replacement , which provides a polynomial of the half of the degree of . The number of real zeros of will, therefore, equal the number of zeros on of , excepting its possible zeros at , which can be verified separately. This is described in Algorithm 7 .
Finally, notice that from Algorithm 7 we can easily test if a given polynomial is (or not is) a Salem polynomial without knowing explicitly its zeros. A Salem polynomial is a monic, irreducible, self-reciprocal polynomial of degree with integer coefficients, whose all but two zeros lie on the unit circle. Their two zeros not lying on are necessarily real, positive and the reciprocal of each other. The greatest real zero of a Salem polynomial is called its Salem number, and if the value of this number is less than the smallest Pisot number (which corresponds to the unique real zero of the Pisot polynomial ), then it is usually called a small Salem number999Actually, a Salem number is often called small if it is less than , see [29, 30]. We think, however, that our definition is more appropriate, as the value is quite arbitrary, in contrast with the smallest Pisot number which naturally plays an important role in the field. *. *A Pisot polynomial is a monic, irreducible, non-self-reciprocal integer polynomial that has only one zero outside the unit circle, which is its Pisot number. Up to date there were found only 47 small Salem numbers101010Please notice, however, that with the alternative definition adopted here, the list of known small Salem numbers presented for instance in [29, 30] would be increased by some few new entries., the smallest one being the Lehmer number , the greatest real zero of the polynomial — see [29, 30]. It is still an open problem to know if Lehmer’s number is the smallest Salem number, or even if there exists a smallest Salem number after all. We highlight that Algorithm 7 provides a powerful tool to look for polynomials with small Salem numbers and, in a more general way, to search for polynomials with small Mahler measure. We in fact succeeded in reproducing all small Salem numbers known up to date with an improved form of Algorithm 7 running in a simple desktop computer. We intend to report a detailed analysis of these researches in the future.
Acknowledgements
The author thanks the Editor and Referees for their valuable suggestions. This work was supported by Coordination for the Improvement of Higher Education Personnel (CAPES).
This work is licensed under a CC-BY-NC-ND License. The final version is published in the Journal of Computational and Applied Mathematics,* https://doi.org/10.1016/j.cam.2020.113169.*
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] J.-C. Pont, F. Padovani, Collected works of Charles François Sturm, Birkhäuser Verlag, 2009.
- 2[2] A. G. Akritas, Elements of computer algebra with applications, Vol. 3, Wiley New York, 1989.
- 3[3] J. M. Thomas, Sturm’s theorem for multiple roots, National Mathematics Magazine 15 (8) (1941) 391–394. doi:10.2307/3028551 . · doi ↗
- 4[4] J. Fourier, Sur l’usage du théorème de Descartes dans la recherche des limites des racines, Bulletin des Sciences, par la Société Philomatique de Paris (1820) 156–165.
- 5[5] A. J. H. Vincent, Mémoire sur la résolution des équations numériques, Mémoires de la Société Royale des Sciences, de l’Agriculture et des Arts de Lille 1 (1834) 1–34.
- 6[6] A. J. H. Vincent, Note sur la résolution des équations numériques, Journal de Mathématiques Pures et Appliquées 1 (1) (1836) 341–372.
- 7[7] F.-D. Budan, Nouvelle méthode pour la résolution des équations numériques d’un degré quelconque, Courcier, 1807.
- 8[8] G. E. Collins, A. G. Akritas, Polynomial real root isolation using Descarte’s rule of signs, in: Proceedings of the Third ACM Symposium on Symbolic and Algebraic Computation, ACM, 1976, pp. 272–275. doi:10.1145/800205.806346 . · doi ↗
