The mechanism Grübler says cannot move
Take a frame with three pivots in a line. Hang three bars from them, all the same length, all parallel. Pin their far ends to a single rigid bar.
Count it. Five links — the frame, three parallel bars and the coupler. Six pin joints. Grübler’s criterion gives 3(5 − 1) − 2(6) = 12 − 12 = 0.
Zero degrees of freedom means a structure: one configuration, nothing to drive, nothing that moves. Build it and it swings quite happily.
Why the count fails
Grübler’s criterion assumes that every joint removes its full quota of freedom. Six pins, two each, twelve removed.
That is true only if the constraints are independent. Here they are not, and the dependence comes from the dimensions rather than from the arrangement.
Two of the parallel bars already fix the coupler’s motion completely: with two of them attached, the coupler must translate along a circular arc without rotating, and that is one degree of freedom with nothing left over. The third bar then asks for something already true. Its two equations are linear combinations of equations the other bars have written, so they remove nothing.
The formula cannot see that, because it never looked at a length. Make the third bar a different length, or move its pivot off the line, and the mechanism jams solid — at which point Grübler’s zero becomes correct, having been wrong for a reason it also could not see.
That is worth stating precisely, because it is the whole content of the paradox: the same topology gives a mechanism or a structure depending on the dimensions, and Grübler’s criterion has no dimensions in it.
What the Jacobian does instead
The constraint Jacobian has one row per constraint equation and one column per free coordinate. Rank counts the independent rows, and linear dependence is exactly what rank measures.
For this mechanism there are six free coordinates — three moving pins — and, once the input is replaced by the bar it stands for, six constraint equations. The rank is five. Mobility is 6 − 5 = 1.
Nothing in that calculation needed to know that the bars are parallel. The parallelism showed up as a linear dependence among rows of a matrix, which is what parallelism is once the geometry is differentiated.
The change point, and why the third bar is there
There is one input angle in the sweep where the solve refuses, and it is not a numerical failure.
At 180° all six pins lie on one line. There the constraints stop determining the configuration: the linkage can continue as a parallelogram or flip into an anti-parallelogram, where the coupler crosses over and turns the other way. Nothing in the geometry chooses between them. The solver arrives with a flat guess and a singular Jacobian and declines, which is the correct answer, because the position genuinely is not determined.
Measured at 60, 120 and 240 steps, the refusal is always exactly the first step past 180° and never anything else — so it is a property of the mechanism rather than of the sampling.
And this is where the redundant bar earns its place. A physical parallelogram passing through the flat position is decided by momentum, and momentum is not reliable. A third bar arranged so that it is off the line when the others are on it removes the ambiguity: at the change point it is the only link still constraining, and it holds the mechanism in its branch.
That is exactly what the coupling rods of a steam locomotive are doing. Three or four wheels coupled by rods form this linkage; at the position where the rods are horizontal the wheels could in principle counter-rotate, and the cranks on the opposite side — set at ninety degrees — are the redundant constraint that prevents it. A locomotive with both sides in phase would stop at that position and not restart.
The family this belongs to
Over-constrained mechanisms that work are not rare and they are not accidents.
Parallel-motion linkages — drafting machines, anglepoise lamps, the parallelogram arm on a desk light — use a third or fourth bar for stiffness and to share load, and every one is over-constrained by the count.
Double-parallelogram arrangements are used specifically to get through the change point, which is the trick described above.
Spatial cases are more striking still. The Sarrus linkage produces exact straight-line motion from two three-bar chains at right angles, and the spatial mobility formula gives it zero. Bennett’s four-bar is a spatial four-bar that moves only for one very particular combination of link lengths and twist angles; the count says it cannot move at all, and for almost every other combination the count is right.
The general term is overconstrained mechanism, and the practical significance is that they require accuracy. An over-constrained assembly with dimensions slightly off does not move slightly worse — it binds, because the redundant constraint stops being redundant.
What the disagreement is worth
A count that is wrong occasionally is not useless, and the way it is wrong is systematic.
Grübler never under-counts mobility. A redundant constraint makes the formula subtract too much, so the formula’s answer is a lower bound: if it says 1, the mechanism has at least 1. That is a genuinely useful guarantee, and it is the reason the criterion survives despite the exceptions.
What it cannot do is certify that something will not move, which is the direction people usually want when they are designing a structure. For that, the dimensions have to enter.
What this site does about it
Every mechanism here carries both numbers, and the build requires them to disagree on the redundant parallelogram.
That direction of assertion is unusual and it is the important one. If the two routes ever agreed on this mechanism, either the redundancy had gone — someone had changed a length — or the Jacobian measurement had stopped being independent of the formula. Both would silently invalidate every other row of the audit, where agreement is being offered as evidence.
An assertion that only ever confirms is not evidence of anything, which is a principle this site applies everywhere and which is at its most visible here.
The lesson that generalises
A formula that abstracts away part of the problem will be wrong exactly where the part it abstracted away mattered.
Grübler abstracts away the dimensions, and it is wrong when the dimensions create dependence. That is not a flaw to be patched; it is what abstraction costs, and the cost is usually worth paying because the formula works on a sketch and the measurement does not.
The useful discipline is knowing which abstraction a number came through, and having a second number that came through a different one. On this site that is the habit rather than the exception.
Why redundancy is designed in on purpose
A count that under-reports mobility is easy to read as a defect in the count. It is better read as evidence that engineers deliberately build mechanisms the count cannot handle, and it is worth being explicit about why they do it.
Load sharing. Two parallel bars carry half the load each, which is the same reason epicyclic gearsets use three planets where one would transmit the motion perfectly well. Three carry a third. The redundant constraints are redundant kinematically and not structurally, and the structural benefit is the reason they are there.
Passing the singularity. A single parallelogram loop has a change point at which it can flip into an antiparallelogram. A third bar removes the ambiguity: at the change point the third bar is the only thing distinguishing the two branches, and it picks one. Locomotive coupling rods on a two-cylinder engine have exactly this problem — the rods are the couplers of parallelogram loops driven by slider-cranks — which is why the cranks are quartered — the same fix by a different route.
Stiffness. A redundantly constrained mechanism deflects less under load, because the load path splits. That matters in machine tools, where the deflection of the mechanism is the error in the part.
The cost is manufacturing tolerance. A redundant mechanism only moves freely if the redundant constraints are consistent with each other, and consistency is a dimensional requirement. Three parallel bars must be equal in length to within the joint clearance, or the mechanism binds. That is the trade: kinematic redundancy buys load sharing and stiffness with precision.
What the Jacobian actually reports
The rank test is not a different formula for the same quantity — it answers a different question, and knowing which question makes it clear why it can disagree with Grübler.
The constraint Jacobian is the matrix of partial derivatives of every constraint equation with respect to every coordinate. Its rank is the number of independent constraints at the configuration being examined. The mobility is the number of coordinates minus that rank.
Two features follow immediately. First, the rank test counts independence rather than assuming it, so a constraint that duplicates another is counted once — which is exactly what the parallel bars do and exactly what Grübler cannot see. Second, the answer is local. The rank can change from one configuration to the next, and where it drops, the mechanism is at a singularity: a dead centre, a toggle, or a change point.
That locality is not a weakness of the test. It is a property of mechanisms that a global formula necessarily hides. A four-bar has mobility one nearly everywhere and mobility two at its change point, and only a configuration-by-configuration test can say so.
The measurement that makes the rank believable is the singular-value gap. Rank by counting non-zero singular values against a tolerance is meaningless unless the values are clearly separated, so every rank reported here also reports the ratio between the smallest value counted and the largest value discarded. Where that ratio is 10⁶ or more, the rank is not a judgement call. Where it collapses, the mechanism is at or near a singularity, and the figure says so rather than picking a number.
The reason this essay exists
The formula’s failure here is small — one mechanism, one wrong integer — and it is the site’s argument in miniature.
A drawn diagram of the three-bar parallelogram would show it moving. A formula says it cannot. A reader with the formula and the diagram has to decide which to trust, and there is nothing in either to decide with.
Solving it settles the matter without an appeal to authority: the mechanism assembles at 59 of 60 sampled crank angles, the residuals are at arithmetic noise, and the one refusal is the change point at 180°, at every sampling density tried. That is not an opinion about Grübler’s criterion; it is a list of configurations that exist.
How to tell in advance
A reader who has to judge a mechanism without a solver still benefits from knowing where the count is unreliable, and the warning signs are specific enough to be useful.
Parallel links. Two or more links constrained to remain parallel — coupling rods, pantographs, parallel-motion linkages, the four-bar suspension arms in a vehicle — almost always carry redundant constraints. The count will under-report.
Equal lengths that are equal on purpose. If a design specifies two links as equal rather than merely computing to equal, the equality is probably load-bearing in the kinematic sense, and the constraints will be dependent.
Symmetry. A mechanism symmetric about a plane or an axis has constraint equations that repeat, and repeated equations are dependent equations.
Concurrency. Three joint axes meeting at a point, or three constraint lines through one point, is the classic planar dependency and the one that produces a mechanism that looks rigid and is not.
Each of these is a case where the special relations among the dimensions are the design rather than a coincidence, which is why the mechanisms that break the count are disproportionately the ones people actually build. A randomly proportioned linkage almost never breaks Grübler; a deliberately proportioned one frequently does.
The general form is worth stating plainly. Grübler’s criterion answers “what is the mobility of a generic mechanism with this many links and joints”, and generic means the dimensions are in general position. Engineering is the practice of putting dimensions in special position on purpose. The two are therefore in structural tension, and the criterion’s failures are not exotic cases — they are the interesting mechanisms.
Which is why the rank test is not an alternative worth having occasionally. It is the measurement, and the count is the estimate that is usually right and cannot report when it is not.
A note on what the count is for
None of this is an argument against Grübler’s criterion, which is a good piece of work that answers its question correctly. It is an argument about what the question was.
The criterion takes the number of links and the number of joints of each class and returns the mobility of a mechanism with those numbers whose dimensions are generic. That qualification is not a caveat added later; it is what makes the derivation valid, since the derivation counts constraint equations and assumes they are independent.
Engineering violates the assumption constantly and on purpose. Equal link lengths, parallel axes, symmetric arrangements and concurrent lines are all specified deliberately, because they buy load sharing, stiffness, predictable behaviour at singularities or manufacturing convenience. So the mechanisms that break the count are not pathological — they are disproportionately the mechanisms worth building.
The right relationship between the two routes is therefore not “the formula is wrong, measure instead”. It is that the formula is an estimate whose failure mode is known and whose failures are predictable from inspection of the design. Count first, always. Measure when the design has put dimensions in special position, which is exactly when the count is most likely to matter.
The three-bar parallelogram is the smallest example that makes the point, and its usefulness is that both answers are checkable by hand: five links and six pins give zero by arithmetic, and the mechanism visibly turns. Anything larger and the reader has to take the numbers on trust, which is the situation the site exists to avoid.