Setting and geometry

The cloth that was called impossible

This site's own table of fabrics carries a note saying a real 44-end poplin has no solution in its geometry at all, and that the poplin row was therefore set at 32 ends. The cloth solves. What had no solution was the search — a bisection that treated a state it could not reach as evidence of having gone too far, and walked away from the answer every time.

Worth reading first: The crimp ratio is not a measurement · Peirce against the racetrack, measured · Crimp, and why cloth narrows when it is pulled.

Every cloth this site computes with comes out of one table: eight constructions with their setts and counts, each a plain weave, each chosen so that the ordering between them is right even though none of them is a measurement of a particular fabric. The table has carried a note since the cloth table was written, and the note says something specific and embarrassing.

A real 44-end poplin in 15 tex cotton has no solution in this model at all — the circular section asks for more room than the sett leaves — so the poplin row here is set at 32 ends per centimetre. The densest shirtings in the trade are outside a circular model’s reach — which would also have put them past the sett a plain weave admits at all.

It is quoted in an essay. It has been read, reasonably, as a statement about Peirce’s geometry.

It is false. The cloth solves.

The crimp ratios a dense shirting can have. Poplins in 15 tex warp and 20 tex weft at 22 picks, from 32 ends per centimetre to 52. Each bar is the interval of warp-to-weft crimp ratios the construction admits at all: the warp must supply at least the thickness the weft cannot reach, and at most what it can reach itself. The rule at one is this site's standing default. It sits inside the interval up to 44.18 ends per centimetre and outside it beyond — so for a dense shirting an equal division of the crimp is not merely the wrong assumption but a geometric impossibility. The 44-end poplin this site's own cloth table called impossible for a long time sits a fifth of an end below that limit, which is why the solver failed on it: its feasible interval was real and narrow, and a bisection on the whole range walked away from it.
Fig. 1 Poplins in 15 tex warp and 20 tex weft at 22 picks, from 32 ends per centimetre to 52. Each bar is the interval of warp-to-weft crimp ratios the construction admits at all. The rule at one is this site’s standing default; it sits inside the interval up to 44.18 ends per centimetre and outside it beyond. The 44-end poplin the table called impossible sits a fifth of an end below that limit — which is exactly why it was lost.
Peirce's geometry, solved. Crimp and weave angle against thread spacing, for one yarn in a plain weave, solved from Peirce's equations rather than measured. Each solution is put back through the equations it came from before it is drawn.
Fig. 2 Peirce’s geometry solved at the other end of the admissible range, where the weft carries most of the crimp. The construction admits ratios between about 0.57 and 1.75, and outside that band there is no solution at all — which is the sense in which a cloth can be called impossible.

What the solver was doing

Peirce’s geometry has two unknown weave angles and one closure condition: the two crimp heights must add to the cloth’s thickness. That is one equation short, so a crimp ratio is supplied from outside and the solver bisects on h₁, the share of the thickness the warp’s crimp takes, until the ratio comes out right.

The bisection ran on the interval from no warp crimp to all of it, and it handled an unreachable state by concluding it had gone too far and pulling the upper end down.

That is correct at one end of the range and wrong at the other, and the two failures are indistinguishable in the code. Too small an h₁ leaves the weft a height it cannot reach. Too large an h₁ does the same to the warp. A state can be refused for either reason, and treating every refusal as “too far” makes the search walk downwards from any midpoint it cannot evaluate.

For a loosely set cloth that never bites, because the feasible interval contains the midpoint and the first probe lands inside it. For a densely set one it is fatal. When the warp is set very close, the weft has almost no room to bend across it — it can supply at most 0.098 mm of a cloth 0.312 mm thick — so every reachable state has more than two thirds of the thickness in the warp, and the feasible interval is the top third of the range. The midpoint is outside it. The first probe fails, the upper end comes down, and the search spends two hundred halvings converging on a region where nothing exists.

Peirce's geometry, solved. Crimp and weave angle against thread spacing, for one yarn in a plain weave, solved from Peirce's equations rather than measured. Each solution is put back through the equations it came from before it is drawn.
Fig. 3 Peirce’s geometry solved across a range of spacings at an equal division of the crimp. Every point here is inside its own construction’s admissible interval, which is why the plot has never had any trouble — and is exactly what made the failure at a dense sett look like a property of the model rather than of the search.

What the interval actually is

It has a closed form and no search is needed for it.

A thread bending across a spacing p cannot rise higher than it does at the angle where its straight portion has just vanished, and that angle is arcsin(p/D). Call the height there its reach. Then the warp must supply at least the thickness the weft cannot reach, and at most what it can reach itself:

Dreach(p1)    h1    reach(p2)D - \text{reach}(p_1) \;\le\; h_1 \;\le\; \text{reach}(p_2)

For the 44-end poplin that is 0.213 mm to 0.312 mm — a real interval, a third of the range wide, and containing a crimp ratio of one comfortably. The solver now computes it before it searches, and refuses a ratio outside the range the construction admits by naming the range rather than by returning the nearest state it could find.

That last clause is the repair that matters. The old solver did not fail; it returned an answer. It handed back the last state it managed to evaluate, at whatever crimp ratio that happened to be, with nothing in the return value distinguishing it from a solution. A figure asking for a ratio of two on a closely spaced pair was drawn at 1.754 and captioned as two, for a long time, on a page whose whole subject is that the ratio is a free choice.

Peirce's geometry, solved. Crimp and weave angle against thread spacing, for one yarn in a plain weave, solved from Peirce's equations rather than measured. Each solution is put back through the equations it came from before it is drawn.
Fig. 4 The same sweep at a crimp ratio of 1.6. Asking for two rather than 1.6 now produces a refusal naming the interval, because the closest spacing on the plot admits ratios only from 0.57 to 1.75 — and until this rung the solver answered that request with a state at 1.75 and said nothing.

The third time this shape has appeared here

It is the same defect as the relaxation solver’s, found a long time ago and recorded then: it kept the last state it could solve and returned it when the requested value was unreachable, saying nothing; and its bisection treated both ways of failing as the same way. The words fit this one without alteration.

Two solvers, written years apart, for different quantities, failing identically. That is not a coincidence and it is worth naming as a pattern rather than as two bugs. A bisection over a feasible region has three outcomes and most implementations have two. The value is reached; the value is not reached because the search should go one way; the value is not reached because the search should go the other. Collapsing the last two into “not reached” is the natural way to write the loop, it costs nothing on well-conditioned inputs, and it fails silently and plausibly on exactly the inputs that are interesting — the dense cloths, the extreme constructions, the edges of a range where something is actually being learnt.

The general repair is the same in both cases and is not a better search: compute the feasible interval first, from the geometry, in closed form. A search that knows where it is allowed to look cannot be told the wrong direction by a refusal.

The sharper result underneath

Fixing the search turns up something the missing row never suggested.

Sweeping the sett a hundredth of an end at a time, the interval of admissible crimp ratios narrows as the warp is set closer, and at 44.18 ends per centimetre its lower end passes one. Past that sett a poplin of these counts cannot divide its crimp equally at all: there is no arrangement of the two threads, at any weave angle either can take, that puts the same fractional excess in both.

So the site’s standing assumption is not merely wrong for a dense shirting. It is unavailable, and the sett at which it becomes unavailable is a computable property of the construction rather than a rule of thumb.

The direction is the one the geometry forces and it is worth stating as a mechanism. A closely set warp leaves the weft short spans to bend across. Short spans reach low. So the weft cannot supply its share of the thickness however it is arranged, the warp has to make up the difference, and the warp making up the difference is exactly a warp with more crimp. Past some sett the shortfall is more than an equal division can absorb.

Peirce's geometry, solved. Crimp and weave angle against thread spacing, for one yarn in a plain weave, solved from Peirce's equations rather than measured. Each solution is put back through the equations it came from before it is drawn.
Fig. 5 And between the two, where an ordinary cloth sits. The band is narrow and the cloth that was called impossible is just outside it — not because anything in the weaving is hard, but because the geometry has no state to put the threads in at that combination of sett and count.

Which is why the row was lost where it was

The 44-end poplin sits at 44.0 ends against a limit of 44.18 — well inside the sett its own yarn admits, which is why nothing about the construction looked suspicious. Its feasible interval exists, contains a ratio of one, and is a fifth of an end from not containing it.

That is precisely the condition under which a bisection on the whole range fails and a bisection on a slightly looser cloth does not. The 40-end poplin solves under the old solver, because its interval is wide enough to catch a probe. The 44-end one does not. The note in the table was written by somebody who tried a real construction, got a refusal from a solver that had been trustworthy on every previous cloth, and drew the reasonable conclusion.

The reasonable conclusion was wrong, and the way it was wrong is worth more than the row. A tool that has behaved correctly on every input so far is not evidence about a new input, and the inputs where it first misbehaves are the ones at the edge of what has been tried — which are the ones being tried because they are interesting.

What was counted, and how

The equal-crimp limit is enumerated rather than solved: the sett is swept from 43 to 45 ends per centimetre in hundredths, the admissible interval computed in closed form at each, and the first sett at which one falls outside it recorded. That is 200 evaluations for a number that could in principle be got by inverting an inequality, and the inequality would need its own proof; the site’s habit is to ask rather than to derive when asking is cheap.

Five poplins are checked as a sequence — 32, 40, 44, 48 and 52 ends — and the assertion is not that any of them behaves in a stated way. It is that equal crimp is lost exactly once, going from admitted to not admitted and never back. A monotone loss is what a geometric limit looks like. Anything else would mean the interval computation had a hole in it, which is the failure mode this whole rung is about.

The 44-end poplin is separately asserted to solve, which is the direct contradiction of the table’s note and is the thing that would silently regress if the solver were ever rewritten.

The row has not been added to the table, and that is a deliberate deferral rather than an oversight. A ninth cloth would move every table, bracket and quoted range on this site — some forty essays carry numbers taken over the eight — and the dense shirtings are worth a treatment of their own rather than a row. The table’s note now says what is true and why the row is still 32 ends.

The check that would have caught it

Worth naming, because it is cheap and this site did not have it.

Where the twenty-eight comes from. The setting a cotton cover factor of 28 prescribes, and the setting at which the threads would cover the surface geometrically, against yarn count. They are one curve: the trade's scale is Peirce's diameter with the units taken out. Below them is the sett at which each weave actually jams, which is a fixed fraction of it.
Fig. 6 The cover the cloth would have had, which is the check that would have caught it. A construction whose cover passes one each way is a construction with no solution, and the table’s row could have been refused by an arithmetic anybody had — which is why it survived so long unremarked.

A solver that refuses should be asked, once, whether the thing it refused is genuinely unavailable or merely unreachable — and the way to ask is to compute the feasible set rather than to try the search again. For Peirce’s geometry that is four lines of closed form and it is now what the solver does before it searches.

The general version is a habit rather than a gate: when a model refuses an input that ought to be ordinary, suspect the search before the model. A refusal that arrives on a normal-looking fabric is far more likely to be a numerical boundary than a physical one, and the difference is decidable.

The heights have their own limit, and it is a closed form

The 44.18 is a limit on the crimp ratio, found by sweeping. There is a second and simpler question the same interval answers — when can the two crimp heights be equal? — and that one has an answer in closed form with no search anywhere in it.

The reach of a thread bending across a span p is its height at the angle where its straight portion has just vanished. Substituting that angle into Peirce’s two equations, everything cancels but a square root:

reach(p) = D(1 − √(1 − (p/D)²)).

Equal heights means each system supplies D/2, so each must reach at least that far. Setting reach(p) ≥ D/2 gives √(1 − (p/D)²) ≤ ½, which is

p ≥ (√3 ÷ 2) · D ≈ 0.866 D,

in both directions. For a square cloth of equal diameters, D is twice one diameter and the condition becomes a cover of 1/√3 = 0.5774 or less.

Checked against the poplin the essay is about: its two diameters sum to 0.3116 mm, so the end spacing must be at least 0.2699 mm and the sett at most 37.1 ends per centimetre. The 44-end poplin is well past that — at 44 ends the weft can reach only 0.098 mm of a cloth 0.3116 thick, which is the 31.5 per cent the solver’s own diagnosis reports.

Two things are worth taking from putting the two limits side by side.

Equal heights and an equal crimp ratio are not the same condition, and they are far apart. The poplin loses equal heights at 37.1 ends and equal crimp at 44.18 — a gap of nearly a fifth. So a cloth can divide its crimp equally while dividing the thickness very unequally, which is what the 44-end poplin does: at a ratio of one its warp carries more than two thirds of the height. The crimp ratio is a poor proxy for how the thickness divides, and this collection has quietly used one to reason about the other.

And the closed form is the check the swept limit deserves. A number found by sweeping a hundredth of an end at a time is a number nobody can verify by hand; the height limit is one line of algebra, it lands where the solver’s own reach diagnosis lands, and it confirms that the interval computation is doing what it says. That is the same relation between the two that the essay recommends throughout — compute the feasible set where a closed form exists, and search only where one does not.

The height limit also has the cleaner statement for a reader. A plain weave more than about three fifths covered cannot share its thickness equally between its two systems, whatever its counts, because the reach of a bending thread is a function of one ratio and nothing else.

Where the model stops

The interval is a circular-section interval. A flattened thread is thinner, so the cloth is thinner, so there is less thickness to divide and both systems can reach more of it — which widens the interval and pushes the equal-crimp limit to a denser sett. The 44.18 is therefore a limit for a relaxed cloth of round threads, and a pressed cloth is a different cloth. How much denser has not been computed and is recorded as not done.

It is a plain-weave interval. A twill’s thread passes over more than one crossing before it turns, so it reaches further for the same spacing and the whole calculation moves. Real dense shirtings are frequently twills, and this argument does not reach them.

And the crimp ratio it is about is still an input. The rung below supplied an energy argument that predicts it; this rung is about which values are available rather than which is preferred, and the two questions are separate. A construction can admit a ratio that the energy would never choose, and can fail to admit the one the energy prefers — in which case the cloth sits at the nearest end of its interval, which is a boundary state and is a different physical situation from an interior minimum.

The generalisation

A model that refuses an input is making a claim, and the claim is usually about the solver.

That is the whole lesson and it generalises past textiles without alteration. A refusal is the one output nobody checks, because a refusal looks like the model being careful. It is trusted in exactly the circumstances where trust is least warranted — an unusual input, a boundary case, a first attempt at something outside the range the code was written against — and the report it produces reads as a fact about the world.

The specific form is worth carrying too: when a search fails, ask whether the feasible set is empty or merely awkwardly placed, and answer that question by computing the set rather than by trying harder. In this case the set was a third of the range wide and sat entirely above the midpoint. No amount of restarting, tightening or increasing the iteration count would have found it.

Who found it, and when

Peirce’s geometry is 1937 and the one-equation-short character of it is stated in the original: the crimp ratio has to come from somewhere else, and the somewhere else Peirce names is measurement.

The observation that the very densest shirtings strain a circular model is standard and correct — a 44-end poplin in 15 tex is a genuinely tight construction and the section is genuinely close to jamming. What is not standard is that it strains the model less than it strains a search over it.

The finding here is this site’s and it is the kind that only appears in a collection with a rule about enumerating rather than quoting. The note in the table was believed for a long time because nothing ever asked the solver a question it could answer only by looking in the right third of its own range.

Where the ladder goes next

Sideways, the same solver repair is what let the two section models be compared as one model, because the flattened geometry has to be solved at aspect ratios where the feasible interval is narrow.

Along this ladder, the ratio the energy prefers and the interval the geometry admits need putting together properly for the dense case — a construction whose preferred ratio is outside its admissible interval sits at a boundary, and boundary states have not been studied here at all.

What links here

Computed from the collection rather than written here: the essays that point at this one.

Shares its objects with

Essays naming at least two of the same things, that neither author linked.

Named objects

A flat tag is an object no other essay names yet.

CensusCover factorCrimp heightCrimp ratioJammingPeirce modelSettSpecificationWeave angleYarn diameter