Twenty-eight, not forty
Assumes The paths that leave and Six legs and a square root.
lib/parallel.js has carried this sentence since the parallel field was written:
The theoretical answer for a general Gough platform is that the forward problem has forty solutions in the complex numbers, a result from elimination theory rather than from a search, and how many are real depends on the platform and the lengths. This function does not compute forty.
Everything in it is true. The forty is right, elimination theory is where it comes from, and the honesty about not computing it is exactly the right register.
It sits next to a picture of a platform that has twenty-eight.
Computing the forty
The first thing this field’s machinery was pointed at was the classical number itself, because a count that reproduces a published result is a count with a witness.
The system is seven unknowns — a quaternion and a translation — and seven equations: six leg lengths and the quaternion’s own normalisation. Every leg equation is cubic and the normalisation is quadratic, so Bézout’s number is .
Tracking all 1,458 paths on a platform whose twelve anchors are in general position gives 80 finite solutions, and the 80 come in ± pairs, because a quaternion and its negative are the same rotation. Eighty solutions, forty poses.
That agreement is worth pausing on. The forty in the literature comes from an elimination — a symbolic argument that produces a univariate polynomial of degree forty and proves the count. The forty here comes from following 1,458 numerical paths and seeing how many arrive. The two have almost nothing in common except the answer, which is the best kind of agreement to have.
The factor of two is not a discrepancy and is worth stating explicitly rather than dividing away. assertGoughHasFortyPoses requires eighty solutions, each paired with its own negative, and it is written that way on purpose: collapsing the pairs before counting would hide the double cover and make the agreement with the classical number look like a confirmation when it is an arithmetic coincidence waiting to be checked.
And then the site’s own platform
GoughPlatform builds its anchors like this: three pairs on a circle of one radius for the base, three more pairs on a smaller circle for the platform, each pair straddling one of three directions 120° apart.
That is a perfectly reasonable way to build a platform and it is very close to how real ones are built. It is also a symmetry, and Bézout’s genericity argument is precisely an argument about mechanisms that do not have one.
Running the same 1,458 paths against it gives 56 solutions. Twenty-eight poses.
The count is stable: 56 at four different random deformations, 56 at four different poses of the platform, and 56 with the anchors jittered by anything up to a thousandth. It is not a numerical accident and it is not a lost path — the ± pairing holds, so the count is even, and every path is accounted for as arrived or departed.
The platform this site has been drawing since the parallel field simply does not have forty poses.
Where the other twelve are
The interesting question is what happened to them, and the answer is visible if the anchors are shaken hard enough.
At zero jitter: 56 solutions, the largest at 25.8.
At a jitter of a thousandth: still 56. The symmetry is broken, but not enough for anything to change.
At a jitter of five hundredths: 80, and the twenty-four new ones are at coordinates of order — forty times further out than anything that was there before.
That is what a solution coming in from infinity looks like. For the symmetric platform the twelve extra poses are not absent; they are on the line at infinity, where the equations put them and where no machine can be. Breaking the symmetry pulls them into the finite part, and the further the symmetry is broken the closer in they come — at a jitter of 0.2 the largest is down to 88.
assertTheSiteSPlatformIsSpecial requires all three facts at once, and requiring all three is what makes it an explanation rather than an observation. A check that only tested the symmetric platform would pass on a tracker that had simply lost twenty-four paths. A check that only tested the generic one would never have noticed that the site was drawing a platform its own docstring described wrongly. And the third clause — that the restored solutions arrive an order of magnitude further out than the ones that were always there — is what says they came from infinity rather than merely appearing.
Why a symmetry does this
The mechanism is not mysterious, though the details are.
Bézout’s theorem counts intersections in projective space. How many of them are at infinity is determined by the leading forms of the equations — the parts of highest degree, which is where the behaviour at infinity lives. For a generic set of coefficients those leading forms intersect the line at infinity in a predictable number of points. A symmetry among the anchors makes the leading forms share a factor, or become dependent, and the intersection at infinity becomes larger than the generic one — taking solutions from the finite part to pay for it.
The total is conserved. Bézout’s 1,458 is unchanged; what changes is how it splits between the finite plane and infinity.
The clean way to see the same thing in miniature is a case this site has already met. Two circles meet in four points, two of which are at infinity, and that is a degeneracy too — a general pair of conics meets in four finite points, and circles are the special conics that spend two of their four at the circular points. The platform’s symmetry is the same phenomenon with twenty-four instead of two.
What has to be amended, and what does not
Three sentences on this site need changing and it is worth being precise about which.
“The Gough platform has forty solutions” is right about the general platform and was never claimed to be about this one. It stands.
“This function does not compute forty” is now half-true. The function still does not, and this field does — and the number it computes for this platform is not forty.
Every figure that shows this platform’s assemblies is showing a mechanism with 28 complex poses. None of those figures said otherwise, because none of them claimed a count. That is the reason nothing was ever published incorrectly: the parallel field was careful to report what it had measured and to label the theoretical number as belonging to the general case. The gap was between two true statements sitting next to each other, and a reader entitled to assume they were about the same object.
That number is a bound and not a count, and the distinction is worth seeing beside a count that genuinely moves — because what is being claimed here is that twenty-eight does not.
The count is the same at every pose
One thing had to be checked before any of this could be said, because it would be an easy mistake.
The number of solutions of the direct kinematics is a property of the architecture — where the twelve anchors sit — and not of the leg lengths commanded. Different leg lengths are different members of the family, and every member of a family has the same complex count. But that is the claim, not the evidence, and the claim is exactly what a special architecture puts in doubt: a degeneracy could in principle be a degeneracy of one pose rather than of the design.
So the platform was counted at four unrelated poses — at its home position, tilted, translated off-axis, and lifted — and it returns 56 at every one. The real count varies enormously across those four: 32 real solutions at the home pose, 16, 8 and 24 at the others, which is 16, 8, 4 and 12 real poses. The complex total does not move.
That is the distinction from the count that does not move in its sharpest form, on the largest mechanism the site builds. The number 28 belongs to the platform. The number of ways it can actually be assembled belongs to the leg lengths, and it ranges over a factor of four.
It also disposes of a tempting explanation. If 56 had appeared only at the symmetric home pose and 80 elsewhere, the story would have been about a configuration being degenerate rather than a design — which is a different and much more ordinary phenomenon. It is not that. Twenty-eight is the architecture’s number.
Whether a symmetric platform is a worse platform
The obvious follow-up question is whether having twenty-eight poses instead of forty is good or bad, and the honest answer is that it is very close to irrelevant, for a reason worth setting out.
The poses that vanished were complex. A pose with an imaginary part is not a configuration of a machine, and for the platform at its home pose only sixteen of the twenty-eight are real anyway. Losing twelve complex poses costs a machine nothing at all.
Where it matters is in the analysis rather than in the machine. A method that assumes forty and finds twenty-eight has, from its own point of view, lost twelve — and if that method is an elimination expecting a degree-forty polynomial, it gets a degenerate one and may fail rather than answer. Special architectures are studied precisely because the general theory does not apply to them, and the reason to know that a platform is special is so that the right tool is used on it.
There is a second reason, and it is the one that made these architectures popular in the first place: a platform with a symmetry often has a direct kinematics that can be solved in closed form, where the general one cannot. The extreme case is the octahedral platform, whose anchors coincide in pairs, and whose forward problem reduces to a polynomial small enough to solve exactly. Symmetry costs solutions and buys tractability, and the trade is deliberate wherever it is made.
This site’s platform is not that extreme case — its anchors are distinct — and whether its 28 admits a closed form is not something computed here. It is named as an open thread rather than implied away.
The threshold that had to be loosened
One practical detail of the jitter figure is worth recording, because it is the sort of thing that produces a wrong picture quietly.
The tracker abandons a path once its coordinates pass a threshold, on the grounds that a path out at is going to infinity and there is nothing to be gained by following it. That is what makes the complete route affordable — 1,378 of 1,458 paths are dropped in a handful of steps.
The whole content of this figure is solutions that are far out and finite. At a jitter of 0.05 the twenty-four returning poses sit at coordinates of order , which is nowhere near the default threshold; but the paths reaching them wander further still on the way, and with the usual settings some were abandoned before they arrived. The count came back as 79 — an odd number, which the ± pairing says is impossible.
So the figure runs with the threshold three orders of magnitude looser and the step budget raised, and it costs several times what an ordinary run costs. That is the honest price of a picture whose subject is the thing the fast path exists to discard, and it is worth being explicit that the parameter was changed rather than letting the figure quietly use different settings from every other count on the site.
The 79 is the more useful half of the story. Nothing about it looked wrong. It is a plausible number, it came from a run in which every path was accounted for, and the only reason it was caught is that this system has a symmetry which makes odd counts impossible. Most systems do not.
How this was nearly missed
The route to noticing was accidental and the accident is worth recording, because the deliberate route did not exist.
The generic platform was built first, as a test case for the tracker: twelve anchors placed with deliberately unequal spacings so that nothing about it would be special. It gave 80, agreeing with the classical 40, and that was the result the machinery was being tested against.
Only afterwards was the tracker pointed at the platform the site draws, on the assumption that the answer would obviously be the same. It was not.
Nothing about the site would have flagged the difference. The parallel field’s figures do not quote a count of complex solutions; they show assemblies found by search, which is a real count and behaves quite differently. Its docstring quotes forty and attributes it correctly to the general case. Every gate passes either way, because no gate has ever asked how many complex poses a platform has — there was no machinery capable of asking until this phase.
So the gap was not a failure of any check. It was a question nobody could pose, and the first time it could be posed the answer was not the one everybody would have guessed. That is a reasonable description of what a new field is for.
What a reader should take from a published count
The general habit this suggests is small and worth stating, because it applies well beyond platforms.
A count in the literature is nearly always a count for the generic member of a family, and it is nearly always quoted without the word. Forty is the general platform’s; sixteen is the general 6R serial arm’s inverse kinematics; six is the general planar three-legged platform’s. Each of those is a theorem about a measure-zero complement, and each is quoted as though it were a property of the class.
The mechanism in front of a reader is usually not generic, because somebody designed it, and designing means imposing regularity. So the question to ask of a published count is not whether it is right but whether the mechanism at hand is in the family the count is about — and that question has a cheap experimental answer: perturb the design and see whether the count moves.
This site now runs that experiment as a check rather than as a courtesy, and it found the one platform it draws to be outside the family whose number it was quoting.
What generic means, and how to tell
The word generic does a great deal of work in this field, and this platform is the case that gives it teeth.
A property holds generically if it holds for all coefficient values outside some lower-dimensional set. “The direct kinematics has forty solutions” is a generic property of six-legged platforms. The set where it fails has measure zero — so a platform with anchors chosen at random has forty with probability one.
And nobody builds a platform with anchors chosen at random. Every architecture that a person would design has some regularity in it, and regularity is exactly what puts a mechanism in the measure-zero set. The generic case is the one that never gets built, which is an uncomfortable thing to notice about a body of theory built on genericity.
The practical test is the one this essay performs: jitter the design and see whether the count changes. If it does, the design was special. That is not a proof of anything — a jitter of 0.001 changed nothing here and a jitter of 0.05 changed everything, so the answer depends on how hard the shake is — but it is a cheap experiment that turns an assumption into a measurement, and it is now a check the site runs.
The parallel field’s own screw-system essays reached the same shape of conclusion from a different direction: the mechanisms that count as exceptions to Kutzbach’s formula are, without exception, the ones with a symmetry, and the formula is right about the ones nobody builds. It is the same sentence twice, once about mobility and once about counting.
What this makes readable
Essays that name this one as a prerequisite.
- The search that was right How many answers
- Branches were components all along One path to the tool
About the same objects
Not linked from either essay — found by the objects both name.
- Following a root from a problem already solved bezout · complex solution · polynomial system
- Five positions, and what is left bezout · polynomial system
- How many points may be prescribed bezout · polynomial system
What links here
The 8 of 15 essays linking to this one that name the most of the same objects.
- The paths that leave How many answers
- The count that does not move How many answers
- Two circles, four answers How many answers
- A yaw that is singular everywhere Several legs, one platform
- Branches were components all along One path to the tool
- Eight ways to hold the same tool One path to the tool
- Four that a compass cannot reach The chain before the lengths
- Right until the size nobody checked The chain before the lengths
The objects this essay names
Each one links to every other essay that touches it.
BezoutComplex solutionDirect kinematicsGough platformPolynomial systemQuaternionSolutions at infinitySpecial architecture