Neither sparse nor dense

A prediction that arrives a decade late

A rougher kernel raises every rank, a higher rank raises the side at which compressing a block stops paying, so the leaf that stores least should rise. Across four kernels whose largest rank runs 5, 5, 9 and 10, it is 16 on three of them and a tie between 8 and 16 on the fourth. The prediction is right in sign and out by a decade of tolerance, and the reason is a ceiling: an oscillation multiplies the rank by exactly two — 3 and 6, 4 and 8, 5 and 10, 6 and 12, 7 and 14 — at any frequency, because a cosine of a difference is a rank-two function.

Worth reading first: The offset that moved the slope · Which pairs are allowed to be small.

Two knobs on one number ended with a prediction that had a sign attached to it, which is the most testable shape a loose end can have. Its mechanism was an inequality: a block of side s costs s2s^2 stored densely and 2rs stored as two thin factors, so compressing pays only while the rank is under half the side. Raise the rank and the smallest blocks stop being worth compressing, a tree whose leaf is small is the tree that produces those blocks, and the leaf storing least should therefore rise.

Everything in that argument is correct. The inequality is exact, the direction of its dependence on the rank is not in doubt, and the sweep over the tolerance had already shown the optimum rising from 4 at two digits to 16 at twelve — moving the way the inequality says, for the reason the inequality gives.

So the test is whether the same mechanism works when the rank is raised by the other available means. The tolerance is one way to a higher rank. The kernel is the other: a function whose singular values fall more slowly needs more columns to reach the same accuracy, and the four measured here run from a smooth inverse distance to an oscillation at a wavelength of a twentieth of the domain.

Their largest ranks at eight digits are 5, 5, 9 and 10. Their optimal leaves are 16, a tie between 8 and 16, 16 and 16.

The rank doubles. The optimum does not move. And the third setting of the representation — the separation constant, which moves the block count and the rank together — is held fixed throughout, so none of what follows is the interaction that one already breaks.

The leaf sweep on four kernels of increasing roughness, at 10⁻⁸Numbers stored per unknown against the leaf size at n = 512 and eight digits, for four kernels. The largest rank anywhere in the partition is 5 on 1/r, 5 on log r, 9 on cos(40r)/r, 10 on cos(120r)/r — it doubles across the four — and the leaf that stores least is 16 on 1/r, 8 and 16 on log r, 16 on cos(40r)/r, 16 on cos(120r)/r. It does not move. The prediction was that it would rise, because a compressed block of side s is worth having only while its rank is under half of s, and a higher rank should therefore push the smallest blocks out of the useful range first.n = 512, ε = 10⁻⁸1/r, least at leaf16log r, least at leaf8cos(40r)/r, least at leaf16cos(120r)/r, least at leaf1604794141188235leaf sizestored per unknown481632641/rlog rcos(40r)/rcos(120r)/rthe rank doubles and the optimum does not movewhich the next figure explains
Fig. 1 Numbers stored per unknown against the leaf, on four kernels of increasing roughness. The curves separate vertically by as much as 45 per cent and their minima sit above one another.

Two kernels apart in rank and together in leaf

The four are worth naming rather than ranking, because the differences between them are of two kinds and only one is the roughness the prediction is about.

The inverse distance and the logarithm are both smooth away from the diagonal and both admit a separable expansion, which is what makes a hierarchical representation work at all. Their ranks agree exactly — 5 at eight digits for both — and their storage differs by about nine per cent, because the logarithm’s blocks reach that rank slightly sooner. That the two agree to the integer is the geometric argument working: what a block costs is set by how far its clusters are apart relative to their own size, and which pairs are allowed to be small is the test that holds that ratio fixed for both of them.

The two oscillations are the counterweight. Multiplying the kernel by a cosine of a fixed frequency does not make it non-smooth, but it puts structure at a length scale the expansion has to resolve, and the rank rises with the frequency: 9 at a wavelength of a twentieth of the domain, 10 at a sixtieth. The kernel with nothing to compress is what the end of that road looks like, where a matrix of independent draws has full-rank blocks at every accuracy and the whole structure buys nothing.

Across those four the stored totals at the best leaf are 67,968, 64,256, 87,488 and 100,608 — a spread of 57 per cent, which is the roughness costing what it should. And the leaf at which each of them is least is the same leaf.

The leaf size, the other knob on the same slope, at 10⁻⁸Against the leaf size of the cluster tree: the numbers stored per unknown at n = 512, and the share of that storage sitting in the dense diagonal blocks, drawn on the same axis as a fraction of its height. The four leaves store 156, 137, 133, 152, 211 numbers per unknown, with the least at leaf 16; the dense share rises from 3 to 83 per cent and the block count falls from 1102 to 46. The largest rank is 5 at every leaf, so the tolerance's knob and this one do not touch.n = 512, ε = 10⁻⁸least storage, at leaf16numbers per unknown there133at the largest leaf211050100150200leaf sizestored per unknown48163264stored per unknownshare in the dense blockslarge dot: the least storage availableand the dashed curve is why there is one
Fig. 2 The sweep the prediction came from, on the smooth kernel alone, with the dense share that explains its minimum. The question is what happens to this curve’s least when the ranks in it double.

The invariance that survives, and the one that does not

The reason the prediction fails is a quantity it does not mention, and finding it means separating two things the earlier sweep had no reason to separate.

That sweep established, at eight digits on the smooth kernel, that the rank does not move with the leaf: largest rank 5 at leaves of 4, 8, 16, 32 and 64. It is the fact the whole two-knob decomposition rests on — and what the partition that does not move established from the other side, finding the tolerance raising every rank and moving no block. The reason for it is geometric — the admissibility test holds the separation ratio of every admitted pair below one constant, so a bigger block is admitted only when its clusters are proportionally further apart, and its singular values decay at the same rate. The size the rank does not notice measures that directly on a single block.

The largest rank is invariant to the leaf on all four kernels. It is 5, 5, 5, 5, 5 on the smooth one and 10, 10, 10, 10, 10 on the roughest. The geometric argument holds exactly as stated, and roughness does not touch it.

The mean rank is a different matter, and the mean rank is what the storage depends on — a partition’s cost is a sum over its blocks, not a maximum over them, which is the same distinction a block nobody can call sparse draws between a block’s ninety-six nonzero singular values and the five of them that matter.

On the smooth kernel the mean runs 4.23, 4.67, 4.67, 4.67, 4.67 across the five leaves: flat after the first step, a spread of 1.10 from end to end. On the roughest it runs 4.87, 6.47, 7.44, 8.48, 9.33 — climbing the whole way, a spread of 1.92.

The mean rank against the leaf size, on four kernels of increasing roughness, at 10⁻⁸The mean rank of the compressed blocks against the leaf size at 10⁻⁸, for the same four kernels. This is the quantity the storage actually depends on, and the one the prediction left out. On the smoothest kernel it is flat — 4.23, 4.67, 4.67, 4.67, 4.67, a spread of 1.10 across the whole range of leaves — and on the roughest it climbs the whole way, 4.87, 6.47, 7.44, 8.48, 9.33, a spread of 1.92. So a larger leaf stops buying the same blocks more cheaply exactly when the kernel roughens, which is the third effect that cancels the two the prediction counted.n = 512, ε = 10⁻⁸1/r, least at leaf16log r, least at leaf8cos(40r)/r, least at leaf16cos(120r)/r, least at leaf160246810leaf sizemean rank481632641/rlog rcos(40r)/rcos(120r)/rflat on the smooth kernel onlyand that is what protects the optimum
Fig. 3 The mean rank against the leaf, on the same four kernels. The smooth one is nearly flat and the rough ones climb, which is the quantity the prediction left out.

So a larger leaf on a rough kernel does not buy the same blocks in a cheaper arrangement. It buys dearer blocks: the same geometry, admitted at the same separation ratios, but with singular values that have not finished decaying by the time the block is large. The prediction counted two effects pushing the optimum up — fewer blocks, and small blocks falling below break-even — and there is a third pushing it down, which is that the blocks a larger leaf makes cost more per unit of side than the ones it replaces.

On a smooth kernel the third effect is nearly absent, which is why the tolerance sweep saw the first two cleanly. On a rough one it is present and roughly cancels them.

Where the prediction is finally right

A mechanism that is correct and a result that does not appear usually means the effect is there and smaller than something else, so the useful question is what it would take to uncover it.

Swept over the accuracy at each of the four kernels, the optimum is the same leaf on all four at four digits, at six, at eight and at ten. At twelve it parts: the smooth kernel and the logarithm still prefer 16, the oscillation at a twentieth prefers 16, and the oscillation at a sixtieth prefers 32.

The leaf sweep on four kernels of increasing roughness, at 10⁻¹²Numbers stored per unknown against the leaf size at n = 512 and eight digits, for four kernels. The largest rank anywhere in the partition is 7 on 1/r, 7 on log r, 12 on cos(40r)/r, 14 on cos(120r)/r — it doubles across the four — and the leaf that stores least is 16 on 1/r, 16 on log r, 16 on cos(40r)/r, 32 on cos(120r)/r. It does not move. The prediction was that it would rise, because a compressed block of side s is worth having only while its rank is under half of s, and a higher rank should therefore push the smallest blocks out of the useful range first.n = 512, ε = 10⁻¹²1/r, least at leaf16log r, least at leaf16cos(40r)/r, least at leaf16cos(120r)/r, least at leaf32054108162216270324leaf sizestored per unknown481632641/rlog rcos(40r)/rcos(120r)/rthe rank doubles and the optimum does not movewhich the next figure explains
Fig. 4 Twelve digits, where the largest ranks are 7, 7, 12 and 14 and the roughest kernel’s minimum has finally moved one step to the right. The curves are flatter across their middles than at any looser accuracy.

That is the prediction, arriving. Its largest rank there is 14, so its break-even side is 28, and a leaf of 16 produces bottom-level blocks of side 16 — well below 28 and therefore stored larger than they need to be. The inequality finally bites.

What it took was both axes at once. Roughness alone gets the rank to 10 and moves nothing; twelve digits alone gets the smooth kernel to 7 and moves nothing; together they reach 14, and 14 is past the point where a leaf of 16 can be defended.

So the prediction is right and it is out by about a decade of tolerance, which is a useful thing to be able to say about a prediction. It was reasoned from an inequality that is exact, and what made it early rather than wrong was applying that inequality to the largest rank when the storage depends on the mean.

The leaf sweep on four kernels of increasing roughness, at 10⁻⁴Numbers stored per unknown against the leaf size at n = 512 and eight digits, for four kernels. The largest rank anywhere in the partition is 3 on 1/r, 3 on log r, 6 on cos(40r)/r, 6 on cos(120r)/r — it doubles across the four — and the leaf that stores least is 8 on 1/r, 8 on log r, 8 on cos(40r)/r, 8 on cos(120r)/r. It does not move. The prediction was that it would rise, because a compressed block of side s is worth having only while its rank is under half of s, and a higher rank should therefore push the smallest blocks out of the useful range first.n = 512, ε = 10⁻⁴1/r, least at leaf8log r, least at leaf8cos(40r)/r, least at leaf8cos(120r)/r, least at leaf804182123164205246leaf sizestored per unknown481632641/rlog rcos(40r)/rcos(120r)/rthe rank doubles and the optimum does not movewhich the next figure explains
Fig. 5 Four digits, the other end of the range, where the largest ranks are 3, 3, 6 and 6 and every kernel prefers a leaf of 8. The optimum moves with the accuracy and not with the kernel.

The ceiling the frequency runs into

The climb is the finding, so it needs a cause, and the first one proposed for it turned out to be wrong in a way worth keeping.

The natural explanation is counting. A block spanning a quarter of the domain contains many periods of a cosine at a wavelength of a sixtieth, a block spanning a sixteenth contains few, and representing a function with more wiggles in it takes more columns — so the rank of an admitted block picks up a term proportional to its absolute size, that term is what climbs with the leaf, and everything scales with the frequency.

It predicts something checkable: three times the frequency should cost far more than the 1.77 against 1.92 the two oscillations here differ by. Swept over seven frequencies, the spread of the mean rank across the leaves runs 1.10, 1.33, 1.48, 1.77, 1.90, 1.92 and 1.84.

It rises, flattens, and comes back down. Counting does not do that.

The rank an oscillation costs, against its frequency, at 10⁻⁸The largest rank anywhere in the partition, and the mean rank at the largest leaf, against the frequency of the cosine multiplying the kernel, at n = 512 and a leaf of 16. The largest rank runs 5, 6, 8, 9, 10, 10, 10 and stops: past a frequency it does not rise again, and where it stops is 10, which is exactly twice the 5 the same kernel without the cosine carries. The dashed line is that ceiling. It is an identity rather than a saturation — a cosine of a difference is the sum of two products, one factor of each depending on one variable, so an oscillating kernel is a rank-two function times a smooth one and the rank of a product is at most the product of the ranks. The leaf storing least is 16 at every frequency drawn.n = 512, leaf 16smooth kernel5the ceiling10highest frequency10024681012frequency of the cosineranknone10204080120200twice the smooth ranklargest rankmean rank at the largest leafthe rank stops risingat a ceiling an identity puts there
Fig. 6 The largest rank against the frequency of the cosine, with the mean rank at the largest leaf beneath it. The curve stops at a dashed line, and the line is not fitted.

The largest rank runs 5, 6, 8, 9, 10, 10, 10 over the same sweep and then stops. Where it stops is 10, and the same kernel without the cosine carries 5.

Exactly twice, and exactly twice at every accuracy: 3 and 6 at four digits, 4 and 8 at six, 5 and 10 at eight, 6 and 12 at ten, 7 and 14 at twelve. A ratio that is 2.000 five times over is an identity showing through a measurement, not a coefficient.

The identity is one line of trigonometry. A cosine of a difference is the sum of two products — one term the cosine of the first variable times the cosine of the second, the other the two sines — so as a function of the pair of points it has rank exactly two, at any frequency whatever. An oscillating kernel is therefore the entrywise product of a rank-two matrix and the smooth one, and the rank of such a product is at most the product of the ranks. Twice the smooth rank is a ceiling, it does not depend on the frequency, and a high enough frequency simply reaches it.

So the counting explanation had the right shape and the wrong object. The rank does grow with the frequency, up to a point; the point is not a saturation of the approximation but an algebraic bound that was there all along.

Why doubling is not enough

The ceiling is what settles the essay’s main question, and it does it quantitatively rather than by analogy.

The break-even side of a block is twice its rank, so moving the optimum off a leaf of 16 needs a rank above 8 in the blocks at the bottom of the tree. The smooth kernel at eight digits carries 5 — a rank that is really a count of digits, which is the reading a rank that is a number of digits gives it. The very roughest oscillation available carries 10 — which is above 8, but the bottom-level blocks do not all sit at the largest rank, and it is the mean that decides the sum. The mean at the smallest leaf is 5.08 even at the highest frequency.

Doubling is the most this kind of roughness can buy, and doubling from 5 is not enough. Doubling from 7 is: at twelve digits the ceiling is 14, the break-even side is 28, and a leaf of 16 is below it by enough that the arithmetic finally turns over.

That is why the prediction needed both axes. The tolerance raises the smooth rank without bound — one per two decades — and the frequency multiplies whatever the tolerance has produced by two. Neither is sufficient at the settings the earlier sweep was run at, and the product of them is. The offset that moved the slope is where the tolerance’s own contribution was first measured as a growth rate rather than a level, and it is the axis doing most of the work here.

It also says what would be sufficient on its own, which is a kernel that raises the rank by more than a constant factor. An oscillation cannot; something with no separable structure at all can, and the kernel with nothing to compress is the limiting case where the rank is full, compression buys nothing and the optimum stops existing rather than moving.

Which kernels the decomposition is safe on

The practical form of all this is a statement about which matrices the two-knob reading can be trusted for, and the ceiling makes it sharper than “smooth ones”.

Any kernel that is a function of the distance alone has the rank invariance in the leaf, because the admissibility test holds the separation ratio fixed and there is no other length in the problem. That is the case the size the rank does not notice measures on a single block, sampling one at 32, 64, 128 and 256 points a side and needing five columns every time. The inverse distance and the logarithm are both of that kind and both have a mean rank spread near 1.1.

Any kernel that is such a function times something of bounded rank — an oscillation, a smooth envelope, a low-rank perturbation — has a mean rank that climbs with the leaf, by a factor the bounded rank caps. The decomposition is not exact on those, and the size of the error is the cap.

Anything else has no guarantee at all, and the sweep here says nothing about it.

That is a statement about the physics the matrix came from rather than about the matrix, which is the usual shape of a result in this field and is why the same matrix numbered twice keeps having to be re-read: none of this is visible in anything the matrix itself carries, and a permutation destroys all of it while changing no eigenvalue.

What must fail for any of this to be wrong

Five claims and a refusal. That the roughest kernel carries about twice the largest rank of the smoothest, which is the premise the prediction needs. That the largest rank is invariant to the leaf on every one of the four, which is the geometric argument surviving. That the optimal leaf moves by at most one step across all four kernels, and at eight digits does not move at all. That the mean rank’s spread across the leaves exceeds 1.5 on the roughest kernel and is under 1.2 on the smoothest. And that the roughest kernel’s spread is more than half again the smoothest’s, which is what makes the third effect a real one rather than noise in the measurement.

The refusal is fed the claim that the roughest kernel wants a larger leaf at eight digits, and required to fail.

The claim about the optimum is stated as a bound of one step rather than as an equality, which is the repair the twelve-digit sweep forced. A requirement that the optimum never moves would have passed at eight digits, passed at ten, and failed at twelve — a claim about the accuracy it happened to be calibrated at rather than about the kernels it names.

What this does not settle

Four kernels, one point distribution, one size, five leaves at powers of two. The optimum is located to a factor of two, so “does not move” means “does not move by a factor of two”, and a finer sweep could find it drifting inside that.

Two of the four kernels differ from the other two by carrying a frequency rather than by being less smooth in any analytic sense, and the ceiling argument is about exactly that. A kernel that is genuinely non-smooth — one with a corner, or a fractional power — raises the rank without being a bounded-rank factor times a smooth kernel, so the ceiling does not apply to it and the prediction should work at eight digits. That is the direct test of the account given here, and no kernel among these four is of that shape.

The ceiling is required as an equality on the largest rank and demonstrated at five accuracies, and the argument behind it bounds the rank of an entrywise product by the product of the ranks. That bound is not tight in general, so the measurement showing it attained is the part doing the work; nothing here explains why it is attained rather than merely respected.

Still open: a kernel with a corner, and the leaf as a function of the frequency

A kernel the ceiling does not cover. Every roughness measured here is a bounded-rank factor times a smooth kernel, and the ceiling is a theorem about that shape. A fractional power, or a kernel with a corner on the diagonal, is not of that shape: its rank should rise without a factor-of-two cap, its mean rank should stay flat in the leaf because it introduces no length of its own, and the optimum should then move at eight digits exactly as the original prediction said. That is the one experiment that would separate the account given here from the one it replaced, and it needs a kernel of a shape none of these four has.

Why the bound is attained. The rank of an entrywise product is at most the product of the ranks, and that bound is usually loose. Measured, it is reached exactly, at five accuracies and every frequency past the middle of the sweep. What makes the cosine’s two components independent of the smooth kernel’s in the way the equality requires is not explained by anything here, and whether it survives an envelope that is not a pure cosine — a chirp, or a windowed oscillation — is one sweep away.

The best leaf as a function of both, rather than a table. The two axes are known to interact and the interaction has been read off nine points. What the break-even inequality suggests is that the optimum depends on the mean rank alone — that a kernel and a tolerance giving mean rank 8 want the same leaf whichever way they got there. Plotting the best leaf against the mean rank for every kernel and accuracy measured would collapse the table to one curve if that is right, and would say what else matters if it is not.

And whether the roughest kernel’s optimum keeps moving. It has moved one step at twelve digits, which is the tightest tolerance the blocks here have singular values across. Whether it moves a second step needs either a larger matrix, where the ranks at a given accuracy are higher, or a rougher kernel still — and the second of those runs into the kernel with nothing to compress, where the optimum stops existing because compression does.

Shares its objects with

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

Named objects

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

AdmissibilityCluster treeHierarchical matrixLow-rank approximationNumerical rankOff-diagonal rankSeparation ratioStorageToleranceTruncation