Kempe's universality theorem

In 1876 Alfred B. Kempe published his article On a General Method of describing Plane Curves of the nth degree by Linkwork, which showed that for an arbitrary algebraic plane curve a linkage can be constructed that draws the curve. This direct connection between linkages and algebraic curves has been named Kempe's universality theorem: Any bounded subset of an algebraic curve may be traced out by the motion of one of the joints in a suitably chosen linkage. Kempe's proof was flawed and the first complete proof was provided in 2002 based on his ideas.

This theorem has been popularized by describing it as saying, "One can design a linkage which will sign your name!"

Kempe recognized that his results demonstrate the existence of a drawing linkage but it would not be practical. He states It is hardly necessary to add, that this method would not be practically useful on account of the complexity of the linkwork employed, a necessary consequence of the perfect generality of the demonstration. He then calls for the "mathematical artist" to find simpler ways to achieve this result: The method has, however, an interest, as showing that there is a way of drawing any given case; and the variety of methods of expressing particular functions that have already been discovered renders it in the highest degree probable that in every case a simpler method can be found. There is still, however, a wide field open to the mathematical artist to discover the simplest linkworks that will describe particular curves.

A series of animations demonstrating the linkwork that results from Kempe's universality theorem are available for the parabola, self-intersecting cubic, smooth elliptic cubic and the trifolium curves.

Simpler drawing linkages
Several approaches have been taken to simplify the drawing linkages that result from Kempe's universality theorem. Some of the complexity arises from the linkages Kempe used to perform addition and subtraction of two angles, the multiplication of an angle by a constant, and translation of the rotation of a link in one location to a rotation of a second link at another location. Kempe called these linkages additor, reversor, multiplicator and translator linkages, respectively. The drawing linkage can be simplified by using bevel gear differentials to add and subtract angles, gear trains to multiply angles and belt or cable drives to translate rotation angles.

Another source of complexity is the generality of Kempe's application to all algebraic curves. By focusing on parameterized algebraic curves, dual quaternion algebra can be used to factor the motion polynomial and obtain a drawing linkage. This has been extended to provide movement of the end-effector, but again for parameterized curves.

Specializing the curves to those defined by trigonometric polynomials has provided another way to obtain simpler drawing linkages. Bezier curves can be written in the form of trigonometric polynomials therefore a linkage system can be designed that draws any curve that is approximated by a sequence of Bezier curves.

Visualizations
Below is an example of a single-coupled serial chain mechanism, designed by Liu and McCarthy, used to draw the trifolium curve (left) and a hypocycloid curve (right). Using SageMath, their design was interpreted into these images. The source code can be found on GitHub.