Structural mobility criteria, such as the well-known Chebychev-Kutzbach-Grübler (CKG) formula, give the correct generic mobility of a linkage (possibly of a certain class, e.g. planar, spherical, spatial) provided that it is not topologically overconstrained. As a matter of fact all known structural mobility criteria are prone to topological redundancies.
In this paper a combinatorial algorithm is introduced that determines the correct generic/topological mobility of any planar and spherical mechanism. The algorithm also yields a set of independent links that can be used as input, as well as the redundantly constrained sub-linkages. A mathematical proof of the algorithm and the underlying mathematical concept is presented. The proposed method relies on an established algorithm developed within combinatorial rigidity theory, called pebble game, originally developed for checking the rigidity/immobility of constraint graphs. A novel theorem is introduced and later proved in the paper which in turn enables applying the algorithm to any holonomic planar or spherical mechanism with higher and lower kinematic pairs and multiple joints. A further important result of applying this algorithm is that it gives rise to a decomposition into Assur graphs, which is briefly discussed in this paper.