The pattern itself

The pair read from the angles

Checking that a jostled stem is still the lattice its panel is about turned up a disagreement. Counted from the point positions every rule's stems return five and eight spirals; read from the divergence sequence, the deepest rule's stems come back as five and seven at every seed. The points are right, and this site's founding rule is why.

Worth reading first: Counting the spirals · A head is a set of points.

This site was built on one rule. A spiral count is evidence only when it comes out of the point positions, by machinery that has never been shown the divergence angle; a count derived from the angle is a restatement of what the pattern was built from and proves nothing.

That rule has been applied to published claims about sunflowers and pine cones and to models from the literature. It has not, until now, been applied to a reading taken inside this collection’s own libraries — and applied there, it catches one.

Two readings of what a stem is, and one of them is wrong. The same runs read twice. On the left is the pair counted from the point positions by machinery that is never shown a divergence angle; on the right is the pair read from the divergence sequence, which is the column the depth thread has been quoting. Every exponent's stems are counted at 5/8 spirals from the points. Read from the angles, the deepest rule's stems come back as something else at every seed, and a pair with a 8 replaced in it is not a near miss but a family whose step is several times as long. The settled divergence moves by 0.118 degrees across all five exponents, so the rules are on one lattice and the disagreement is a defect in one of the two instruments.
Fig. 1 The same runs read two ways: from the positions, and from the sequence of divergences.

Where the disagreement turned up

Not by looking for it. The depth thread’s panels compare two rules at a fixed rise, and a check on whether a larger jostle destroys the lattice needed every stem counted rather than assumed. Counting them turned up a column that did not match.

The check counts from the points: take the last two hundred organs of a run, hand their positions to a counter that receives no angle, and read the pair. Every stem, at every exponent from 1.5 to 6, at every seed and every jostle up to a degree, comes back 5/8 — the pair the rise carries.

The two spiral families a counter finds between 0.43 and 0.67 of the radius. 21 spirals one way and 34 the other, found from the point positions alone — the counter is never told the divergence angle.
Fig. 2 The counter that produces those numbers, which sees positions and returns a pair.

The thread’s own pair column does not match. That column is read from the divergence sequence — the run’s angles, one per organ — and for the deepest rule it comes back 5/7, at every seed and every jostle.

The angles against the positions, rise by rise. three rises, five seeded stems each. A filled mark is a run whose angle readout returned the pair the position counter finds in the same stem; an open mark is a refusal. At 0.032 the counter says 3/5 and the angles agree on 0 of 5, refusing 5. At 0.013 the counter says 5/8 and the angles agree on 5 of 5. At 0.005 the counter says 8/13 and the angles agree on 5 of 5. The two instruments share no code path: one is given a list of angles, the other a list of coordinates.
Fig. 3 The other reading, which takes a sequence of angles and returns a pair from it.

What the two readers actually do

Worth setting out, because “counted from the points” and “read from the angles” are phrases doing a lot of work.

The point counter takes a set of positions on a cylinder, builds the neighbour relations between them, and finds the runs of organs that lie along a common direction. The number of such runs in each of the two dominant directions is the pair. Nothing in it references a divergence, a rise or a lattice model; it would return a pair for a set of points scattered by hand, and on a disordered set it returns nothing rather than something.

The spiral counts, band by band, in one head. The same flower gives 13/21, 21/34, 34/55, 55/89 at different radii. A caption saying "34 and 55 spirals" is a statement about one annulus.
Fig. 4 The counter working on a head, where its answer changes with radius because the arrangement does.

The angle reader takes the sequence of divergences and asks which whole numbers, used as steps through the sequence, produce the tightest clustering of angles. On a lattice the answer is the two contact numbers, because stepping p organs at a time lands on nearly the same azimuth every time — that is what a parastichy is, expressed in the sequence rather than in the picture.

Two combs, at a rise of 0.013. The autocorrelation of 760 divergence angles from one stem held at a rise of 0.013. The filled teeth are the lags at multiples of 5; the open teeth are the second comb, at the same spacing offset by 3. Reading the spacing off the first and the offset off the second gives the pair 5 and 8, which is what the position counter reports for the same stem — from angles alone, with no coordinate anywhere in the calculation.
Fig. 5 The clustering the reader looks for, at two candidate steps, one of which is a family and one of which is not.

The second is a real measurement of a real property and it is much cheaper than the first. Its weakness is that “tightest clustering under a step of k” is a property of any structure with a period, and a lattice is only one such structure.

Which is wrong, and how to tell

The reading from the angles, and there are three independent ways to see it.

The geometry. At this rise and this divergence the seven-step is about three times the length of the eight-step. A pair of five and seven is not a near miss between two nearly equal candidates; the seven-family is nowhere near the bottom of the length ranking, so no lattice here has it as a contact family.

Which offsets give short hops, at a rise of 0.013. The two lowest points are at 5 and 8, and those are the parastichy numbers. Offset 1 is high because a hop of one node is at least the rise, which is what makes a stem easier to count than a disc.
Fig. 6 The step lengths at this rise, where seven sits nowhere near the pair.

The divergence. Across all five exponents the settled divergence moves by 0.118°. If the deep rule were on a different lattice its divergence would be somewhere else, and a tenth of a degree is not somewhere else.

The spiral counts four different divergence angles produce. Fibonacci counts come from one angle. The Lucas angle — which the same dynamical model reaches on a different branch — gives 47 and 76, and neither number is a Fibonacci number.
Fig. 7 How far a divergence has to move to change a counted pair, which is very much more than a tenth of a degree.

The positions. The counter is shown the arrangement and returns 5/8. That is the measurement this site’s whole premise says to prefer, and it is unanimous across every run.

So five rules, one lattice, and one instrument returning a different answer for one of them.

Two readings of what a stem is, and one of them is wrong. The same runs read twice. On the left is the pair counted from the point positions by machinery that is never shown a divergence angle; on the right is the pair read from the divergence sequence, which is the column the depth thread has been quoting. Every exponent's stems are counted at 5/8 spirals from the points. Read from the angles, the deepest rule's stems come back as something else at every seed, and a pair with a 8 replaced in it is not a near miss but a family whose step is several times as long. The settled divergence moves by 0.118 degrees across all five exponents, so the rules are on one lattice and the disagreement is a defect in one of the two instruments.
Fig. 8 The two columns beside each other, with the row where they disagree marked.

Why the angle reader fails there and nowhere else

The reader works by looking for a comb in the sequence of divergences — a periodicity, in effect — and turning it into a pair. On a stem whose angles are independent from organ to organ, the comb it finds is the lattice’s.

The deepest rule’s stems are not that. A rule with a slow falloff reads a very large neighbourhood, so its response to a disturbance is spread over many organs and its divergence sequence carries correlations running out to a hundred organs. That correlation is a structure in the sequence, and it is not the lattice’s structure.

The memory of a divergence sequence, at 0.75° of scatter. With no noise at all the lag-one correlation is 0.54: the rule corrects itself, so a lattice arrives with a memory in it. Matched at the same recorded scatter, placement noise leaves -0.04, jostle noise leaves 0.65, field noise leaves 0.50. The band is ±0.13, which is what an uncorrelated sequence of this length gives.
Fig. 9 A divergence sequence with memory in it, which is what the deep rule produces and what the angle reader is looking at.
What the sequence sees that the scatter cannot. Each point is an ensemble at one amplitude, placed at the scatter it produces. A stem at three quarters of a degree of scatter has a lag-one correlation near zero if its noise arrived after the primordium was placed, and near 0.7 if it arrived before — and no measurement of the scatter can tell those apart. The separation closes above about a degree, because what the other two kinds preserve is the correlation of a lattice.
Fig. 10 The correlation itself, measured, which is the quantity that grows as the rule’s falloff slows.

So the reader is resolving a periodicity that belongs to the rule’s memory rather than to the arrangement of organs, and reporting it as a family. Its failure is specific: the four shallower rules produce sequences with little memory, and the reader gets those right.

Through the rule, the drift survives and the inheritance still does not. How much of a divergence sequence's variance survives being averaged over blocks, on stems the rule grew. The vertical quantity is B² times the variance of the block means divided by the variance of the sequence, which is one at every block size for independent errors — the arithmetic is normalised for a differenced stream, since a divergence is the difference of two organs' errors. A line that climbs is a sequence with power at frequencies below one per block. The disturbances that remember the last error climb to 46 at a block of 64. The ones inherited between touching organs do not climb at all — 1.51 and 1.90 at the same block — although their own deviates carry ×— and ×— an independent stream's variance in exactly this statistic. What they do instead is dig a hole: at block sizes of 8 and 13, which are the offsets they couple at, the statistic falls to 0.06 and 0.12.
Fig. 11 The same memory seen as a wander, which is how the depth thread usually measures it.

Why it matters more than a wrong column

Because the site’s premise says exactly this and the machinery quietly did not.

The premise was stated against other people’s claims: a caption saying a sunflower has thirty-four spirals, based on a model built from the golden angle, is a restatement rather than a count. Nobody expected the same failure inside a library here, because the libraries were written by somebody who knew the rule.

The two spiral families a counter finds between 0.68 and 0.92 of the radius34 spirals one way and 55 the other, found from the point positions alone — the counter is never told the divergence angle.34 and 55 spiralscounted, not assumed
Fig. 12 The counting this collection does everywhere else, which is the reason the premise has held.

What made it possible is that the angle reader was never used as a count. It was a convenience column — a quick label on a run, printed in a table so a reader could see at a glance what kind of stem each row was. Convenience columns do not get checked against the instrument they are shortcuts for, and this one has been wrong on one row of every depth table for four rounds.

Agreement between two windows happens only on a slow enough shoot. Five stems at each of four rates and five disturbances, each read through two overlapping windows of 250 internodes. A filled mark is agreement — both windows reported the same pair; a half mark is a disagreement; a small mark is one window reporting and one refusing; an open mark is silence. Agreement appears 0 times in 25, 1 times in 25, 14 times in 25, 14 times in 25 at 130, 250, 400, 700 nodes per rung, and the two rates it is almost absent from are the two at which a rung is no longer than the window.
Fig. 13 The kind of table the column appears in, where it labels rows rather than carrying a claim.

Nothing in the thread’s conclusions rests on it, which is worth saying plainly. The drift-through quantity, the neighbourhood depths, the crossings — none reads the pair. The column was decoration. But a decoration that contradicts the site’s own premise is worth a page, because the next person to reach for it might not be reaching for decoration.

The two readings are not interchangeable in general

That is the useful generalisation, and it is worth separating from the specific bug.

Reading a pair from the angles is legitimate when the angles are what is available — which is the situation with a published sequence of divergences and no photograph, and it is the situation this collection is in with several literature claims. The reader is not wrong as a method.

A round trip on four heads of 900 primordia: the divergence angle recovered from each. The counter is shown the points and nothing else. The worst recovery across the four is 0.012°.
Fig. 14 The reverse direction, where a divergence is recovered from positions, which is a different problem with a different answer.

What it is is sensitive to structure in the sequence that is not the lattice. Memory in the divergences is one such structure. So is a periodicity in the growth rate, which this collection has already shown can forge a comb that a reader will report as a pair.

Which arrangements carry a comb, and what each one reports. The largest comb mean in five arrangements at a rise of 0.005, all read by the same instrument at the same length, with the sampling band of 0.073 marked. Only the first is a placement rule; the other four are kinematic lattices with no rule in them, differing from one another only in how their azimuth errors are structured. Independent errors and errors with a memory leave nothing to read. A repeating error puts up a comb and names a partner that is not the lattice's. Errors inherited from the contact neighbours reproduce both the comb and the pair.
Fig. 15 The earlier case: a disturbance with its own periodicity, producing a comb the reader takes for a lattice.
A lattice with an error inherited from the two contact neighbours. The autocorrelation of 759 divergence angles from a kinematic lattice at a divergence of 137.8261° and a rise of 0.005, with 0.5° of scatter on each azimuth. There is no placement rule anywhere in it: node i is put at exactly i times the divergence and then displaced. The only thing that differs between this figure and the control is the structure of the displacement — here, an error inherited from the two contact neighbours at coupling 0.7. The largest comb mean is 0.514 against a sampling band of 0.073, and the readout returns 8/13.
Fig. 16 And what such a forgery looks like beside a real one, which is the reason that essay exists.

The two cases are the same failure from opposite directions. There, a disturbance with a period forged a comb the arrangement did not have. Here, a rule with a memory forged a comb the arrangement did not have. Both were caught by counting from the points, and the earlier one was caught deliberately while this one was caught by a check run for another purpose entirely.

What it would have taken to catch it earlier

Nothing clever, and that is the annoying part.

The two readers have both been in this collection since its second phase, and they have never been run on the same stems. The point counter is used where a count is a result — the sunflower work, the cylinder round trip, the ablation census — and the angle reader is used where a pair is a label, in tables whose subject is something else. There was no place in the code where both were called on one run, so there was nothing to disagree.

Six stems built, forgotten and recovered. Each row is a lattice built from a divergence and a rise, counted by machinery shown only the coordinates, and reconstructed from the counts and the two hop lengths. The worst error in the recovered angle is 3.0e-13°.
Fig. 17 One of the places a count is a result, where the point counter has always been the instrument.

Running them together on one stem costs a second. Running them together on every stem of a table costs a minute. Neither was done because neither was anybody’s question — the label was a label, and a label that looked plausible drew no attention to itself.

The general fix is the one this collection keeps arriving at from different directions: where two instruments measure the same quantity, run both and print both. Two implementations of one measurement is exactly how a disagreement becomes visible, and exactly how a stale column stays hidden when only one of them runs.

What the positions say, and what the angles say. Each row is one stem at one rise. The left column is the parastichy pair counted from the coordinates; the right is the single number read out of the divergence angles alone, over 5 runs. On the Lucas ladder — 3/4, 4/7, 7/11 — the readout returns the smaller number too, so it is reading the lattice rather than Fibonacci. The last row is the one that matters: at a rise of 0.05 the positions give an unarguable 2/3 and the angles give 4, 23, 12, 2, 9 — all five wrong, and all five refused.
Fig. 18 Two routes to one quantity, drawn as a comparison, which is the form the fix takes.

What was fixed

The check now runs where the panels are built: every cell of every lifted panel counts its stems from the positions and asserts they carry the rise’s own pair. That is a gate on the argument rather than a note in a docstring, and it would fail the build if a future amplitude destroyed the lattice.

The same comparison at three sizes of disturbance. Each row is one panel: how many of six seeds the deeper rule beats the shallower one on, at six correlation lengths, on the lattice at a rise of 0.013. At the size of jostle the thread used, cells across the middle sit at six of six — the largest number the panel can print — so no feature could have appeared there whatever the lattice did, and the reading that this rise has no corner was a reading of that ceiling. Raised, the cells come down, and at the largest disturbance the panel shows a clean crossing: the deeper rule loses at white noise and takes every seed once the disturbance remembers itself for a few organs. The corner is there, and the flat middle was the instrument.
Fig. 19 The panels the check runs on, whose every stem is now counted rather than assumed.

The angle-read column is kept and reported beside the counted one rather than removed. Removing it would hide the disagreement, and the disagreement is the interesting part: a stem whose divergence sequence reads as 5/7 while its positions read as 5/8 is a stem with a measurable memory, and the disagreement is a diagnostic for exactly the property the depth thread is about.

Two readings of what a stem is, and one of them is wrong. The same runs read twice. On the left is the pair counted from the point positions by machinery that is never shown a divergence angle; on the right is the pair read from the divergence sequence, which is the column the depth thread has been quoting. Every exponent's stems are counted at 5/8 spirals from the points. Read from the angles, the deepest rule's stems come back as something else at every seed, and a pair with a 8 replaced in it is not a near miss but a family whose step is several times as long. The settled divergence moves by 0.118 degrees across all five exponents, so the rules are on one lattice and the disagreement is a defect in one of the two instruments.
Fig. 20 Both columns, kept side by side, where the disagreement is now a reading rather than a bug.

The rule restated, since it has now bitten twice

The premise is usually stated as advice about other people’s claims. It is worth restating as a rule about instruments, because that is the form in which it catches things.

A count is evidence when the instrument producing it could have returned a different answer for the same subject built a different way. A counter shown positions could return anything; a reader shown a divergence sequence generated from a divergence will return that divergence’s pair, whatever the arrangement is. The premise is not really about angles versus positions — it is about whether the instrument has any independence from the thing being claimed.

The disorder of a head against its divergence angle, 300 points. μ₂ is the mean squared departure of a Voronoi cell's side count from six, measured on 300 points inside 86% of the radius. Swept across 1.60° it is a staircase: flat over stretches of a few hundredths of a degree, with sharp steps between them and narrow deep dips wherever a rational falls. At 137.144° — which is 360 × 8/21 — it is 0.078; At 137.648° — which is 360 × 13/34 — it is 0.197; At 138.460° — which is 360 × 5/13 — it is 0.060. The ticks along the top are the fractions p/q, placed from arithmetic rather than from the curve.
Fig. 21 A quantity computed from an angle rather than from an arrangement, which is the shape of reading the premise is about.

Put that way it applies here without any special pleading. The angle reader is independent of the lattice — nobody handed it a divergence — but it is not independent of the rule’s memory, and the memory is what the depth thread is about. An instrument that is contaminated by the very quantity a thread is studying is the worst case, and it is the case that occurred.

The disturbance with the largest wander leaves none in the sequence. How much of a divergence sequence's variance survives being averaged over blocks, on kinematic lattices. The vertical quantity is B² times the variance of the block means divided by the variance of the sequence, which is one at every block size for independent errors — the arithmetic is normalised for a differenced stream, since a divergence is the difference of two organs' errors. A line that climbs is a sequence with power at frequencies below one per block. The disturbances that remember the last error climb to 32 at a block of 128. The ones inherited between touching organs do not climb at all — 1.06 and 0.83 at the same block — although their own deviates carry ×5 and ×49 an independent stream's variance in exactly this statistic. What they do instead is dig a hole: at block sizes of 8 and 13, which are the offsets they couple at, the statistic falls to 0.22 and 0.21.
Fig. 22 The memory the instrument is contaminated by, drawn as the thread measures it.

The version of this that would be a real problem

Everything above is a decoration column and a lesson. It is worth asking what the same failure would look like if it were load-bearing, because that is the version worth guarding against.

It would look like a claim of the form this arrangement is counted at p and q, where the count came from a sequence rather than from a picture, and where the sequence had structure in it from the process that generated it. On this site the nearest thing to that is the jugacy work, which asks whether a stem’s counts share a factor and therefore whether the pattern arrives several organs at a time.

The block is one of the two numbers, and not always the smaller. Every lattice a single organ was removed from, one row each: golden, rise 0.020 carrying 3/5; golden, rise 0.013 carrying 5/8; golden, rise 0.008 carrying 5/8; golden, rise 0.005 carrying 8/13; Lucas, rise 0.020 carrying 4/7; Lucas, rise 0.013 carrying 4/7. The two open ticks on each line are that lattice's own parastichy numbers; the filled dots are the blocks the stems that never recovered settled into, one per offset that failed. The claim this table was built to test is that the block is the smaller of the two, which held at the two rises it was first measured at. It does not hold here: 3/5 gives 5, 5/8 gives 5 and 8, 4/7 gives 4 and 7. What survives is weaker and still worth something — every filled dot but 1 sits on one of that row's own ticks, so the orbit carries a count of the lattice it was cut from, and which of the two it carries is decided by the offset rather than by the pattern.
Fig. 23 The jugacy tables, whose reading is about a counted pair and would be badly hurt by a misread one.

That work counts from the positions and measures rotational symmetry on the positions too, which is why a false result there was caught: a counter shown a wrecked stem and a genuinely two-at-a-time stem side by side returned the same pair for both, and the symmetry measurement separated them. Had the counting been done from the angles, a stem with a periodic memory would have read as jugate and there would have been nothing to catch it with.

Same counts, different patterns. Both are counted 2 and 4 by machinery shown only their positions. Rotating the left one by half a turn maps it onto itself and rotating the right one does not, so the left is bijugate and the right is not — and no count could have said so.
Fig. 24 The measurement that did the separating there, which is on positions rather than on a sequence.

So the answer to “does this matter” is: not here, and it would have mattered a great deal one thread over. The premise earns its keep by being applied everywhere rather than where it seems necessary, which is the argument for applying it to convenience columns too.

What is left

Whether the disagreement is quantitative. It appears at exponent 1.5 and not at 2, and the neighbourhood depths at those two exponents are 182 organs and 120 — not a large gap. So somewhere between them the angle reader stops being fooled, and where that is might be a usable measure of how much memory a sequence has to carry before its comb is unreadable.

Four ways to count the rule's neighbourhood, and one ordering. How many organs the placement rule is looking at, as its falloff exponent is swept from 1.5 to 6, by three different definitions. Counting the organs that carry half the profile gives 33, 12, 3, 2, 1. Counting the organs that carry nine tenths gives 182, 120, 30, 8, 3. Counting the organs that carry the weighted mean lag gives 68, 45, 21, 14, 11. They disagree about the size of the neighbourhood by a factor of 10 — the widest moves by 61 times across the sweep and the narrowest by 6.1 — and every one of them falls as the exponent rises. So no choice among them changes which rule is the deeper, and no redefinition can turn a result about the depth around.
Fig. 25 The neighbourhood depths the disagreement sits between, whose two largest are not far apart.

There is also a cheap experiment in it. If the reader is fooled by memory in the sequence, then feeding it a sequence with a stated memory and no lattice at all should make it report a pair — which is the forgery experiment this collection has already built, run against a different question. Pointing it at this one is a matter of reading a different column out of runs that exist.

Transported errors report the same pair every time. eight kinematic lattices, differing only in the seed of their disturbance, each read by the same instrument. The disturbance at each node is inherited from the nodes 8 and 13 places back, at a coupling of 0.7. Every stem returns 8/13, which is the pair the positions give and the pair the placement rule's own stems give. There is no placement rule in any of these arrangements.
Fig. 26 The forgery machinery, which generates sequences with stated structure and asks what a reader makes of them.

And whether any published claim in this subject has the same defect. A divergence sequence read for its pair is a common enough thing in the literature, and a plant with a slow-responding meristem would produce exactly the correlated sequence that fools this reader. Nothing here can settle that, because it would need sequences of real divergences at a length nobody has published — which is the survey this site cannot do, in one more form.

Every open question here needs under 28 specimens. The sample size at which each comparison reaches 80 per cent power at a 5 per cent false-positive rate, from the exact binomial rather than a normal approximation. The census question — do plants show consecutive Fibonacci pairs far more often than the geometry does — needs 4: 14.7% is the share of divergence angles giving a consecutive Fibonacci pair at a fine rise; 90% is what a grown history gives.
Fig. 27 The survey that would settle it, whose size this collection has priced and cannot run.
Both vary; only one of them varies enough to find. Each organ's step exponents, divided by its own mean so the two are comparable. The ogive's run over 15 per cent of their mean across 5 rings. The convex head's run over 1.15 per cent across 5 — inside the band a 3 per cent error on each ring position leaves, so no ruler separates it from a flat disc.
Fig. 28 And the general question this belongs to: which quantities an instrument can distinguish, asked of the instrument rather than of the subject.

What links here

Computed from the collection, not written here: the essays that point at this one.

Shares its objects with

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

  • A period the grid invented — both name artefact, claim testing, divergence angle, honest limits, measurement, parastichy pair, resolution, summary statistic
  • The slide a counter holds constant — both name counting blind, claim testing, divergence angle, honest limits, lattice, measurement, parastichy pair, summary statistic
  • What a count cannot decide — both name counting blind, claim testing, divergence angle, honest limits, lattice, measurement, parastichy pair, summary statistic
  • A band that holds the angle still — both name artefact, counting blind, divergence angle, lattice, measurement, parastichy pair, resolution
  • A dip belongs to the head — both name artefact, divergence angle, honest limits, lattice, measurement, resolution, summary statistic
  • A disturbance with a memory — both name artefact, autocorrelation, divergence angle, honest limits, lattice, measurement, parastichy pair

Named objects

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

ArtefactAutocorrelationCounting blindClaim testingContinued fractionCounting radiusDivergence angleExponentHonest limitsLatticeMeasurementParastichy pairResolutionSummary statistic