  The key to a robust and efficient implementation of a computational geometry
algorithm is an efficient algorithm for detecting degenerate predicates. We
study degeneracy detection in constructing the free space of a polyhedron that
rotates around a fixed axis and translates freely relative to another
polyhedron. The structure of the free space is determined by the signs of
univariate polynomials, called angle polynomials, whose coefficients are
polynomials in the coordinates of the vertices of the polyhedra. Every
predicate is expressible as the sign of an angle polynomial $f$ evaluated at a
zero $t$ of an angle polynomial $g$. A predicate is degenerate (the sign is
zero) when $t$ is a zero of a common factor of $f$ and $g$. We present an
efficient degeneracy detection algorithm based on a one-time factoring of every
possible angle polynomial. Our algorithm is 3500 times faster than the standard
algorithm based on greatest common divisor computation. It reduces the share of
degeneracy detection in our free space computations from 90% to 0.5% of the
running time.
