Skip to content

Report exchange amounts too small to have been measured - #260

Merged
ccomb merged 2 commits into
mainfrom
unmeasurable_amounts
Jul 26, 2026
Merged

Report exchange amounts too small to have been measured#260
ccomb merged 2 commits into
mainfrom
unmeasurable_amounts

Conversation

@ccomb

@ccomb ccomb commented Jul 26, 2026

Copy link
Copy Markdown
Owner

Why

Databases carry exchange amounts like 4e-37 kg. Nothing is measured at that
magnitude: a hydrogen atom weighs 1.7e-27 kg, the same figure in joules sits
eight orders of magnitude below a single visible photon, and a count of items is
quantised at one.

A value like that is a residue of computation — an underflow, a conversion
through a zero, an allocation of nothing — that reads as data. It survives every
copy of the dataset until somebody looks, and none of the existing checks look:
suspiciousAmounts catches non-finite values and a zero reference amount, not a
number that is merely impossible.

What it does

A fourteenth structural check, unmeasurableAmounts. The floor is 1e-27
whatever the unit, far below the smallest real trace amount an inventory carries,
so the check accuses only what no instrument could have produced. Zero passes: it
says the input is absent, which is a statement, not a residue.

Warning for an ordinary exchange — such an amount distorts no score, it simply
isn't true. Danger for a reference exchange: normalization divides every other
amount in the process by it, so a reference of ~1e-37 scales the whole process
by its reciprocal (and a negative one flips every sign).

Verified on real data

Two published national releases: six findings each, from arsine at 7e-28 kg
through a dioxin at 6e-32 kg to titanium dioxide at 7e-34 kg. Low and
discriminating, no flood.

ccomb added 2 commits July 26, 2026 23:42
Databases carry amounts like 4e-37 kg. Nothing is measured at that magnitude:
a hydrogen atom weighs 1.7e-27 kg, the same figure in joules sits eight orders
below a single visible photon, and a count of items is quantised at one. Such a
value is a residue of computation — an underflow, a conversion through a zero —
that reads as data and travels with every copy of the dataset until someone
looks.

The floor is 1e-27 whatever the unit, far below the smallest real trace amount
an inventory carries, so the check accuses only what no instrument could have
produced. Warning, not danger: it distorts no score, it simply isn't true.

Verified on two national releases: six findings each, from arsine at 7e-28 kg
to a dioxin at 6e-32 kg. Low and discriminating, no flood.
An ordinary exchange below the measurable floor distorts no score, so it
stays a warning. A reference exchange is what normalization divides by:
a reference amount of ~1e-37 scales every other amount in the process by
its reciprocal — the near-zero cousin of the zero-reference case the
suspicious-amounts check already reports as danger. A negative one flips
every sign on top. The finding now names the division.

Also add the missing changelog entry and cover the floor boundary.
@ccomb
ccomb force-pushed the unmeasurable_amounts branch from 070cdbd to 6fe5d73 Compare July 26, 2026 21:44
@ccomb
ccomb merged commit 8bd93df into main Jul 26, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant