Fragility has a direction
Assumes Two ways to be overconstrained.
This site has been admiring overconstrained mechanisms for two phases. Sarrus’s linkage gives exact straight-line motion from six bars and counts as immobile. Bennett’s four-bar moves for one relation between its lengths and twists. The planar four-bar itself, counted in space, is the same phenomenon.
Every one of them works because some constraint is imposed more than once and the copies agree — and two constraints agree only while the geometry is exact. So the obvious conclusion, which four essays here have arrived at in different words, is that overconstrained mechanisms cannot be built.
That conclusion is too crude to be useful, and it is wrong about the case it is usually said of.
The experiment
Sarrus’s linkage is two three-joint chains between the same two plates. Chain A’s three axes are all parallel to x̂, so it confines the moving plate to a plane; chain B’s are all parallel to ŷ, confining it to another. The intersection of the two allowances is translation along ẑ, exactly, produced by pin joints with no approximation anywhere.
The perturbation is the smallest one that can be made: take the middle axis of chain A and rotate it by an angle. Nothing else changes — same six links, same six revolutes, same link lengths, same topology. One axis is not quite where the drawing says.
There are two directions to rotate it in, and both are equally plausible as manufacturing errors. About ẑ keeps the axis perpendicular to the direction of travel; call it in plane. About ŷ leans it along the direction of travel; call it out of plane.
At 0.001 radians — a twentieth of a degree, which is a fine tolerance on any bored hole — the out-of-plane tilt takes the motion range from a full turn to zero. The mechanism does not move.
At 0.2 radians — eleven and a half degrees, which is not a manufacturing error by any standard and would be visible across a workshop — the in-plane tilt leaves the motion range at a full turn. Nothing measurable has happened.
Two hundred times the error. Three orders of magnitude between them, and no difference at all except direction.
Why, and what it says about the count
The explanation is the reciprocal screw system, which this site built two phases ago for a different purpose.
A mechanism’s freedoms are a subspace of screw space. Everything orthogonal to that subspace under the reciprocal product is a wrench the mechanism carries without moving — the constraints. For Sarrus’s linkage the freedom is one screw, the translation along ẑ, and the constraint system is the five-dimensional space reciprocal to it.
Chain A contributes a set of constraints and chain B contributes another, and the mechanism is overconstrained precisely because those two sets overlap. The overlapping constraints are imposed twice. Where the two copies agree, nothing happens; where a perturbation makes them disagree, the loop is over-determined in earnest and cannot close.
But a perturbation does not necessarily move a doubly-imposed constraint. Tilt the axis in a direction that lies within the system chain A was already free in, and the constraint it imposes is unchanged — the two copies still agree, and the mechanism does not notice. Tilt it in a direction that changes the imposed constraint, and the copies part company immediately.
So the sentence “an overconstrained mechanism must be exact” should read: it must be exact in the directions its redundant constraints depend on, and it is completely indifferent in the others. That is a statement with content, it names a computable subspace, and it turns a warning into a specification.
Bennett’s is the case with no forgiving direction
The contrast is worth having, because it stops the conclusion becoming a new piece of folklore in the other direction.
Bennett’s four-bar has a single scalar condition relating its two lengths and two twists: sin α / a = sin β / b. There is one number, it is either right or it is not, and there is no direction to be wrong in.
The measurement is brutal and clean. At δ = 0 the driven joint sweeps 225°. At δ = 10⁻⁵ the loop does not close at any configuration reachable from its nominal one, and the same is true at every larger perturbation tried.
That is a real difference between two mechanisms both correctly described as overconstrained, and it comes from the shape of what makes each of them work. Sarrus’s redundancy is geometric — two chains, each confining the plate to a surface, and the surfaces intersect in a line — and a perturbation that keeps the surfaces intersecting is harmless. Bennett’s is algebraic: one equation in four parameters, satisfied or not.
Overconstraint is therefore not one property. It is a family, and the members differ in how many dimensions of manufacturing error they can absorb — which is exactly the dimension of the space of perturbations that leaves the redundant constraints agreeing.
The gap is proportional to the error, and that is the useful part
Saying that Bennett’s linkage “does not move” at any perturbation is true and not actionable. Something must distinguish one part in a million from one part in a hundred, and it does.
The quantity underneath is how badly the loop fails to close: the residual the solver drives down to and then cannot improve. Measured across four decades of detune it is exactly proportional to the detune — the ratio varies by 0.07% between δ = 10⁻⁶ and δ = 10⁻² — with a constant of 0.507.
A straight line of slope one on log paper is not a surprise — a first-order argument predicts it — but the constant is not available from any theory, and the constant is the whole practical content. Shared over four joints it says each pin must absorb 0.127 δ of misfit.
Which is to say: a Bennett linkage machined to one part in a thousand needs about a ten-thousandth of a link length of play in each pin. On a link of 1.6 cm that is sixteen microns, which is an ordinary running fit and is what those joints would have anyway.
So the mechanism that cannot be built is buildable, and the thing that builds it is the clearance that was there for other reasons. That is the next essay, and it is the resolution of a tension this site has been carrying since its spatial phase.
The planar four-bar is the same story, told about something familiar
The two mechanisms above are exotic. The point generalises to the least exotic mechanism there is, and that is where it stops being a curiosity.
A planar four-bar, counted in space, has mobility −2 and rank 3: it is overconstrained, and it is overconstrained because its four axes are exactly parallel. Exactly parallel is a measure-zero condition. No four holes ever bored were exactly parallel.
So by the argument of this essay a four-bar should not work, and the question is which direction of error it forgives.
It forgives a great deal. The four axes’ positions can wander — that is just a length tolerance, and the first half of this field says what it costs in output angle and nothing more. What the mechanism does not forgive is the axes going out of parallel, because that is the redundancy: the four constraints “the plate stays in this plane” are the same constraint imposed four times, and they agree only while the axes are parallel.
A four-bar with one axis out of parallel by a thousandth of a radian is therefore, by the same argument as Sarrus, a mechanism that cannot close. And yet every four-bar ever built has axes out of parallel by rather more than that.
The resolution is that the misfit is small in absolute terms — an axis out of true by δ over a bearing of length L produces a misfit of order δL — and it is absorbed by the clearance, which is present in every one of those joints for entirely unrelated reasons. That is the whole of the next essay, and it is why the argument here matters far beyond the two mechanisms it was measured on.
What the measurement is, precisely
Two pieces of care, because the headline numbers are strong and should be readable rather than trusted.
The motion range is found by walking: the loop is assembled, the driven joint is stepped by 0.02 radians, and each solve is seeded by the previous one — exactly as a built mechanism carries its configuration forward. The walk stops when a solve fails. That is a measurement of how far the mechanism can be driven from where it is, which is the operational question, and it is not the same as asking whether some configuration exists somewhere in the parameter space that closes.
The range a walk finds also depends on the step it walks in, and by more than rounding — Bricard’s six-bar reaches 18.3° at a step of 0.02 and 109.4° at 0.005, because a smaller step keeps the seed closer. Every number here is therefore reported with its step, and the comparison between the two directions is sound because both used the same one.
For Bennett the second check is separate and stronger: the residual at the nominal configuration is 8.1 × 10⁻⁷ at a detune of 10⁻⁶ and the solver reduces it only to 5.07 × 10⁻⁷ before stalling. The loop is not merely hard to drive; it does not close where it stands.
A note on what “does not move” means here
Two different failures are both being reported as zero motion range, and separating them is worth a paragraph because they have different fixes.
The first is that the loop cannot be driven from where it is: it assembles at its nominal configuration, and every attempt to step the driven joint away fails to close. The mechanism is a structure with one valid pose.
The second is that the loop does not assemble at all: even at the nominal configuration the residual will not come down. That is the Bennett case, and it is stronger — the residual at the nominal pose is 8.1 × 10⁻⁷ at a detune of 10⁻⁶, and the solver reduces it only to 5.07 × 10⁻⁷ before stalling.
The distinction matters because a mechanism of the first kind can sometimes be rescued by assembling it in a different pose, and one of the second kind cannot be assembled anywhere. Both look identical in a motion-range table, which is why the residual is measured separately rather than inferred from the range.
What a designer does with this
The practical shape of the result, since it is easy to read as a piece of theory.
Given an overconstrained mechanism, the redundant constraints are computable — this site computes them for every loop in its ledger. Each redundant constraint depends on some of the geometry and not on the rest, and the perturbations that leave it undisturbed form a subspace.
That subspace is a tolerance specification, and an unusually informative one: it says which features must be held tightly, which may be loose, and — this is the part no ordinary tolerance analysis produces — which directions of error on a given feature matter. A hole whose position may wander a millimetre and whose axis must be parallel to a thousandth is a perfectly ordinary thing to specify, and it is the kind of specification this analysis produces and a scalar sensitivity does not.
The manufacturing consequence follows immediately: features whose direction matters should be produced in one setup on one machine, because that is what holds relative orientation. Features whose position matters and whose direction does not can be located separately and cheaply. That is a real difference in how a part is made, decided by a computation on the mechanism’s screw system.
None of which is available from the sentence “an overconstrained mechanism must be exact”. That sentence gives one instruction — make everything as accurate as possible — which is the instruction a designer gives when they do not know which errors matter.
The two mechanisms are not equally useful examples
Worth being clear about which of the two results generalises, because they generalise differently.
Bennett’s linkage is the cleaner measurement and the narrower lesson. One scalar condition, satisfied or not, no forgiving direction, and a beautifully linear misfit. It is the case where “must be exact” is simply true, and its value here is as a control: it shows that the Sarrus result is a property of Sarrus rather than an artefact of the method.
Sarrus is the broader lesson and the messier measurement. Its redundancy is geometric and multi-dimensional, so there is a whole subspace of harmless errors, and finding which is a computation on its screw system rather than a glance at an equation.
Most mechanisms that are overconstrained on purpose are of the second kind. A hinge, a linear guide with two rails, a three-legged table with four legs, a parallel-motion mechanism with a redundant bar: each imposes some constraint more than once for reasons of stiffness or load sharing, and each has directions of error it does not care about. Bennett-like mechanisms, where a single algebraic relation must hold, are rare and are usually the ones with names.
So the practical reading is Sarrus’s rather than Bennett’s, and the practical question about any overconstrained design is not “is it fragile” but “in which directions”.
A last framing. The two numbers in the title of this essay — 0.001 and 0.2 — are not a property of Sarrus’s linkage in the way its motion range is. They are the smallest and largest perturbations that happened to be tried, and the real content is that one direction failed at the smallest and the other survived the largest. Narrowing either bound would take more sampling and would not change the conclusion, which is qualitative: the two directions are separated by more decades than any manufacturing process spans.
Writing the subspace onto a drawing
The redundant directions are a tolerance specification is the practical claim, and it is worth following into the document that actually reaches a workshop, because a subspace of screw space is not something a drawing can carry.
What a drawing carries is geometric tolerances between features: parallelism between two axes, angularity between an axis and a face, position of a hole relative to a datum. Each of those is a statement about a relation, and each corresponds to a direction that a perturbation can move in.
So the translation is a matching exercise and it goes one way. For each redundant constraint the reciprocal system names, identify the feature relation it depends on — the parallelism of two bores, the perpendicularity of two axis directions, the concurrence of three axes — and tolerance that relation tightly. Everything else gets whatever the process gives for free.
The payoff is the factor this essay measured. A Sarrus linkage toleranced uniformly is being made to the tight standard in directions where two hundred times the error would have been harmless, and every one of those is a feature somebody is paying to hold. Toleranced by the subspace, the tight callouts land on the relations that matter and the rest of the part is ordinary work.
That is a genuinely unusual thing for a kinematic analysis to produce. Most of what this site computes tells a designer what a mechanism does; this tells a draughtsman which callouts to put on, and it is derived rather than inherited from practice. A drawing produced this way would look lopsided — a couple of very tight relations among generous ones — which is exactly what a well-toleranced overconstrained part should look like and rarely does.
And it says what the alternative costs. A drawing that holds everything tightly is not merely expensive; it is uninformative, because it does not tell anybody which relation the mechanism actually depends on. If something later has to be relaxed — for cost, for a process change, for a supplier — nobody knows which one is safe. The subspace is the answer to that question and it was computable all along.
Why this was not visible before
The site has had all the machinery for this since its spatial phase. constraintAnalysis computes the redundancy, the rank and the reciprocal system; bennett-cliff plots the redundancy against the detune and finds a spike one sample wide.
What was missing was the question. Every previous essay asked what the mechanism is — how many freedoms, how many redundant constraints, which screws — at exact geometry. None asked what happens at inexact geometry, because the site had no notion of inexact geometry until this field gave it one.
That is the ordinary shape of a phase here. The instantaneous count and the finite motion are different quantities, and a spike in the first turns out to be a cliff in the second; a perturbation parameter that existed for Bennett had no counterpart for Sarrus until this essay needed one, and adding it took four lines and produced the result the phase is named after.
What this makes readable
Essays that name this one as a prerequisite.
- Why a hinge works As built
- A piano hinge is not forty door hinges As built
About the same objects
Not linked from either essay — found by the objects both name.
- The formula is repaired by the thing it replaced constraint · kutzbach's criterion · mobility · overconstraint · reciprocal screw · redundant constraint · screw system · tolerance
- Six freedoms, not three constraint · kutzbach's criterion · mobility · overconstraint · the sarrus linkage · screw system
- The pair a catalogue sells clearance · constraint · mobility · overconstraint · tolerance
- The right angle as a tolerance clearance · mobility · overconstraint · redundant constraint · tolerance
- The seventh contact clearance · constraint · overconstraint · redundant constraint · tolerance
- A name for each overconstraint bennett's linkage · mobility · overconstraint · screw system
What links here
The 8 of 9 essays linking to this one that name the most of the same objects.
- Why a hinge works As built
- A piano hinge is not forty door hinges As built
- A clearance is a link As built
- Twelve bars and a symmetry Out of the plane
- How far the crank turns first As built
- What a fourth leg buys Several legs, one platform
- A joint that works one way Motion that stops
- Four numbers or a screw One path to the tool
The objects this essay names
Each one links to every other essay that touches it.
Bennett's linkageClearanceConstraintKutzbach's criterionMobilityOverconstraintReciprocal screwRedundant constraintthe Sarrus linkageScrew systemTolerance