From the Fundamental Theorem of Algebra to Kempe’s Universality Theorem Gábor Hegedüs∗ Zijia Li† Josef Schicho‡ Hans-Peter Schröcker§ January 9, 2018 This article provides a gentle introduction for a general mathematical audience to the factorization theory of motion polynomials and its application in mechanism science. This theory connects in a rather unexpected way a seemingly abstract mathematical topic, the non-unique factorization of certain polynomials over the ring of dual quaternions, with engineering applications. Four years after its introduction [9; 10], it is already clear how beneficial it has been to both fields [6; 12; 17–23]. In Section 1 we introduce the notion of motion polynomials and discuss their decomposition into products of linear motion polynomials. It can be used to synthesize linkages following a prescribed motion and is related to a variant of Kempe’s Universality Theorem. We explain the relation to mechanism science in more detail in Section 2. In Sections 3 and 4 we present examples from linkage synthesis and discuss exceptional factorizations. 1 Motion polynomials and their factorizations We denote by H the skew field of quaternions, generated by i,j,k over R, with the well-known relations i2 = j2 = k2 = ijk = −1. The conjugate of a quaternion q = q1 + q2i + q3j + q4k is defined by q = q1 −q2i −q3 j −q4k, the norm of q is N(q) := qq = q2 1 +q2 2 +q2 3 +q2 4. The scalar extension DH := D⊗R H by dual numbers D := R[ε]/⟨ε2⟩is just a skew ring, the ring of dual quaternions. The conjugate of a dual quaternion h = p+εq is defined by h = p+εq. We also use N(h) to denote the norm of h with N(h) := hh = N(p)+ε(pq+qp) ∈D. The dual quaternion h is invertible if and only if p ̸= 0. Denote by S the multiplicative subgroup of dual quaternions with nonzero real norm. Its elements may be written as h = p+εq where the quaternions p and q satisfy p ̸= 0, pq+qp = 0. The latter equality is called the Study condition. The group S acts on R3 = ⟨i,j,k⟩according to x 7→pxp+ pq−qp N(p) . (1) Any such map is a Euclidean displacement. The rotational part is the well-known action x 7→pxp/N(p) of the unit quaternion pN(p)−1/2 on R3, the translational component is (pq−qp)/N(p). Equation (1) defines a homomorphism from S to the group SE(3) of Euclidean displacements. It is surjective and its kernel is the real multiplicative group R∗. This algebraic construction allows a geometric interpretation. Identify DH/R∗with real projective space P7 of dimension seven, denote by S ⊂P7 : pq+qp = 0 the Study quadric and by E the three-space with equation p = 0. Then Study’s kinematic map is the bijection SE(3) ∼= S/R∗→S \ E ⊂P7 whose inverse maps h = p + εq to the Euclidean displacement given by (1). ∗Applied Mathematical Institute, Antal Bejczy Center for Intelligent Robotics, Obuda University, 1032 Budapest, Hungary †Johan Radon Institute for Computational and Applied Mathematics, Austrian Academy of Sciences, 4040 Linz, Austria ‡Research Institute for Symbolic Computation, Johannes Kepler University Linz, Schloss Hagenberg, 4232 Hagenberg, Austria §Unit Geometry and CAD, University of Innsbruck, 6020 Innsbruck, Austria arXiv:1507.05317v1 [math.RA] 19 Jul 2015 The concept of motion polynomials arises by making the above group homomorphism parametric. More precisely, let DH[t] be the skew ring of univariate polynomials over DH in one variable t that commutes with all coefficients. For C ∈DH[t], the conjugate polynomial C is obtained by conjugating all coefficients. If C = P+εQ with P,Q ∈H[t], then we call P the primal part and Q the dual part. We say that C ∈DH[t] is a motion polynomial if N(C) := CC ∈R[t]\{0} (a priori, the norm polynomial N(C) is in D[t]) and if its leading coefficient is invertible. For any t0 ∈R which is not a zero of N(C), we can say that C(t0) is an element of S, hence it acts on R3. Varying t0, we get a motion, i.e. a parametrized curve of Euclidean displacements. By virtue of (1), the trajectories of points during that motion are rational curves whence the motion itself is called rational. It is well-known that all motions with only rational trajectories have a polynomial parametrization with values in the Study quadric [14]. The motion polynomials do not constitute a multiplicative group. However, the quotient by R[t]−{0} is a group because the inverse of the class of a motion polynomial is precisely its conjugate. While kinematic or geometric properties of motion polynomials do not change if we multiply them with non-zero real polynomials, algebraic properties may be different. This observation will be important in Section 4. Summarizing, we can state Proposition 1. Motion polynomials parametrize rational motions and the group of motion polynomials modulo R[t]\{0} is isomorphic to the group of rational motions. Via Study’s kinematic mapping, motion polynomials (rational motions) correspond to rational curves on the Study quadric S with at most finitely many points in the three space E. Since we want to use some version of the fundamental theorem of algebra later on, it is convenient to restrict attention to monic motion polynomials. As far as applications in kinematics are concerned, this is no loss of generality and can always be accomplished by a suitable coordinate change. The fundamental theorem speaks about factorization into linear polynomials, so it is time to clarify the kinematic nature of linear motion polynomials. Proposition 2. Every monic linear motion polynomial parametrizes either a rotation about a fixed axis in R3 or a translation in a fixed direction in R3. The converse is not true: there are monic motion polynomials parametrizing a rotation around a fixed axis that are not linear. Example 1. The dual quaternion polynomial C1 = t −i has norm t2 +1, hence it is a motion polynomial. It parametrizes a rotation around the first coordinate axis. Indeed, by (1) we have x1i+x2j+x3k 7→(t −i)(x1i+x2j+x3k)(t +i) t2 +1 = x1i+ t2 −1 t2 +1x2 + 2t t2 +1x3  j+ t2 −1 t2 +1x3 − 2t t2 +1x2  k. Setting ϕ := 2arctant, i.e., cosϕ = (1−t2)/(t2 +1), sinϕ = 2t/(t2 +1), the assertion becomes apparent. The dual quaternion polynomial C2 = (t −i)2 = t2 −1−2it has norm (t2 +1)2, hence it is a motion polynomial. It also parametrizes a rotation around the first coordinate axis. Indeed, it can be obtained by reparametrizing the first parametrization using the reparametrization function t 7→(t2 −1)/(2t) and clearing denominators. Example 2. The dual quaternion polynomial C3 = t −εi has norm t2, hence it is a motion polynomial. The action on R3 is x1i+x2j+x3k 7→x1i+x2j+x3k+ 2εi t . This is a translation in the direction parallel to the first coordinate axis. The following theorem is fundamental in the factorization theory of quaternion polynomials [7]: Proposition 3. Every monic polynomial C ∈H[t] admits a factorization C = (t −q1)···(t −qn) with quaternions q1,...,qn. 2 For the proof, one uses a fundamental theorem for monic non-negative real polynomials: any such polynomial (it must be of even degree) has a unique factorization into monic non-negative real quadratic polynomials. This is an easy consequence of the fundamental theorem for complex polynomials. The norm polynomial N(C) is a non-negative real polynomial and factors into the product of non-negative real quadratic polynomials. The Euclidean algorithm for polynomial division also works in the case of polynomials in H[t]. If we take one of the non-negative quadratic factors of the norm, say Q ∈R[t], then the polynomial remainder of C by Q is a linear quaternion polynomial or zero. In the first case, this linear polynomial can be factored out. In the second case, Q can be factored out. A specialty in this context is that a generic polynomial C ∈H[t] has precisely n! different factorizations. Since the ring of quaternion polynomials is not commutative, permuting the factors no longer yields a factorization C. In other words the n! factorizations differ essentially, whereas in the complex case all factorizations can be obtained as permutations of one. In this case we rather would think of just one factorization whose factors can be permuted. Another word of caution concerns the polynomial division mentioned in the above sketch of the proof. Since H[t] is not commutative, we have left and right polynomial division, left and right quotients, and left and right remainders. It does not matter which direction we choose, but we have to choose one and stick to it. In the following we deal only with right polynomial division, right remainders, and consequently left quotients: (C = Quotient·D+Remainder). Let us pass from polynomials over H[t] to motion polynomials in DH[t] and try to factor the motion polynomial C. Like in the proof above, the norm is non-negative and, by the important defining property of motion polynomials, real. The quotient by one of the quadratic factors has degree at most one. But now, polynomial division might be problematic because the linear remainder polynomial is in general not monic and the leading coefficient might not be invertible. It is even possible that the remainder is constant, as in the example C = t2 + 1 + εi where we have CC = (t2 +1)2 and the remainder is εi. However, in the generic case, everything is fine: the remainders will be linear with invertible leading coefficients and can be divided out. We can then construct step by step a factorization into linear factors by Algorithm 1 below. This genericity condition can be simplified as follows: For Algorithm 1 to work, it is sufficient that the primal part of C has no nontrivial real factors. The different factorizations come from the arbitrary choice of a quadratic factor M in Line 5 of the algorithm. Algorithm 1 (factorization of generic motion polynomials) Input: Motion polynomial C, monic, primal part has no real factor. Output: List L = [h1,...,hn] of generic motion polynomials such that C = (t −h1)···(t −hn). 1: F ←list of quadratic, irreducible factors of CC 2: D ←C 3: initialize L = [ ] ▷empty list 4: while F is not empty do 5: choose M ∈F 6: write D = QM +R with degR ≤1 ▷polynomial right division 7: compute unique zero h of R 8: prepend h to L 9: D ←D′ where D = D′(t −h) ▷polynomial right division 10: delete M from F 11: end while In fact, we have Theorem 1 ([10]). Algorithm 1 can be used to factor a motion polynomial C = P+εQ, provided the primal part P has no real factors. In this case, C = (t −h1)···(t −hn) and for i ∈{1,...,n} each polynomial t −hi describes a rotation about a fixed axes. Moreover, all possible factorizations (in general n!) can be obtained in that way. As a consequence of Theorem 1 we have 3 h1 h2 k1 k1 k2 k2 p Figure 1: Anti-parallelogram linkage Corollary 1. In general, a rational motion of degree n can be decomposed in at most n! different ways into the product of rotations t −h1, . . . , t −hn. The phrase “in general” in Corollary 1 refers to the absence of real factors in the primal part of C. If this requirement is not fulfilled, the statement is not true. In fact, all kinds of special behavior can be observed. It is interesting that these “exceptional” examples surprisingly often arise in natural applications of Theorem 1 to kinematics and mechanism science. We will return to this point a little later. But at first, we have to explain the relation between Theorem 1 and mechanism science. 2 Factorizations and linkages Consider a generic motion polynomial C of degree two that parametrizes a planar motion (all trajectories are in the parallel planes). By Theorem 1, it admits two factorizations C = (t −h1)(t −h2) = (t −k1)(t −k2) with suitable dual quaternions h1,h2,k1,k2. This means that the motion parametrized by C can be generated in two ways as composition of two rotations with respective centers h1, h2 or k1, k2. Moreover, the two revolute joints at h2 and k2 can be rigidly connected without disturbing the motion C. This is illustrated in Figure 1 which depicts a planar four-bar linkage whose joints are labeled by the corresponding dual quaternions. The joints h1 and k1 are fixed, h2 and k2 can rotate about h1 and k1, respectively, but retain their distance. Planar four-bar linkages constitute the most important class of linkages for engineering applications. Our case is special because the joints h1, h2, k2, and k1 form an anti-parallelogram. If the motion polynomial C is not planar, a similar construction yields a spatial linkage, consisting of a closed loop of four skew revolute axes (Figure 2). Any two neighboring axes are rigidly connected, that is, they maintain their distance and angle throughout the motion. In contrast to the planar case, the one-dimensional mobility of such a structure is not obvious. A closed loop of four revolute joints is generically rigid. But the loops resulting from factorizations of quadratic motion polynomials move because of their algebraic construction. Spatial four-bar linkages that move with one degree of freedom have been known for a long time [2; 3; 16]. There exists only one family of this linkage type and its members are referred to as “Bennett linkages”. So far, Bennett linkage have minor importance in applications but we shall see their theoretical significance later in this text. Moreover, they exhibit a fascinating geometry. A stunning example is the Wunderlich’s explanation of the Bäcklund transform of discrete asymptotic nets of constant Gaussian curvature by means of Bennett linkages [28]. By factorizing cubic motion polynomials, we can also construct spatial six-bar linkages with a one-dimensional mobility as in Figure 3. Their complete classification is a long-standing open problem in theoretical mechanism science. In spite of some recent progress [8; 11], a classification is currently still out of reach. At any rate, our approach yields new examples of spatial six-bar linkages [17–19] and the first viable synthesis procedure. We describe this in more details in the next section. 4 p0 p0 p1 p1 p2 p2 p0 p0 p1 p1 p2 p2 h1 h2 k1 k2 Figure 2: Three-pose synthesis of a four-bar linkage 3 Linkage synthesis An important application of motion polynomial factorization is linkage synthesis, the construction of a mechanical linkage to accommodate a certain task. Our approach is well suited to exact synthesis with prescribed poses, that is, the computation of linkages such that one link visits a finite number of prescribed poses. The word “pose” refers here to the position and orientation of a rigid body, that is, an element of SE(3). Let us consider a simple example of a spatial four-bar linkage (Bennett linkage). Its coupler motion is given by a quadratic motion polynomial C. In the kinematic image space P7, it parametrizes a conic section on the Study quadric S . Conversely, a generic conic section on S gives rise to generic quadratic motion polynomials (differing only by admissible reparametrizations) and, via motion factorization, to a Bennett linkage. Thus, we can synthesize a Bennett linkage to three prescribed poses p0, p1, p2. These poses are points on the Study quadric S where they span a plane. We compute a rational quadratic parametrization C of the intersection conic of this plane and S and factor it as C = (t −h1)(t −h2) = (t −k1)(t −k2). The linear motion polynomials in these factorizations determine the fixed axes (h1, k1) and the moving axes (h2, k2), as illustrated in Figure 2. Our synthesis procedure for Bennett linkages is elegant and simple but it is not the only available method. Other approaches include [4; 24–27]. It extends, however, to linkages with more than four joints. We may, for example, synthesize six-bar linkages to four prescribed poses [12]. Here, the geometry is slightly more involved but still understandable via classical results. Four points p0, p1, p2, p3 in general position on the Study quadric S span a three-dimensional projective space. If this space intersects S in a ruled quadric, as in Figure 3, the four points can be interpolated by two one-parametric families of rational cubic curves. Each interpolating cubic can be factored and gives rise to several open chains with three revolute joints that can be combined to form a closed six-bar linkage. Here are a few further remarks on this construction: • Closed loops of six revolute axes are, in general, rigid. In our case, they move because of their special algebraic construction. • There exist spatial six-bar linkages that have a one-parametric mobility but cannot be constructed by factorization of motion polynomials. The relative motions between two links are not all rational or, at least, do not have rational components. • The above construction is the first viable synthesis procedure for spatial six-bar linkages. It may easily be generalized using a Hermite like interpolation scheme. 4 Exceptional factorizations and Kempe’s Universality Theorem Theorem 1 shows the existence of finitely many factorizations of generic motion polynomials. In this section we are concerned with non-generic situations where the primal part of the motion polynomial has real factors. In this case, 5 p0 p1 p1 p2 p2 p3 p3 h1 h2 h3 k1 k2 k3 p0 p1 p1 p2 p2 p3 Figure 3: Four-pose synthesis of a six-bar linkage h′′ 1 h′′ 2 h′ 1 h′ 2 h1 h1 h2 Figure 4: Three different factorizations of a circular translation Theorem 1 gives no information. The following examples demonstrate what can happen: Example 3. The motion polynomial C = (t −1)(t −j)−ε((i+k)t −2k) can be factored as C = (t −1−εi)(t −j−εk) = (t −j−ε(i+2k))(t −1+εk). The polynomial factors t −1−εi and t −1−εk parametrize, however, translations, not rotations. One may view this as a limiting case of the generic situation appearing in Theorem 1 in the sense that the two rotations degenerate to translations. It turns out that they can still be computed by Algorithm 1. Example 4. We consider the motion polynomial C = t2 + 1 + ε(ai + bjt) with a,b ∈R, a,b ≥0, a2 + b2 > 0. It parametrizes the curvilinear translation along an ellipse with semi-axis lengths a and b. If a ̸= b, a straightforward computation shows that C admits no factorization of the form C = (t −h1)(t −h2) with linear motion polynomials t −h1 and t −h2. If, however, a = b (circular translation), even infinitely many factorizations exist, namely h1 = k−ε(fi+(a+g)j), h2 = −k+ε(fi+gj), (2) with f,g ∈R. They have a very clear geometric explanation. The motion in question is a circular translation and can be generated by infinitely many parallelogram linkages (Figure 4). Each leg corresponds to one factorization of the form (2). Existence of exceptional situations demonstrate that the factorization theory over DH[t] is more complicated but also more interesting than the theory over H[t]. Moreover, situations with no or infinitely many factorization arise surprisingly often in engineering applications of motion polynomial factorization. Many important rational motions are not amenable to straightforward factorization via Algorithm 1. Still, it is possible to factor these motions but at the cost of raising the number of factors (the degree of the motion polynomial). Recall that for any non-zero polynomial R ∈R[t] the motion polynomials C and CR parametrize the same motion. Thus, one may try to find a real polynomial R such that CR admits a factorization. 6 h1 h1 h2 h2 h3 h3 h4 h4 k1 k1 k2 k2 k3 k3 k4 k4 m0 m0 m1 m1 m2 m2 m3 m3 m4 m4 h1 h1 h2 h2 h3 h3 h4 h4 k1 k1 k2 k2 k3 k3 k4 k4 m0 m0 m1 m1 m2 m2 m3 m3 m4 m4 Figure 5: Linkage to generate an elliptic translation and corresponding link graph In engineering applications, revolute joints are preferred over translational joints. Hence, we focus on factorizations with revolute joints only. In this case, a necessary requirement is that the motion parametrized by C is bounded, i.e., all trajectories are bounded rational curves. We also say that the motion polynomial C itself is bounded. Indeed, we have Theorem 2. For every bounded motion polynomial C there exists a real polynomial R such that CR admits a factorization CR = (t −h1)···(t −hm) with rotation polynomials t −h1, . . . , t −hn. The degree of R is bounded by the maximal degree of a real factor of the primal part of C. Theorem 2 has been proved in [6] for the planar case and in [22] for the general case. The proofs are constructive so that factorizations can be effectively computed. The main ingredients are variants of the Euclidean algorithm for polynomial division over the (dual) quaternions and the solution of quadratic equations with real coefficients over quaternions [13]. It is worth noting that infinitely many factorizations exist if degR > 0. As an application of Theorem 2, consider the elliptic translation appearing in Example 4. There exists a quadratic real polynomial R such that CR admits the factorization CR = (t −h1)(t −h2)(t −h3)(t −h4). From this, we construct an (admittedly complicated) linkage to generate an elliptic translation (Figure 5): • The linkage consists of four anti-parallelograms (himikimi−1 for i ∈{1,2,3,4}). • Six angles (∢(hi,mi,hi+1), ∢(ki,mi,ki+1), for i ∈{1,2,3}) are kept constant during the motion. In other words, we have a chain of anti-parallelograms, where each anti-parallelogram “follows” its predecessor. • The rigid body attached to the connection of m4 and h4 performs the elliptic translation. The point h4 “draws” the indicated ellipses. Figure 5 also shows a more abstract representation of the same linkage. In this “link graph”, each vertex represents a link (a rigid connection between revolute joints) and each edge represents a joint. Two vertices are connected, if the corresponding links share a joint. The linkage of Figure 5 was constructed by augmenting the given factorization (h1, h2, h3, h4) with one additional joint m0 and then successively computing the remaining joints by solving the recursion (t −mi−1)(t −hi) = (t −ki)(t −mi), i ∈{1,2,3,4} (3) with the aid of Algorithm 1. We call this computation of ki and mi from mi−1 and hi a Bennett flip. This name comes from the fact that in the spatial case the involved dual quaternions determine the axes of a Bennett linkage. In the planar case, a Bennett flip generates anti-parallelograms. 7 h1 h1 h2 h2 h3 h3 k1 k1 k2 k2 k3 k3 m0 m0 m1 m1 m2 m2 m3 m3 x h1 h1 h2 h2 h3 h3 k1 k1 k2 k2 k3 k3 m0 m0 m1 m1 m2 m2 m3 m3 Figure 6: Linkage to draw an ellipse and link graph Figure 6 presents a refinement of this construction. Instead of multiplying C with a polynomial R ∈R[t], we right multiply it with the linear polynomial H := t −k ∈H[t] such that the product CH admits a factorization. Of course, C and CH parametrize different motions but the fixed points of H (points of the third coordinate axis) retain their trajectories. Hence, we obtain a linkage that is capable of drawing the prescribed ellipse. The triples of collinear joints come from the fact that the constant angles in the linkage of Figure 5 are straight for the linkage of Figure 6. The motion of the link connecting m3 and h3 is no longer an elliptic translation and generic trajectories are of degree greater than two. It is a yet unpublished result that one can always find a polynomial H ∈H[t] such that CH admits a factorization. Using the Bennett flip technique, one can then construct a (in general) spatial linkage with prescribed trajectories. The anti-parallelograms of Figure 6 become Bennett linkages and the additional freedom we gain by multiplying with a quaternion polynomial H ∈H[t] instead of a real polynomial R ∈R[t] can be used to reduce the number of anti-parallelograms. The constructions of this section are not restricted to ellipses but can be generalized to arbitrary rational space curves. First let D denote a rational curve of degree d in the Euclidean 3-space. Then consider a motion polynomial C that parametrizes a rational motion with trajectory D, for example the curvilinear translation along D. Using the algorithm of Theorem 2 we arrive at a factorization of CR as (t −h1)...(t −hm). This gives us an open chain of m revolute joints representing our motion polynomial C. Using Bennett flips as in (3), we can construct linkages with only revolute joints that draw arbitrary (bounded) rational curves. This is not a new result. By a celebrated theorem of mechanism science (Kempe’s Universality Theorem [5; 15]), any bounded portion of an algebraic curve can be drawn by a linkage. Our approach shows that in the rational case the number of necessary links and joints decreases dramatically. The asymptotic bound for rational curves is linear in the curve degree n while the currently best known bound for general algebraic space curves is cubic [1]. Moreover, our general construction behaves quite well in important low-degree cases. The linkage in Figure 6 has only ten joints while the ellipse linkage in Kempe’s construction requires as much as 235 joints. Often it is possible to further reduce the number of joints so that engineering applications come into reach. For example, only seven joints are necessary to generate the so-called Darboux motion, a spatial motion where all trajectories are ellipses in non-parallel planes [20; 21]. 8 5 Conclusion Motion polynomial factorization is an algebraic theory with surprising relations to mechanisms science. The interplay between both disciplines is beneficial to both. Algebra can provide solutions to hitherto inaccessible engineering problems and requirements of applications led to interesting algebraic questions. Our current work focuses on both, the details of a version of Kempe’s Universality Theorem for rational space curves with emphasis on a low number of links and joints and further applications of motion polynomial factorization to engineering problems. Acknowledgments This work was supported by the Austrian Science Fund (FWF): P 26607 (Algebraic Methods in Kinematics: Motion Factorization and Bond Theory). References [1] T. G. Abbott, Generalizations of Kempe’s universality theorem, Master’s thesis, Massachusetts Institute of Technology, 2008. [2] G. T. Bennett, A new mechanism, Engineering 76 (1903), 777–778. [3] G. T. Bennett, The skew isogramm-mechanism, Proc. London Math. Soc. 13 (1913–1914), no. 2nd Series, 151–173. [4] K. Brunnthaler, H.-P. Schröcker, and M. Husty, A new method for the synthesis of Bennett mechanisms, Proceedings of CK 2005, International Workshop on Computational Kinematics (Cassino), 2005. [5] E. D. Demaine and J. O’Rourke, Geometric folding algorithms: Linkages, origami, polyhedra, Cambridge University Press, 2007. [6] M. Gallet, C. Koutschan, Z. Li, G. Regensburger, J. Schicho, and N. Villamizar, Planar linkages following a prescribed motion, Submitted for publication, 2015. [7] B. Gordon and T. S. Motzkin, On the zeros of polynomials over division rings, Trans. Amer. Math. Soc. 116 (1965), 218–226. [8] G. Hegedüs, Z. Li, J. Schicho, and H.-P. Schröcker, The theory of bonds II: Closed 6R linkages with maximal genus, J. Symbolic Comput. 68 (2015), no. 2, 167–180. [9] G. Hegedüs, J. Schicho, and H.-P. Schröcker, Construction of overconstrained linkages by factorization of rational motions, Latest Advances in Robot Kinematics (J. Lenarˇciˇc and M. Husty, eds.), Springer, 2012, pp. 213–220. [10] G. Hegedüs, J. Schicho, and H.-P. Schröcker, Factorization of rational curves in the Study quadric and revolute linkages, Mech. Machine Theory 69 (2013), no. 1, 142–152. [11] G. Hegedüs, J. Schicho, and H.-P. Schröcker, The theory of bonds: A new method for the analysis of linkages, Mech. Machine Theory 70 (2013), 407–424. [12] G. Hegedüs, J. Schicho, and H.-P. Schröcker, Four-pose synthesis of angle-symmetric 6R linkages, ASME J. Mechanisms Robotics 7 (2015), no. 4. [13] L. Huang and W. So, Quadratic formulas for quaternions, Appl. Math. Lett. 15 (2002), no. 15, 533–540. [14] B. Jüttler, Über zwangläufige rationale Bewegungsvorgänge, Österreich. Akad. Wiss. Math.-Natur. Kl. S.-B. II 202 (1993), no. 1–10, 117–232. [15] A. B. Kempe, On a general method of describing plane curves of the nth degree by linkwork, Proc. London Math. Soc. (1876), 213–216. 9 [16] J. L. Krames, Zur Geometrie des Bennett’schen Mechanismus, Österreich. Akad. Wiss. Math.-Natur. Kl. S.-B. II 146 (1937), 145–158. [17] Z. Li, Sharp linkages, Advances in Robot Kinematics (J. Lenarˇciˇc and O. Khatib, eds.), Springer, 2014, pp. 131–138. [18] Z. Li and J. Schicho, Classification of angle-symmetric 6R linkages, Mechanism and Machine Theory 70 (2013), 372 – 379. [19] Z. Li and J. Schicho, Three types of parallel 6R linkages, Computational Kinematics (F. Thomas and A. Perez Gracia, eds.), Mechanisms and Machine Science, vol. 15, Springer Netherlands, 2014, pp. 111–119 (English). [20] Z. Li, J. Schicho, and H.-P. Schröcker, Spatial straight line linkages by factorization of motion polynomials, ArXiv e-prints (2014). [21] Z. Li, J. Schicho, and H.-P. Schröcker, 7R Darboux linkages by factorization of motion polynomials, Accepted for publication in the Proceedings of the 14th IFToMM World Congress 2015, 2015. [22] Z. Li, J. Schicho, and H.-P. Schröcker, Factorization of motion polynomials, feb 2015. [23] Z. Li, J. Schicho, and H.-P. Schröcker, The rational motion of minimal dual quaternion degree with prescribed trajectory, To be submitted for publication, 2015. [24] A. J. Perez, Analysis and design of Bennett linkages, Ph.D. thesis, University of California, Irvine, 2004. [25] C. H. Suh, On the duality in the existence of R-R links for three positions, ASME J. Mechanical Design 91 (1969), no. 1, 129–134. [26] L.-W. Tsai and B. Roth, A note on the design of revolute-revolute cranks, Mech. Machine Theory 8 (1973), no. 1, 23–31. [27] G. R. Veldkamp, Canonical systems and instantaneous invariants in spatial kinematics, Journal of Mechanisms 2 (1967), no. 3, 329–388. [28] W. Wunderlich, Zur Differenzengeometrie der Flächen konstanter negativer Krümmung, Österreich. Akad. Wiss. Math.- Natur. Kl. S.-B. II 160 (1951), no. 2, 39–77. 10 From the Fundamental Theorem of Algebra to Kempe’s Universality Theorem Gábor Hegedüs∗ Zijia Li† Josef Schicho‡ Hans-Peter Schröcker§ January 9, 2018 This article provides a gentle introduction for a general mathematical audience to the factorization theory of motion polynomials and its application in mechanism science. This theory connects in a rather unexpected way a seemingly abstract mathematical topic, the non-unique factorization of certain polynomials over the ring of dual quaternions, with engineering applications. Four years after its introduction [9; 10], it is already clear how beneficial it has been to both fields [6; 12; 17–23]. In Section 1 we introduce the notion of motion polynomials and discuss their decomposition into products of linear motion polynomials. It can be used to synthesize linkages following a prescribed motion and is related to a variant of Kempe’s Universality Theorem. We explain the relation to mechanism science in more detail in Section 2. In Sections 3 and 4 we present examples from linkage synthesis and discuss exceptional factorizations. 1 Motion polynomials and their factorizations We denote by H the skew field of quaternions, generated by i,j,k over R, with the well-known relations i2 = j2 = k2 = ijk = −1. The conjugate of a quaternion q = q1 + q2i + q3j + q4k is defined by q = q1 −q2i −q3 j −q4k, the norm of q is N(q) := qq = q2 1 +q2 2 +q2 3 +q2 4. The scalar extension DH := D⊗R H by dual numbers D := R[ε]/⟨ε2⟩is just a skew ring, the ring of dual quaternions. The conjugate of a dual quaternion h = p+εq is defined by h = p+εq. We also use N(h) to denote the norm of h with N(h) := hh = N(p)+ε(pq+qp) ∈D. The dual quaternion h is invertible if and only if p ̸= 0. Denote by S the multiplicative subgroup of dual quaternions with nonzero real norm. Its elements may be written as h = p+εq where the quaternions p and q satisfy p ̸= 0, pq+qp = 0. The latter equality is called the Study condition. The group S acts on R3 = ⟨i,j,k⟩according to x 7→pxp+ pq−qp N(p) . (1) Any such map is a Euclidean displacement. The rotational part is the well-known action x 7→pxp/N(p) of the unit quaternion pN(p)−1/2 on R3, the translational component is (pq−qp)/N(p). Equation (1) defines a homomorphism from S to the group SE(3) of Euclidean displacements. It is surjective and its kernel is the real multiplicative group R∗. This algebraic construction allows a geometric interpretation. Identify DH/R∗with real projective space P7 of dimension seven, denote by S ⊂P7 : pq+qp = 0 the Study quadric and by E the three-space with equation p = 0. Then Study’s kinematic map is the bijection SE(3) ∼= S/R∗→S \ E ⊂P7 whose inverse maps h = p + εq to the Euclidean displacement given by (1). ∗Applied Mathematical Institute, Antal Bejczy Center for Intelligent Robotics, Obuda University, 1032 Budapest, Hungary †Johan Radon Institute for Computational and Applied Mathematics, Austrian Academy of Sciences, 4040 Linz, Austria ‡Research Institute for Symbolic Computation, Johannes Kepler University Linz, Schloss Hagenberg, 4232 Hagenberg, Austria §Unit Geometry and CAD, University of Innsbruck, 6020 Innsbruck, Austria arXiv:1507.05317v1 [math.RA] 19 Jul 2015 The concept of motion polynomials arises by making the above group homomorphism parametric. More precisely, let DH[t] be the skew ring of univariate polynomials over DH in one variable t that commutes with all coefficients. For C ∈DH[t], the conjugate polynomial C is obtained by conjugating all coefficients. If C = P+εQ with P,Q ∈H[t], then we call P the primal part and Q the dual part. We say that C ∈DH[t] is a motion polynomial if N(C) := CC ∈R[t]\{0} (a priori, the norm polynomial N(C) is in D[t]) and if its leading coefficient is invertible. For any t0 ∈R which is not a zero of N(C), we can say that C(t0) is an element of S, hence it acts on R3. Varying t0, we get a motion, i.e. a parametrized curve of Euclidean displacements. By virtue of (1), the trajectories of points during that motion are rational curves whence the motion itself is called rational. It is well-known that all motions with only rational trajectories have a polynomial parametrization with values in the Study quadric [14]. The motion polynomials do not constitute a multiplicative group. However, the quotient by R[t]−{0} is a group because the inverse of the class of a motion polynomial is precisely its conjugate. While kinematic or geometric properties of motion polynomials do not change if we multiply them with non-zero real polynomials, algebraic properties may be different. This observation will be important in Section 4. Summarizing, we can state Proposition 1. Motion polynomials parametrize rational motions and the group of motion polynomials modulo R[t]\{0} is isomorphic to the group of rational motions. Via Study’s kinematic mapping, motion polynomials (rational motions) correspond to rational curves on the Study quadric S with at most finitely many points in the three space E. Since we want to use some version of the fundamental theorem of algebra later on, it is convenient to restrict attention to monic motion polynomials. As far as applications in kinematics are concerned, this is no loss of generality and can always be accomplished by a suitable coordinate change. The fundamental theorem speaks about factorization into linear polynomials, so it is time to clarify the kinematic nature of linear motion polynomials. Proposition 2. Every monic linear motion polynomial parametrizes either a rotation about a fixed axis in R3 or a translation in a fixed direction in R3. The converse is not true: there are monic motion polynomials parametrizing a rotation around a fixed axis that are not linear. Example 1. The dual quaternion polynomial C1 = t −i has norm t2 +1, hence it is a motion polynomial. It parametrizes a rotation around the first coordinate axis. Indeed, by (1) we have x1i+x2j+x3k 7→(t −i)(x1i+x2j+x3k)(t +i) t2 +1 = x1i+ t2 −1 t2 +1x2 + 2t t2 +1x3  j+ t2 −1 t2 +1x3 − 2t t2 +1x2  k. Setting ϕ := 2arctant, i.e., cosϕ = (1−t2)/(t2 +1), sinϕ = 2t/(t2 +1), the assertion becomes apparent. The dual quaternion polynomial C2 = (t −i)2 = t2 −1−2it has norm (t2 +1)2, hence it is a motion polynomial. It also parametrizes a rotation around the first coordinate axis. Indeed, it can be obtained by reparametrizing the first parametrization using the reparametrization function t 7→(t2 −1)/(2t) and clearing denominators. Example 2. The dual quaternion polynomial C3 = t −εi has norm t2, hence it is a motion polynomial. The action on R3 is x1i+x2j+x3k 7→x1i+x2j+x3k+ 2εi t . This is a translation in the direction parallel to the first coordinate axis. The following theorem is fundamental in the factorization theory of quaternion polynomials [7]: Proposition 3. Every monic polynomial C ∈H[t] admits a factorization C = (t −q1)···(t −qn) with quaternions q1,...,qn. 2 For the proof, one uses a fundamental theorem for monic non-negative real polynomials: any such polynomial (it must be of even degree) has a unique factorization into monic non-negative real quadratic polynomials. This is an easy consequence of the fundamental theorem for complex polynomials. The norm polynomial N(C) is a non-negative real polynomial and factors into the product of non-negative real quadratic polynomials. The Euclidean algorithm for polynomial division also works in the case of polynomials in H[t]. If we take one of the non-negative quadratic factors of the norm, say Q ∈R[t], then the polynomial remainder of C by Q is a linear quaternion polynomial or zero. In the first case, this linear polynomial can be factored out. In the second case, Q can be factored out. A specialty in this context is that a generic polynomial C ∈H[t] has precisely n! different factorizations. Since the ring of quaternion polynomials is not commutative, permuting the factors no longer yields a factorization C. In other words the n! factorizations differ essentially, whereas in the complex case all factorizations can be obtained as permutations of one. In this case we rather would think of just one factorization whose factors can be permuted. Another word of caution concerns the polynomial division mentioned in the above sketch of the proof. Since H[t] is not commutative, we have left and right polynomial division, left and right quotients, and left and right remainders. It does not matter which direction we choose, but we have to choose one and stick to it. In the following we deal only with right polynomial division, right remainders, and consequently left quotients: (C = Quotient·D+Remainder). Let us pass from polynomials over H[t] to motion polynomials in DH[t] and try to factor the motion polynomial C. Like in the proof above, the norm is non-negative and, by the important defining property of motion polynomials, real. The quotient by one of the quadratic factors has degree at most one. But now, polynomial division might be problematic because the linear remainder polynomial is in general not monic and the leading coefficient might not be invertible. It is even possible that the remainder is constant, as in the example C = t2 + 1 + εi where we have CC = (t2 +1)2 and the remainder is εi. However, in the generic case, everything is fine: the remainders will be linear with invertible leading coefficients and can be divided out. We can then construct step by step a factorization into linear factors by Algorithm 1 below. This genericity condition can be simplified as follows: For Algorithm 1 to work, it is sufficient that the primal part of C has no nontrivial real factors. The different factorizations come from the arbitrary choice of a quadratic factor M in Line 5 of the algorithm. Algorithm 1 (factorization of generic motion polynomials) Input: Motion polynomial C, monic, primal part has no real factor. Output: List L = [h1,...,hn] of generic motion polynomials such that C = (t −h1)···(t −hn). 1: F ←list of quadratic, irreducible factors of CC 2: D ←C 3: initialize L = [ ] ▷empty list 4: while F is not empty do 5: choose M ∈F 6: write D = QM +R with degR ≤1 ▷polynomial right division 7: compute unique zero h of R 8: prepend h to L 9: D ←D′ where D = D′(t −h) ▷polynomial right division 10: delete M from F 11: end while In fact, we have Theorem 1 ([10]). Algorithm 1 can be used to factor a motion polynomial C = P+εQ, provided the primal part P has no real factors. In this case, C = (t −h1)···(t −hn) and for i ∈{1,...,n} each polynomial t −hi describes a rotation about a fixed axes. Moreover, all possible factorizations (in general n!) can be obtained in that way. As a consequence of Theorem 1 we have 3 h1 h2 k1 k1 k2 k2 p Figure 1: Anti-parallelogram linkage Corollary 1. In general, a rational motion of degree n can be decomposed in at most n! different ways into the product of rotations t −h1, . . . , t −hn. The phrase “in general” in Corollary 1 refers to the absence of real factors in the primal part of C. If this requirement is not fulfilled, the statement is not true. In fact, all kinds of special behavior can be observed. It is interesting that these “exceptional” examples surprisingly often arise in natural applications of Theorem 1 to kinematics and mechanism science. We will return to this point a little later. But at first, we have to explain the relation between Theorem 1 and mechanism science. 2 Factorizations and linkages Consider a generic motion polynomial C of degree two that parametrizes a planar motion (all trajectories are in the parallel planes). By Theorem 1, it admits two factorizations C = (t −h1)(t −h2) = (t −k1)(t −k2) with suitable dual quaternions h1,h2,k1,k2. This means that the motion parametrized by C can be generated in two ways as composition of two rotations with respective centers h1, h2 or k1, k2. Moreover, the two revolute joints at h2 and k2 can be rigidly connected without disturbing the motion C. This is illustrated in Figure 1 which depicts a planar four-bar linkage whose joints are labeled by the corresponding dual quaternions. The joints h1 and k1 are fixed, h2 and k2 can rotate about h1 and k1, respectively, but retain their distance. Planar four-bar linkages constitute the most important class of linkages for engineering applications. Our case is special because the joints h1, h2, k2, and k1 form an anti-parallelogram. If the motion polynomial C is not planar, a similar construction yields a spatial linkage, consisting of a closed loop of four skew revolute axes (Figure 2). Any two neighboring axes are rigidly connected, that is, they maintain their distance and angle throughout the motion. In contrast to the planar case, the one-dimensional mobility of such a structure is not obvious. A closed loop of four revolute joints is generically rigid. But the loops resulting from factorizations of quadratic motion polynomials move because of their algebraic construction. Spatial four-bar linkages that move with one degree of freedom have been known for a long time [2; 3; 16]. There exists only one family of this linkage type and its members are referred to as “Bennett linkages”. So far, Bennett linkage have minor importance in applications but we shall see their theoretical significance later in this text. Moreover, they exhibit a fascinating geometry. A stunning example is the Wunderlich’s explanation of the Bäcklund transform of discrete asymptotic nets of constant Gaussian curvature by means of Bennett linkages [28]. By factorizing cubic motion polynomials, we can also construct spatial six-bar linkages with a one-dimensional mobility as in Figure 3. Their complete classification is a long-standing open problem in theoretical mechanism science. In spite of some recent progress [8; 11], a classification is currently still out of reach. At any rate, our approach yields new examples of spatial six-bar linkages [17–19] and the first viable synthesis procedure. We describe this in more details in the next section. 4 p0 p0 p1 p1 p2 p2 p0 p0 p1 p1 p2 p2 h1 h2 k1 k2 Figure 2: Three-pose synthesis of a four-bar linkage 3 Linkage synthesis An important application of motion polynomial factorization is linkage synthesis, the construction of a mechanical linkage to accommodate a certain task. Our approach is well suited to exact synthesis with prescribed poses, that is, the computation of linkages such that one link visits a finite number of prescribed poses. The word “pose” refers here to the position and orientation of a rigid body, that is, an element of SE(3). Let us consider a simple example of a spatial four-bar linkage (Bennett linkage). Its coupler motion is given by a quadratic motion polynomial C. In the kinematic image space P7, it parametrizes a conic section on the Study quadric S . Conversely, a generic conic section on S gives rise to generic quadratic motion polynomials (differing only by admissible reparametrizations) and, via motion factorization, to a Bennett linkage. Thus, we can synthesize a Bennett linkage to three prescribed poses p0, p1, p2. These poses are points on the Study quadric S where they span a plane. We compute a rational quadratic parametrization C of the intersection conic of this plane and S and factor it as C = (t −h1)(t −h2) = (t −k1)(t −k2). The linear motion polynomials in these factorizations determine the fixed axes (h1, k1) and the moving axes (h2, k2), as illustrated in Figure 2. Our synthesis procedure for Bennett linkages is elegant and simple but it is not the only available method. Other approaches include [4; 24–27]. It extends, however, to linkages with more than four joints. We may, for example, synthesize six-bar linkages to four prescribed poses [12]. Here, the geometry is slightly more involved but still understandable via classical results. Four points p0, p1, p2, p3 in general position on the Study quadric S span a three-dimensional projective space. If this space intersects S in a ruled quadric, as in Figure 3, the four points can be interpolated by two one-parametric families of rational cubic curves. Each interpolating cubic can be factored and gives rise to several open chains with three revolute joints that can be combined to form a closed six-bar linkage. Here are a few further remarks on this construction: • Closed loops of six revolute axes are, in general, rigid. In our case, they move because of their special algebraic construction. • There exist spatial six-bar linkages that have a one-parametric mobility but cannot be constructed by factorization of motion polynomials. The relative motions between two links are not all rational or, at least, do not have rational components. • The above construction is the first viable synthesis procedure for spatial six-bar linkages. It may easily be generalized using a Hermite like interpolation scheme. 4 Exceptional factorizations and Kempe’s Universality Theorem Theorem 1 shows the existence of finitely many factorizations of generic motion polynomials. In this section we are concerned with non-generic situations where the primal part of the motion polynomial has real factors. In this case, 5 p0 p1 p1 p2 p2 p3 p3 h1 h2 h3 k1 k2 k3 p0 p1 p1 p2 p2 p3 Figure 3: Four-pose synthesis of a six-bar linkage h′′ 1 h′′ 2 h′ 1 h′ 2 h1 h1 h2 Figure 4: Three different factorizations of a circular translation Theorem 1 gives no information. The following examples demonstrate what can happen: Example 3. The motion polynomial C = (t −1)(t −j)−ε((i+k)t −2k) can be factored as C = (t −1−εi)(t −j−εk) = (t −j−ε(i+2k))(t −1+εk). The polynomial factors t −1−εi and t −1−εk parametrize, however, translations, not rotations. One may view this as a limiting case of the generic situation appearing in Theorem 1 in the sense that the two rotations degenerate to translations. It turns out that they can still be computed by Algorithm 1. Example 4. We consider the motion polynomial C = t2 + 1 + ε(ai + bjt) with a,b ∈R, a,b ≥0, a2 + b2 > 0. It parametrizes the curvilinear translation along an ellipse with semi-axis lengths a and b. If a ̸= b, a straightforward computation shows that C admits no factorization of the form C = (t −h1)(t −h2) with linear motion polynomials t −h1 and t −h2. If, however, a = b (circular translation), even infinitely many factorizations exist, namely h1 = k−ε(fi+(a+g)j), h2 = −k+ε(fi+gj), (2) with f,g ∈R. They have a very clear geometric explanation. The motion in question is a circular translation and can be generated by infinitely many parallelogram linkages (Figure 4). Each leg corresponds to one factorization of the form (2). Existence of exceptional situations demonstrate that the factorization theory over DH[t] is more complicated but also more interesting than the theory over H[t]. Moreover, situations with no or infinitely many factorization arise surprisingly often in engineering applications of motion polynomial factorization. Many important rational motions are not amenable to straightforward factorization via Algorithm 1. Still, it is possible to factor these motions but at the cost of raising the number of factors (the degree of the motion polynomial). Recall that for any non-zero polynomial R ∈R[t] the motion polynomials C and CR parametrize the same motion. Thus, one may try to find a real polynomial R such that CR admits a factorization. 6 h1 h1 h2 h2 h3 h3 h4 h4 k1 k1 k2 k2 k3 k3 k4 k4 m0 m0 m1 m1 m2 m2 m3 m3 m4 m4 h1 h1 h2 h2 h3 h3 h4 h4 k1 k1 k2 k2 k3 k3 k4 k4 m0 m0 m1 m1 m2 m2 m3 m3 m4 m4 Figure 5: Linkage to generate an elliptic translation and corresponding link graph In engineering applications, revolute joints are preferred over translational joints. Hence, we focus on factorizations with revolute joints only. In this case, a necessary requirement is that the motion parametrized by C is bounded, i.e., all trajectories are bounded rational curves. We also say that the motion polynomial C itself is bounded. Indeed, we have Theorem 2. For every bounded motion polynomial C there exists a real polynomial R such that CR admits a factorization CR = (t −h1)···(t −hm) with rotation polynomials t −h1, . . . , t −hn. The degree of R is bounded by the maximal degree of a real factor of the primal part of C. Theorem 2 has been proved in [6] for the planar case and in [22] for the general case. The proofs are constructive so that factorizations can be effectively computed. The main ingredients are variants of the Euclidean algorithm for polynomial division over the (dual) quaternions and the solution of quadratic equations with real coefficients over quaternions [13]. It is worth noting that infinitely many factorizations exist if degR > 0. As an application of Theorem 2, consider the elliptic translation appearing in Example 4. There exists a quadratic real polynomial R such that CR admits the factorization CR = (t −h1)(t −h2)(t −h3)(t −h4). From this, we construct an (admittedly complicated) linkage to generate an elliptic translation (Figure 5): • The linkage consists of four anti-parallelograms (himikimi−1 for i ∈{1,2,3,4}). • Six angles (∢(hi,mi,hi+1), ∢(ki,mi,ki+1), for i ∈{1,2,3}) are kept constant during the motion. In other words, we have a chain of anti-parallelograms, where each anti-parallelogram “follows” its predecessor. • The rigid body attached to the connection of m4 and h4 performs the elliptic translation. The point h4 “draws” the indicated ellipses. Figure 5 also shows a more abstract representation of the same linkage. In this “link graph”, each vertex represents a link (a rigid connection between revolute joints) and each edge represents a joint. Two vertices are connected, if the corresponding links share a joint. The linkage of Figure 5 was constructed by augmenting the given factorization (h1, h2, h3, h4) with one additional joint m0 and then successively computing the remaining joints by solving the recursion (t −mi−1)(t −hi) = (t −ki)(t −mi), i ∈{1,2,3,4} (3) with the aid of Algorithm 1. We call this computation of ki and mi from mi−1 and hi a Bennett flip. This name comes from the fact that in the spatial case the involved dual quaternions determine the axes of a Bennett linkage. In the planar case, a Bennett flip generates anti-parallelograms. 7 h1 h1 h2 h2 h3 h3 k1 k1 k2 k2 k3 k3 m0 m0 m1 m1 m2 m2 m3 m3 x h1 h1 h2 h2 h3 h3 k1 k1 k2 k2 k3 k3 m0 m0 m1 m1 m2 m2 m3 m3 Figure 6: Linkage to draw an ellipse and link graph Figure 6 presents a refinement of this construction. Instead of multiplying C with a polynomial R ∈R[t], we right multiply it with the linear polynomial H := t −k ∈H[t] such that the product CH admits a factorization. Of course, C and CH parametrize different motions but the fixed points of H (points of the third coordinate axis) retain their trajectories. Hence, we obtain a linkage that is capable of drawing the prescribed ellipse. The triples of collinear joints come from the fact that the constant angles in the linkage of Figure 5 are straight for the linkage of Figure 6. The motion of the link connecting m3 and h3 is no longer an elliptic translation and generic trajectories are of degree greater than two. It is a yet unpublished result that one can always find a polynomial H ∈H[t] such that CH admits a factorization. Using the Bennett flip technique, one can then construct a (in general) spatial linkage with prescribed trajectories. The anti-parallelograms of Figure 6 become Bennett linkages and the additional freedom we gain by multiplying with a quaternion polynomial H ∈H[t] instead of a real polynomial R ∈R[t] can be used to reduce the number of anti-parallelograms. The constructions of this section are not restricted to ellipses but can be generalized to arbitrary rational space curves. First let D denote a rational curve of degree d in the Euclidean 3-space. Then consider a motion polynomial C that parametrizes a rational motion with trajectory D, for example the curvilinear translation along D. Using the algorithm of Theorem 2 we arrive at a factorization of CR as (t −h1)...(t −hm). This gives us an open chain of m revolute joints representing our motion polynomial C. Using Bennett flips as in (3), we can construct linkages with only revolute joints that draw arbitrary (bounded) rational curves. This is not a new result. By a celebrated theorem of mechanism science (Kempe’s Universality Theorem [5; 15]), any bounded portion of an algebraic curve can be drawn by a linkage. Our approach shows that in the rational case the number of necessary links and joints decreases dramatically. The asymptotic bound for rational curves is linear in the curve degree n while the currently best known bound for general algebraic space curves is cubic [1]. Moreover, our general construction behaves quite well in important low-degree cases. The linkage in Figure 6 has only ten joints while the ellipse linkage in Kempe’s construction requires as much as 235 joints. Often it is possible to further reduce the number of joints so that engineering applications come into reach. For example, only seven joints are necessary to generate the so-called Darboux motion, a spatial motion where all trajectories are ellipses in non-parallel planes [20; 21]. 8 5 Conclusion Motion polynomial factorization is an algebraic theory with surprising relations to mechanisms science. The interplay between both disciplines is beneficial to both. Algebra can provide solutions to hitherto inaccessible engineering problems and requirements of applications led to interesting algebraic questions. Our current work focuses on both, the details of a version of Kempe’s Universality Theorem for rational space curves with emphasis on a low number of links and joints and further applications of motion polynomial factorization to engineering problems. Acknowledgments This work was supported by the Austrian Science Fund (FWF): P 26607 (Algebraic Methods in Kinematics: Motion Factorization and Bond Theory). References [1] T. G. Abbott, Generalizations of Kempe’s universality theorem, Master’s thesis, Massachusetts Institute of Technology, 2008. [2] G. T. Bennett, A new mechanism, Engineering 76 (1903), 777–778. [3] G. T. Bennett, The skew isogramm-mechanism, Proc. London Math. Soc. 13 (1913–1914), no. 2nd Series, 151–173. [4] K. Brunnthaler, H.-P. Schröcker, and M. Husty, A new method for the synthesis of Bennett mechanisms, Proceedings of CK 2005, International Workshop on Computational Kinematics (Cassino), 2005. [5] E. D. Demaine and J. O’Rourke, Geometric folding algorithms: Linkages, origami, polyhedra, Cambridge University Press, 2007. [6] M. Gallet, C. Koutschan, Z. Li, G. Regensburger, J. Schicho, and N. Villamizar, Planar linkages following a prescribed motion, Submitted for publication, 2015. [7] B. Gordon and T. S. Motzkin, On the zeros of polynomials over division rings, Trans. Amer. Math. Soc. 116 (1965), 218–226. [8] G. Hegedüs, Z. Li, J. Schicho, and H.-P. Schröcker, The theory of bonds II: Closed 6R linkages with maximal genus, J. Symbolic Comput. 68 (2015), no. 2, 167–180. [9] G. Hegedüs, J. Schicho, and H.-P. Schröcker, Construction of overconstrained linkages by factorization of rational motions, Latest Advances in Robot Kinematics (J. Lenarˇciˇc and M. Husty, eds.), Springer, 2012, pp. 213–220. [10] G. Hegedüs, J. Schicho, and H.-P. Schröcker, Factorization of rational curves in the Study quadric and revolute linkages, Mech. Machine Theory 69 (2013), no. 1, 142–152. [11] G. Hegedüs, J. Schicho, and H.-P. Schröcker, The theory of bonds: A new method for the analysis of linkages, Mech. Machine Theory 70 (2013), 407–424. [12] G. Hegedüs, J. Schicho, and H.-P. Schröcker, Four-pose synthesis of angle-symmetric 6R linkages, ASME J. Mechanisms Robotics 7 (2015), no. 4. [13] L. Huang and W. So, Quadratic formulas for quaternions, Appl. Math. Lett. 15 (2002), no. 15, 533–540. [14] B. Jüttler, Über zwangläufige rationale Bewegungsvorgänge, Österreich. Akad. Wiss. Math.-Natur. Kl. S.-B. II 202 (1993), no. 1–10, 117–232. [15] A. B. Kempe, On a general method of describing plane curves of the nth degree by linkwork, Proc. London Math. Soc. (1876), 213–216. 9 [16] J. L. Krames, Zur Geometrie des Bennett’schen Mechanismus, Österreich. Akad. Wiss. Math.-Natur. Kl. S.-B. II 146 (1937), 145–158. [17] Z. Li, Sharp linkages, Advances in Robot Kinematics (J. Lenarˇciˇc and O. Khatib, eds.), Springer, 2014, pp. 131–138. [18] Z. Li and J. Schicho, Classification of angle-symmetric 6R linkages, Mechanism and Machine Theory 70 (2013), 372 – 379. [19] Z. Li and J. Schicho, Three types of parallel 6R linkages, Computational Kinematics (F. Thomas and A. Perez Gracia, eds.), Mechanisms and Machine Science, vol. 15, Springer Netherlands, 2014, pp. 111–119 (English). [20] Z. Li, J. Schicho, and H.-P. Schröcker, Spatial straight line linkages by factorization of motion polynomials, ArXiv e-prints (2014). [21] Z. Li, J. Schicho, and H.-P. Schröcker, 7R Darboux linkages by factorization of motion polynomials, Accepted for publication in the Proceedings of the 14th IFToMM World Congress 2015, 2015. [22] Z. Li, J. Schicho, and H.-P. Schröcker, Factorization of motion polynomials, feb 2015. [23] Z. Li, J. Schicho, and H.-P. Schröcker, The rational motion of minimal dual quaternion degree with prescribed trajectory, To be submitted for publication, 2015. [24] A. J. Perez, Analysis and design of Bennett linkages, Ph.D. thesis, University of California, Irvine, 2004. [25] C. H. Suh, On the duality in the existence of R-R links for three positions, ASME J. Mechanical Design 91 (1969), no. 1, 129–134. [26] L.-W. Tsai and B. Roth, A note on the design of revolute-revolute cranks, Mech. Machine Theory 8 (1973), no. 1, 23–31. [27] G. R. Veldkamp, Canonical systems and instantaneous invariants in spatial kinematics, Journal of Mechanisms 2 (1967), no. 3, 329–388. [28] W. Wunderlich, Zur Differenzengeometrie der Flächen konstanter negativer Krümmung, Österreich. Akad. Wiss. Math.- Natur. Kl. S.-B. II 160 (1951), no. 2, 39–77. 10