Incoprea Research · independent re-analysis · 4 November 2026
Identifiability, and the comparison that decides the answer
Five computational findings from an external audit of this archive: an independent confirmation, a design rule, a correction to the audit’s own first draft, and two tests of previously proposed experiments — both of which found the proposed experiment was the wrong one.
Independent re-analysisNo experiment performedCode published
1 · The archive reproduces
Before anything else: the supplied code works. The H0199 reference-placement package was re-executed and its saved results matched to zero absolute difference across all five result sets (24 + 12 + 12 + 12 + 2 rows). The H034 and #15 packages reproduced their published tables exactly on the first run. This is the first time, as far as the record shows, that the code has been run outside its author’s machine, and it survived.
Two dossiers also reproduced their own reported errors: the H034 energy table (11.719 / 36.604 / 38.344 / 39.391 / 41.842 with exponents +0.247 and −2.994) and the #15 pulse sweep (peak-to-mean ratios 3.11–3.17 at 10 % duty, with the flat plateau above 30 mHz). Corrections that reproduce are worth more than results that do not.
2 · H0199 — a design rule, and what actually carries the 22.9 %
The 2 November correction reported that a boundary-only witness layout can be wrong by 22.9 % “at any N”. Both halves of that are true, and the reason is arithmetic rather than geometric.
Two numbers, readable from a thickness or fluorescence map you already own, decide whether a boundary-only design is disqualified:
| quantity | definition | meaning |
|---|---|---|
| C | sd(f over ∂Ω) ÷ mean(f over ∂Ω) | is the boundary informative at all? |
| D | meanmask(f) ÷ mean∂Ω(f) − 1 | how badly does the boundary misrepresent the active region? |
Tested on seven synthetic field families: when C < 0.05 and the field is not in the estimator’s basis, the simulated bias equals D to two decimal places, and is unchanged between 12 and 96 witnesses.
| field | C | D (%) | edge bias, N=12 | edge bias, N=96 |
|---|---|---|---|---|
| radial (centre-to-edge) | 0.076 | 19.1 | −0.01 | 0.04 |
| rim-enhanced | 0.000 | −37.8 | −37.80 | −37.78 |
| boundary-null | 0.000 | 23.0 | 23.00 | 23.06 |
| interior-excess | 0.000 | 33.5 | 33.54 | 33.59 |
| random field | 0.194 | −0.6 | 0.98 | 0.73 |
Which factor carries the error
A 4 layouts × 5 estimators × 7 field families Monte Carlo (300 draws each) separates the two things that were tangled together. Sum of squares on log error: estimator 54.9, layout 22.9, field family 17.4. The estimator is the larger lever, and one combination is worse than either: a flexible predictor (kriging or RBF) fitted to a random layout gives 47–74 % error on smooth fields, where a degree-2 polynomial on a distributed grid gives 0.9–1.2 %. “Interleave randomly and fit a flexible model” is the worst design in the space, and it is a natural thing for a laboratory to do.
The supplied practical recommendation therefore survives and sharpens: distributed witnesses plus a low-order polynomial. The reason is not that interiors are better than edges in general — a radial field is fine with edge witnesses — but that the design must be able to see the modes the estimator cannot represent.
3 · I2 — the model checks out; the bias claim still needs an estimator
F(a) = ∫₀^∞ e−u/(u+a) du = eaE₁(a) and states Y(w) = F(Gw²/4K)/(4πK), which is correct. The error was in the auditing system’s own reconstruction, which used a·eaE₁(a) — the reciprocal of the normalised function R — and then compared the two. It is recorded here rather than deleted, in the same spirit as the rest of the archive.What the independent check found. An axisymmetric finite-volume solution of the stated heat equation (8 000 cells, Dirichlet at 80w, no use of the special-function identity) matches P/(4πK)·eaE₁(a) to 4.2 × 10⁻⁵ across a ∈ [0.01, 20]. The audit page’s published table of K·Tcentre/P matches independently to 10⁻¹⁰ at every tabulated value. The derivation and the numbers both hold.
What the check does add
The one part of the 2 November page that remains unresolved is not the formula but the interpretation. R = 1/F is a legitimate mathematical normalisation, and the page says so; calling it a universal “apparent conductivity” needs an estimator, and the page says that too. What can be added is the size of the effect, computed from the correct form — the cross-sensitivity between the two fitted parameters:
| a | ∂lnT/∂lnK | ∂lnT/∂lnG | ratio | κ error from a 20 % G error |
|---|---|---|---|---|
| 0.01 | −0.765 | −0.235 | 0.31 | 6 % |
| 0.05 | −0.665 | −0.335 | 0.50 | 10 % |
| 0.20 | −0.530 | −0.470 | 0.89 | 18 % |
| 0.50 | −0.417 | −0.584 | 1.40 | 28 % |
| 2.00 | −0.232 | −0.768 | 3.30 | 66 % |
| 20.0 | −0.044 | −0.956 | 21.8 | 437 % |
Both sensitivities are negative, as they must be: more substrate loss cools the sheet. The ratio crosses unity at a* = 0.259. So the practical statement is a measurement criterion rather than a bias law: measure at small a — large spot, weak substrate coupling, thin sheet — where a ≲ 0.05 keeps the cross-sensitivity below 0.5. Above a ≈ 1, κ and G cannot be separated by this model at all, which is the same conclusion the 2 November page reaches by a different route, now with a number attached.
4 · N0751 — what actually constrains the bench test
The differential-swelling proposal specifies matched gains and a matched-time control. Three bounds, computed from its own model, reorder the requirements.
| requirement | bound | verdict |
|---|---|---|
| gain matching ε | (τ₂−τ₁)/τ₂ ÷ contrast target | 6.7 % for a 20/60 µm pair — comfortable |
| readout noise | SNR ≈ 2 suffices for 10 % on Δτ | never binds; do not spend here |
| linear drift | below 0.7 % of the swelling gain over the record | binds; decides the build |
Drift is the requirement that will fail. Profiling an unknown linear baseline out of the fit, 1 % drift costs 14 % on Δτ and 5 % costs 69 %. A symmetric square-wave drive does not help — at its best period it makes 1 % drift cost 103 %, because a ramp and a step response share low-frequency shape.
Consequence for the protocol: the matched-time control tests the easy requirement. What the bench needs is a rigid reference measured simultaneously in the same optical path, so that drift is common-mode rather than nuisance. Without it the test will fail for a reason that has nothing to do with swelling.
One further design rule falls out: pairs with a large time-constant ratio are easier to build than fast pairs. A 20/120 µm pair tolerates 8.3 % gain mismatch; a 30/45 µm pair only 3.3 %.
5 · H034 — can two models fit the same data and disagree about a defect?
The original “missing far-field energy” mechanism failed. The narrower question — identifiability — has a clean answer on a lattice.
A defect-free 8³ cubic lattice with seven stiffness parameters (six neighbour shells plus bond bending) was fitted to the three cubic elastic constants. Central forces reproduce the Cauchy relation to 5 × 10⁻¹⁰, which validates the elasticity calculation. Then the null space of that fit was walked:
| central force | with bond bending | |
|---|---|---|
| elastic Jacobian rank | 3 of 7 | 3 of 7 |
| models matching all three C’s to 10⁻⁴ | 121 | 250 |
| defect-energy spread | 3.74× | 9.00× |
| error against the true value | −61 % to +47 % | −82 % to +62 % |
| elastic-dipole spread | 4.18× | 11.3× |
The elastic dipole — the quantity H034 proposes as a predictor — is the worst-determined object in the table. A descriptor that the elastic observables cannot pin down cannot be derived from them as a screening variable.
What extra data removes the ambiguity
| observations | models kept | defect-energy spread |
|---|---|---|
| elastic constants only | 250 | 9.00× |
| + 12 phonon frequencies to 5 % | 120 | 3.04× |
| + 12 phonon frequencies to 2 % | 50 | 1.58× |
| + 12 phonon frequencies to 1 % | 18 | 1.29× |
This changes the recommended next step, and makes it cheaper. The 30–50 defect DFT pilot is not the first thing to run. The first thing to run is: take a material whose elastic constants and phonon dispersion are both published, fit the shell model, and report the width of the defect-energy null space. Zero DFT, about a week. If the width is large — and the mechanism is general — the DFT pilot is justified, but it must then sample along the null space, not randomly, or it will measure the wrong variance.
6 · #15 — the pulse penalty is a duty tax, not a frequency window
Three results hold before any transport modelling, because matched charge throughput forces jpeak = javg/d:
- The peak overpotential always rises. Any monotone η(j) gives η(j/d) > η(j). At 5 % duty, ×5.46.
- The mean overpotential always falls. Butler–Volmer inverts to a concave asinh, so Jensen gives d·η(j/d) < η(j). At 5 % duty, ×0.27.
- Under a fixed-overpotential plating criterion the plating-limited current is exactly d·jDC, at every frequency. Plating fires at the peak; asinh is invertible; so j/d = jDC.
The third is the decisive one. At 10 % duty, pulsing buys one tenth of the DC plating-limited charge rate and no frequency improves it, because the binding term is the instantaneous overpotential at the peak current, and the peak current is set by the duty alone.
Diffusion does not create the window
A concentration (Sand) criterion in the semi-infinite limit has a √t kernel and therefore no length scale: the pulse/DC ratio depends only on the number of pulses per charge window, never on D. For a 30-minute charge at 10 % duty, reaching within 5 % of DC needs about 1.1 Hz — roughly 2 000 pulses — and the approach is slow, 1 − G ≈ 1.65/√(f·T). Since that channel is bounded below by √d, which exceeds d, the kinetic channel always binds first.
So where did the 1 mHz window come from?
From recovery — plated sodium re-intercalating during rest. Varying that rate alone, holding everything else fixed:
| recovery half-life | peak plating frequency | net plating charge at 1 mHz |
|---|---|---|
| 414 min | 3.2 × 10⁻⁵ Hz | 174.7 |
| 60 min | 4.9 × 10⁻⁴ Hz | 96.3 |
| 10 min | 1.5 × 10⁻³ Hz | 13.0 |
| 1 min | no window | 0.000 |
Whether a pulse penalty exists at all is decided by one number, and it is measurable directly. The proposed twelve-condition frequency × duty map therefore tests the wrong axis: only recovery predicts a peak. The cheaper decisive measurement is a rest-recovery assay — plate to a fixed overpotential, rest, measure recoverable capacity against rest time. One cell, about a week, and it decides whether the map is worth running at all.
7 · What this changes
| dossier | was | now |
|---|---|---|
| H034 | 30–50 DFT defect calculations, thousands of core-hours | fit a published elastic + phonon set, report the null-space width — one week, no DFT |
| #15 | 12-condition plating map, six weeks on a cycler | one rest-recovery assay, one week, then at most three conditions |
| N0751 | matched-time control as the decisive test | simultaneous rigid reference arm; drift is the binding requirement |
| I2 | universal apparent-conductivity bias | a conditioning criterion with a design rule: measure at a ≲ 0.05 |
| H0199 | layout comparison at 22.9 % | the D rule, computable from an existing map before any fabrication |
Two of these tests, in two unrelated subjects, found that the proposed experiment was the wrong experiment — one ten times too expensive, one aimed at a parameter that turns out not to matter. That is not a coincidence. Three of the four errors found across this audit are the same failure: the comparison sentence was never written. Matched RMS versus matched throughput; F(a) versus F(a)/a; an interaction cutoff versus matched elastic constants.
8 · Status and limits
Everything on this page is computation. No experiment was performed, no measurement was made, and nothing here has been peer reviewed. The H034 and #15 models are idealisations: a harmonic lattice is not a material, and the pulse-charge kinetics use order-of-magnitude parameters (j₀ = 8 A/m², ηplate = 100 mV) that are not measured for any cell. The exact results in §6 do not depend on those parameters; the numbers do.
The audit system that produced this page is an AI. Its errors are at least as likely as the archive’s, which is why every number has code next to it in the package below.
