# Red team, attack 10 of 10: the six headlines of 2026-08-18, checked by someone else

<!-- ledger
id: Q-redteam-0818
status: ANSWERED
todo: none
question: Do the six headlines of 2026-08-18 survive being checked by someone other than their author?
verdict: Four CONFIRMED, two WEAKENED, one REFUTED: the second instrument's independence claim is refuted, the growth law weakens to G2 = x ln^{2+o(1)} x with the o(1) positive, and B is polylog, Brady's Problem 3 and DP1's consumer stand.
-->

*(2026-08-18/19. Assignment: assume each headline is wrong and look for the
reason. Producers of every number below: `research/redteam-growth-aicc.js`,
`research/redteam-instrument-independence.js`, `research/redteam-B-polylog.js`,
`research/redteam-DP1-certificate.js`, `research/redteam-tau-and-split.js` — five new scripts, each bound with
`research/qc/embed.js`, each carrying its own verbatim output and numbered
readings. Legend as in `research/sift-limit-attack.md`.)*

**Why this file exists.** On 2026-08-18 a script in this repo was found carrying
an OUTPUT block and eight numbered READINGS written before the file had ever
been executed: ten figures wrong, two sign-reversed, the code correct
throughout. Six attacks landed that day on top of that discovery and none had
been checked by anyone but its own author.

---

## SCOREBOARD

**Four CONFIRMED, two WEAKENED, one REFUTED**, over the six headlines plus one
the wave had left unchecked. The
refutation is headline 2's independence claim and it is the most consequential
finding here, because it removes a second witness the corpus was counting.
Both weakenings are of headlines that their own producing documents already
qualify correctly in their bodies — the overstatement is in what was
circulated, not in what was written. **No script in this wave has a fabricated
tail:** all five targets pass `embed --check` on both hashes.

| # | headline | verdict |
|---|---|---|
| 1 | the growth law `0.762 x ln²x lnln x`, with `c x ln²x` out at 31.8 and `c x^a` at 10.6 | **WEAKENED** |
| 2 | the exact-frame diagonal is a SECOND, INDEPENDENT instrument agreeing with it | **REFUTED** |
| 3 | `B ≤ 9A²(E−1) = O((log z)^8)`, and polylog suffices for the mean-square Lemma V | **CONFIRMED** |
| 4 | Brady's Problem 3 is not our covering problem; NP-completeness licenses nothing | **CONFIRMED** |
| 5 | the quantifier is separable at `τ(m)`; BF's `4.156000` is their unoptimised split | **WEAKENED** |
| 6 | DP1's consumer certifies `12, 114, 390, 2256, 18900, 117558`, slope +5.20 | **CONFIRMED** |
| 7 | *(added)* the 22-term ladder is A144311 under the right offset and definition | **CONFIRMED** |

**Custody first.** All five target scripts pass `node research/qc/embed.js
--check`: `attack-growth-law.js`, `attack-lower-bound.js`,
`attack-beta2-A-B-bounded.js`, `attack-D-twopoint.js` and
`attack-theta-margin.js` each report `code-sha256 matches` and `out-sha256
matches`. **Every tail in scope is genuinely the output of the code above it.**
The failure of 2026-08-18 is not repeated anywhere in this wave. Everything
below is therefore an attack on the CODE and on the INTERPRETATION, never on the
transcription.

---

## 1. The growth law — **WEAKENED**

> **What survives:** `MP2LL` is the best-supported law on x = 11..79 and is
> stable under every single-point deletion; the x-exponent → 1 conclusion is
> robust at every window tested; the AICc arithmetic error found here runs in
> the safe direction. **What does not survive:** both exclusions, at the
> strength the headline states them.

Route: `research/redteam-growth-aicc.js`, which re-derives all ten fits from
scratch rather than importing anything from the target.

**a. The AICc is mis-specified, and it is conservative.** A Gaussian
least-squares model with unknown variance estimates `K = k + 1` parameters, the
k regression coefficients **and** `σ²`. `attack-growth-law.js` uses `k`. The AIC
constant cancels in a difference; the AICc correction `2K(K+1)/(n−K−1)` does
not, because it depends on K. At n = 18 the correction shift is 0.00 for k = 1,
**0.36** for k = 2 and **0.81** for k = 3, and it always penalises the larger
model. Corrected: **PW moves 10.6 → 10.9** and **MP2 stays at 31.8** (MP2 and
the winner MP2LL are both k = 1). The winner is MP2LL under both conventions.
**[VERIFIED]** — a real defect, worth fixing, and it does not touch the
headline.

**b. The fits are comparable and the solver is exact.** All ten families
regress the same response `ln G₂` on the same 18 points; frozen exponents live
in an offset, which is a coefficient pinned at 1 and not a change of response,
so AIC differences are legitimate. Worst `|Φᵀr|` over all ten normal-equation
solves: **3.92e-14**. **[VERIFIED]**

**c. The 31.8 is not shape evidence — and the report says so itself.** MP2 is
thrown out by **31.8** on G₂ and by **32.8** on the control (33.2 in the
target's own AICc convention), whose conjectured truth *is* `x ln²x`. A frozen
one-parameter law is beaten at this range whether or not it is true.
`attack-growth-law.md` §2b and its reading 3 state this correctly and instruct
"quote it that way or not at all". **The document is right; the headline as
circulated has dropped the qualification.** **[VERIFIED]**

**d. The power-law exclusion rests on one point.** Dropping x = 11 alone takes
PW from **10.9 to 3.3** — not an exclusion on the Burnham–Anderson scale the
report itself invokes. Worst case over all 18 single deletions is **3.3**, and
it is x = 11 that produces it. Dropping the *largest* term instead leaves 10.3.
**[VERIFIED]**

**e. And one prime lower the whole ranking reverses.** At **x = 5..79**, twenty
terms, **PW wins and MP2LL is excluded at 38.4**. `attack-growth-law.js`
computes this itself, as its block **D2**, and **neither its fourteen readings
nor any of the eleven sections of `attack-growth-law.md` mentions it** —
including §10, "What is not established", which lists five other caveats. The
stated reason for the window is the script's line *"house window: below x = 11
the ladder is 2,6,12,30 and lnln 2 < 0"*. `lnln 2 < 0` excludes **x = 2 and
nothing else**: `lnln x` is 0.0940 at x = 3, 0.4759 at x = 5, 0.6657 at x = 7,
and every family runs at all three. **The low end is a judgement and the answer
is a function of it.** **[VERIFIED]**

**f. The §2 calibration argument is window-specific too.** Its form is: the
estimator takes a pure power whenever the data lets it; it does on the control;
it does not on G₂; therefore the log families' win is a property of G₂. Run on
**both** objects at six low ends, the inversion appears at **exactly one**,
x = 11. At low end 5 and 7 both objects pick a power or near-power and there is
no inversion to read; at low end **13, PW does better on G₂ (3.3) than on the
control (6.1)** — the opposite sign. **[VERIFIED]**

**g. One joint nobody priced.** AIC counts n independent observations. Residual
lag-1 autocorrelation runs −0.150 to 0.773 across the ten families; the AR(1)
effective sample size `n(1−r)/(1+r)` is **4.4 for MP2** and **13.8 for PW**
against n = 18. This is an order of magnitude, not a correction — each model has
its own r. What it says: a gap of a few units is inside the noise of the
independence assumption, and a gap of 30 is not. **[MEASURED]**

**h. The constant's band.** `c = 0.7624` has a jackknife band of
**0.7574..0.7698** but a **window** band of **0.7534..0.8316**, five times
wider. Three significant figures are not supported; two are.

> **VERDICT: WEAKENED.** Quotable: `G₂ = x ln^{2+o(1)}x` with the o(1) positive,
> best single description `0.76 x ln²x lnln x` over x = 11..79. **Not quotable:
> "c x ln²x excluded at 31.8 units" and "the pure power law excluded at 10.6"**
> — the first is refuted as shape evidence by the document's own control, the
> second does not survive its smallest data point or a one-prime window change.

---

## 2. The second instrument — **REFUTED**

> The two instruments are not independent. The exact frame **cancels out of
> every reported offset**, and the diagonal hands back the parameter attack E
> already fitted. Two dependent instruments agreeing is one instrument counted
> twice, which is exactly the failure the assignment named.

Route: `research/redteam-instrument-independence.js`.

**a. §3b reproduces exactly**, from a `frame()` written from the definitions
rather than copied: trend exponents **−0.5308, 0.3181, 0.4692, 3.6755** and the
data's own **0.2273**, se-distances **9.3, 1.1, 3.0, 42.3**. So nothing below is
a reproduction failure.

**b. The exact frame cancels.** OLS slope is linear in the response, and the law
regression and the data regression subtract the **same** `ln(m lnD)` against the
**same** regressor, so the difference of slopes is `slope(ln f − ln G₂)` and the
frame is gone. Computed with **no frame at all**, the offsets agree with the
framed ones to **4.44e-16**. **[VERIFIED]**

**c. Absurd frames give the same offsets.** Dividing by `x⁵`, by `eˣ`, by `1/x³`
or by `(m lnD)²` leaves the MP2 offset at **−0.7581** in every case. What moves
is the data se — 0.0816 exact frame, 0.1007 none, 9.7172 with `eˣ` — and hence
the se-*distance*: **9.3, 7.5, 0.1**. The exact frame's contribution is the
**error scale**, not the measurement. **[VERIFIED]**

**d. The diagonal returns attack E's own fitted parameter.** Under this
instrument `c x ln²x (lnln x)^b` has a trend linear in b, so the b landing it on
the data is `(0.2273 − (−0.5308))/0.8489 = 0.8930`. Attack E's `MP2LLb` row fits
b by AICc and reports **0.893**; refitted from scratch here, **0.8933**. The two
routes differ by **0.000292**. **[VERIFIED]**

**e. And the 9.3 loses strength on the same deleted point.** Over the 18 single
deletions the MP2 se-distance runs **7.9 to 13.1**; the lowest, 7.9, comes from
deleting **x = 11** — the same point that carries attack E's power-law
exclusion. Two "independent" instruments weakening on the same deletion is what
dependence looks like.

**f. What survives, and it is not nothing.** The **ranking** is real: on the
same 18 points `c x ln²x` sits 0.758 from the data's trend and
`c x ln²x lnln x` sits 0.0908, a factor of eight. That is a fact about G₂ and it
does not depend on the frame. The exact frame earns its place by making the
scatter small enough that 0.758 is worth 9.3 se rather than 7.5.

> **VERDICT: REFUTED**, as an independence claim. **Required edit to
> `attack-lower-bound.md` §3b:** delete "Two independent instruments, one
> model-selection and one exact-frame". Replace with: the diagonal re-expresses
> the same 18-point comparison in a frame that sharpens the error bar, and its
> agreement with attack E is algebraic, not evidential.

---

## 3. B is polylog — **CONFIRMED**

> The chain is a proof and it holds; the exponent 8 is right; no violation
> appears at points the report never tested. One error found in the sufficiency
> section, and it too runs in the safe direction.

Route: `research/redteam-B-polylog.js`.

**a. The chain is a proof, not a fit.** Rebuilding the local factors from the
report's own state description — (neither), (p|d₁), (p|d₂) at odd p with
(p|both) barred by `gcd | 2`, all four states at p = 2 — returns **2.500000** at
p = 2 and `1+2/p` at odd p, matching `A(z) = (5/2)∏(1+2/p)`, and returns
**r(2) = 0.600000**, `r(p) = 2/(p+2)`. Step 2 is a genuine Euler-product
argument: the Rosser supports are **subsets** of the divisors of `P(z)` with
`|λ_d| ≤ 1`, so the truncated sum is at most the full product; the factor 3 is
the three certificate blocks; imposing `e|q` bars the (neither) state at every
`p|e`. Step 3 is an identity — brute force over every squarefree `e|P(z)`
matches `∏_p(1 + p r(p)²)` to **3.98e-15** at z = 13, 23, 43. **[VERIFIED]**

**b. The exponent 8 is measured, not asserted.** `d ln A/d lnln z` runs
**1.9414 → 1.9997** and `d ln E/d lnln z` runs **3.8024 → 3.9993** over
z = 10³..4·10⁶. So `9A²(E−1)` is `(log z)^{4+4}`. **[VERIFIED]**

**c. The per-e check holds where the report did not look.** No violation of step
1 or step 2 at **z = 43**, which the report's table stops short of, nor at
**s = 2.0**, which the report itself names as the corner where B is largest. B
at z = 43, s = 2.0 is **1.718147**, the largest seen, and the bound is still
**2.63e+4** times above it. **[VERIFIED]**

**d. The `(log z)^14` threshold is wrong.** Solving `H/(ln H)⁶ = 9A²(E−1)`
exactly, `ln H_min / lnln z` reads **29.968** at z = 13 and falls monotonically
to **16.543** at z = 10⁶ — still above 14 and still falling. Continuing the
*shape* `B = C(log z)^8`, the same ratio reads **13.3679** at `log z = 100` and
**8.5543** at `log z = 10³⁰`. It passes through 14 and tends to **8**. The true
polylog threshold is `(log z)^{8+o(1)}`. The slip is pricing the `log⁶H` factor
as `(log z)^6`, i.e. using `ln H = ln z`, while simultaneously setting H polylog
in z: **two different H's in one sentence.** It *overstates* the requirement, so
the conclusion is untouched. **[VERIFIED]**

**e. The sufficiency implication is valid, with two conditions.**
`B ≤ H/(ln H)⁶` with `H = z^u` is `z^u ≥ C u⁶ (ln z)^14`, a power against a
polylog, true for all large z at any fixed `u > 0`. Conditions: **(i)** u must be
bounded away from 0 — the corpus uses `u ≈ β₂ = 4.26645`, a constant, so this
holds where it is used; **(ii)** the ask is the **mean-square** ask. At
u = 4.26645 the proved bound first suffices between z = 10⁴, where 4.291e+7 is
still above 3.160e+7, and z = 10⁵, where 2.541e+8 is below 1.530e+11.
**[VERIFIED]**

**f. The one thing it does not license.** `sift-limit-attack.md` §7e proves
`⟨R²⟩_H ≤ B·H`, an average over positions. `attack-AB-bounded.md` says so in its
own headline — *what separates the mean-square lemma from Lemma V is the
position quantifier, not B* — so the report is honest. **Every downstream use
must carry the words "mean square".**

> **VERDICT: CONFIRMED.** The three-step chain is a valid proof, the exponent is
> 8, and polylog does suffice for the **mean-square** Lemma V. Fix the
> `(log z)^14` line to `(log z)^{8+o(1)}`.

---

## 4. Brady's Problem 3 — **CONFIRMED**

> Both halves hold. The conclusion is scoped to "about the exponent" and is not
> the broad claim; the partition argument is structurally sound and the document
> stops in exactly the right place.

Route: direct reading of `research/history/staging/attack-np-licenses.md`, plus
`research/redteam-tau-and-split.js` §C for the structural half.

**a. The conclusion is NOT too strong, and the document is the reason.** The
assignment asked whether "licenses nothing about the exponent" overreaches past
the defensible narrow claim. It does not, and the test is that the document
carries a **§4.3, "What it DOES license"**, with four items — a negative
expectation about extending the exact ladder, a negative expectation about
optimal certificate construction, a methodological guard against any argument
that would decide general Shifted Sifting in polynomial time, and "nothing
else". A document that enumerates what a theorem licenses is not claiming it
licenses nothing. Every headline instance of the phrase is scoped: §0 item 2
reads "licenses nothing whatever **about the exponent**", and the drafted
`PRIOR-ART.md` edit at §7.1 reads "**The result licenses nothing about the
exponent**". **[VERIFIED]**

**b. And the narrow claim is right.** §4.2 item 1: NP-completeness is a
statement about uniformly deciding a family whose input varies; `G₂(x#)` is a
single sequence with no free input, deciding any one term is `O(1)` by table
lookup, and the growth rate of a fixed sequence is not a complexity-theoretic
quantity. That argument is correct and it is decisive. §4.2 item 5 adds the
right counterweight — Brady's own Theorem 10 makes Transverse Partition Cover
fixed-parameter tractable in the number of partitions — so the document is not
using NP-completeness as evidence of mathematical hardness either.

**c. The partition argument excludes our family, structurally.** Recomputed
independently: the per-prime collection `{S_a : a ∈ Z/p}` with `S_a = {a, a−2}`
has each residue of multiplicity **[1] at p = 2 only** — where `a ≡ a−2 mod 2`
collapses the pair to one class — and **[2] at every odd p** from 3 to 23. `p`
sets of size 2 cannot partition `p` elements. So no odd prime supplies a
partition, and any theorem requiring each prime to supply one does not quantify
over our family. **[VERIFIED]**

**d. And it stops in the right place.** §4.2 item 3 concludes "whether it is
NP-complete is **not settled** by anything in this thesis" — an absence of a
result, not a claim of tractability. That is the correct inference and the place
where an overreach would have been easy. §4.2 item 4 is the same discipline
applied to Theorem 12, whose "arbitrary collections" setting the document
concedes *is* our shape, and which it separates on the **objective** (maximum
covered count against longest fully covered initial run) rather than pretending
the shape differs.

**e. Custody is the strongest in the wave.** §1 gives the URL, **844,620
bytes**, a sha256, the printed-to-PDF page offset fixed by locating printed p. 1,
and an extraction caveat — `pdftotext` drops the `≪` glyph, zero occurrences
against 19 for `Jacobsthal` as a known-positive — with the affected quotations
re-read off rendered page images. The Erdős sentence was re-sourced rather than
inherited, and the dead 2026-08-18 run's negatives are declared void.

**f. The one thing I cannot verify.** The thesis PDF is **not in this
repository** and `find` over the machine does not locate it, so the verbatim
text of Theorem 9, Problem 3 and Problem 4 cannot be checked from here. The
byte count and sha256 make that checkable by anyone who re-fetches, which is the
right way to leave it, but it is not checked here. **[CANNOT VERIFY]** — and
this is a weaker caveat than §5b's, because the identifiers are recorded.

> **VERDICT: CONFIRMED.** The conclusion is correctly scoped, the partition
> exclusion is structurally sound and reproduces, and the document declines the
> two overreaches available to it.

---

## 5. The quantifier price and Brüdern–Fouvry — **WEAKENED**

> The Brüdern–Fouvry half is exact and reproduces to every digit, with one
> digit-count defect. The `τ(m)` half is a genuine reframing sold slightly too
> hard: at the worst `m` the two prices are **the same number**.

Route: `research/redteam-tau-and-split.js`.

**a. `τ(m)` and `C^{π(z)}` coincide at the worst `m`. [VERIFIED]** The report's
own formula `τ(m) = 2^{π(ln m)}` is the maximal order of the divisor function,
attained at `m = P(y)` where `ln m = θ(y)`. Evaluated at the worst `m | P(z)` it
returns **`2^{π(z)}` exactly**, or within one prime of it, at every z tested from
13 to 100003. So "priced at `τ(m)` rather than `C^{π(z)}`" does **not** lower
the worst-case price. The assignment's suspicion was correct.

**b. But the reframing is not empty, and this is the honest half.** A uniform
`C^{π(z)}` is attached to nothing; `τ(m)` is attached to each `m` and compared
against that `m`'s own size `m^{0.175}`. Below `ln m = 118.83` the divisor price
binds; above it the size of `m` beats it outright. That is a real structural
gain and it is why the route survives at all. What it does not support is the §7
phrase **"a materially cheaper statement of the wall"**: the improvement is in
the *shape* of the comparison, not in the size of the price, and at the worst
`m` there is no improvement.

**c. The report is honest about the outcome.** §6 (C1) calls the route "CLOSED,
asymptotically, with a crossover", surviving to `z = 1e11` and dead from
`z = 1e12`, and calls it "a real kill but a late one". So the document does not
claim the price rescues anything.

**d. What I cannot check.** The Fourier expansion the separability rests on —
`R(x) ~ Σ_h c_h Σ_m e(−hx/m) K_h(m)`, with all the `x`-dependence in the single
exponential — is not derivable from anything in this repository, and the
reciprocity step `ρ/(d₁d₂) = −2 d̄₁/d₂ mod 1` needs the surrounding setup to
check. **Given the expansion**, the separability is trivially right: taking
absolute values in a factor that is the only carrier of `x` discharges the
quantifier at no cost. **[CANNOT VERIFY]** for the expansion itself.

**e. The Brüdern–Fouvry arithmetic reproduces to every digit. [VERIFIED]**
Independent minimisation of `u(a,b) = (1+e^{b/2a})/b` on `a+b = 5/4`:

```
u(1/2, 3/4)        = 4.1560000222 = (4/3)(1 + e^{3/4})
optimum            a = 0.5404035, b = 0.7095965,  u = 4.1264517443
1/u at the optimum = 0.2423389541
unclaimed exponent = 0.0295482779   in their currency 0.0017229785
```

All four match `attack-theta-last-gap.md` §4 exactly.

**f. One digit-count defect. [VERIFIED]** `1/4.156000 = 0.24061597`**`69`**,
while `0.2406159756` is the reciprocal of the *exact* `(4/3)(1+e^{3/4})`. The
document's §B is stated correctly, because it reciprocates the exact value; but
any circulated sentence of the form "`1/4.156000 = 0.2406159756`" is wrong in
its last two digits. Both round to `0,2406`, so **the identification with their
printed constant is untouched.**

**g. Re-splitting does stay inside the side condition, algebraically.
[VERIFIED]** `q^{C₀} D₁⁴ D₂⁴ ≤ x^{5−cε}` with `D₁ = x^a`, `D₂ = x^b` has
`x`-exponent `4(a+b)` — a function of the **sum alone**. Six splits with
`a+b = 5/4` all give `4(a+b) = 5.00` and all sit inside `x⁵`, while `u` ranges
4.1264517443 to 4.5807011108. Their split and the optimum sit at the same
`a+b`, so both saturate `x⁵`.

**h. The attribution cannot be checked from here. [CANNOT VERIFY]** Whether
`q^{C₀} D₁⁴ D₂⁴ ≤ x^{5−cε}` is what Brüdern–Fouvry require, and whether
"`0,2406`" is what they print, rest on **`BF.txt` line 146**, and `BF.txt` is
**not in this repository** — `find` over the whole tree returns only
`research/attack-bf-split.js`. The same is true of
`friedlander-weaker-simpler.txt`, cited by `attack-AB-bounded.md` §0 as "28,902
bytes on disk", and of the `lit/corpus/` directory both refer to. No byte count
or hash is recorded for `BF.txt`, so unlike §4e there is no route to re-fetch
it. This is the "evidence that cannot be re-run" fragility that
`research/qc/README.md` names in its own words. It is **not** an accusation that
the quotations are wrong; it is a statement that nothing in this repository can
confirm them.

> **VERDICT: WEAKENED.** The `4.156000` identification, the optimum and the side
> condition are exact and reproduce. Drop "materially cheaper" from the `τ(m)`
> sentence — at the worst `m` the two prices are equal, and the gain is in the
> comparison's shape. Never write "`1/4.156000 = 0.2406159756`". And the
> attribution to Brüdern–Fouvry is unverifiable from this repository.

---

## 6. DP1's consumer — **CONFIRMED**

> All six certified bounds are correct on the sharp LP, from an independent
> implementation, **including the two levels the producer never LP-checked**.
> Two findings, both about presentation and margin rather than arithmetic.

Route: `research/redteam-DP1-certificate.js`, which rebuilds the sifted set from
the definition, computes `S₁` and `S₂` by a sliding window over the whole
period, and solves the degree-2 LP exactly by enumerating every basic feasible
support `{0, a, b}`.

**a. All six bounds reproduce.** `6L` reads **12, 114, 390, 2256, 18900,
117558** at x = 5..19, matching the headline at every level, with
**`V₂(L) < 1` and `V₂(L−1) ≥ 1`** at all six — so each reported L is genuinely
the *first* that certifies. **[VERIFIED]**

**b. The units are right, which was the first thing to doubt.** The certificate
is in **slots**, the headline in **integers**. Computing the true maximal slot
gap directly gives **2, 5, 7, 11, 18, 25**, and six times those is **12, 30, 42,
66, 108, 150** — the published G₂ at all six levels. The `units.js` §2 trap is
not what went wrong here. **[VERIFIED]**

**c. The producer never put the two largest on the LP.**
`attack-D-twopoint.js` finds each L by a closed-form variance inequality
(`deg2works`) and re-checks against the sharp LP **only when `found ≤ 400`**.
The reported L are 2, 19, 65, 376, **3150, 19593** — so **x = 17 and x = 19**,
the two numbers the +5.20 slope leans on hardest, **rested on the closed form
alone**. §a above is the first time they have been on the sharp LP. They pass.
**[VERIFIED]**

**d. The margin is collapsing and the last row is delicate.** `1 − V₂(L)` reads
**1.111e-1, 5.534e-2, 3.411e-2, 1.252e-2, 1.441e-4** at x = 7..19. At x = 19 the
certificate clears by **1.4e-4** out of a period of 1,616,615, and the
double-precision LP touches products of order **1.4e18**, past 2⁵³. Redone in
exact BigInt rationals: **`V₂(19593) = 10530232/10531755 = 0.9998553897`** at
`(a,b) = (4589,4590)`, still below 1, against the double's 0.9998558644. The
verdict is unchanged and the margin is now **certified rather than assumed**.
**Any extension of this table to x = 23 must be done in exact arithmetic.**
**[VERIFIED]**

**e. The +5.20 slope is a five-point fit presented beside six ratios.** The
headline lists 1.0, 3.8, 9.3, 34.2, 175.0, 783.7 and then one slope. Fitted on
**x = 7..19** it is **5.20**, which is what the script computes; fitted on all
**six** listed ratios it is **4.60**. Dropping x = 5 is the right choice — it is
the one level where the certificate is exact and the ratio is 1 by construction
— but the sentence must say so, because a reader given six numbers and one slope
will read the slope as over the six. **[VERIFIED]** — this is the second
correction the assignment asked for.

**f. What the slope can carry.** Five points from x = 7 to 19 is under half a
decade. The qualitative claim — that the price of stopping at two-point data
*grows* rather than staying a constant factor — is carried by the ratios
themselves, rising 3.8 → 783.7 monotonically, and needs no fitted exponent. The
exponent should not be extrapolated and should not be given to three significant
digits.

**g.** `max_a X_a` at the certifying L runs **2, 10, 25, 116, 834, 4605** — the
quantity a degree-k certificate needs k to reach, rising fast enough that no
fixed degree survives.

> **VERDICT: CONFIRMED**, with the x = 17 and x = 19 rows now resting on the
> sharp LP and on exact arithmetic for the first time, and with the slope
> re-labelled as a five-point fit.

---

## 7. The ladder's provenance — **CONFIRMED** (added after the six)

Headlines 1 and 2 are worthless if the 22-term ladder is wrong, and neither
producing document could check it: `attack-growth-law.md` §10 records that "the
session's web budget was exhausted". It is checkable now. OEIS returns HTTP 403
to the WebFetch path but serves `curl` normally, which is worth recording as a
channel fact.

```
curl -A "Mozilla/5.0 ..." "https://oeis.org/search?q=id:A144311&fmt=text"   HTTP 200, 1193 bytes
curl -A "Mozilla/5.0 ..." "https://oeis.org/search?q=id:A048670&fmt=text"   HTTP 200, 6364 bytes
```

Diffed against the arrays in `research/attack-growth-law.js` by program, not by
eye:

| check | result |
|---|---|
| A144311: OEIS 22 terms vs script 22 terms | **identical** |
| A048670: OEIS 58 terms vs script 58 terms | **identical** |
| `G₂ = A144311 + 1` at all 22 terms | **yes** |
| offset `%O A144311 1,2` → `a(15) = 707`, `p₁₅ = 47`, `G₂ = 708` | matches the script |
| `a(22) = 1709`, `p₂₂ = 79`, `G₂ = 1710` | matches the script |

**a. The definition is ours. [VERIFIED]** Verbatim: *"The length of the longest
sequence of consecutive integers, each equal to 1 or −1 modulo at least one of
the first n primes."* Under `n = m − 1` this is exactly our sieve form:
`m ≡ 1 or −1 (mod p)` ⟺ `m−1 ≡ 0 or −2 (mod p)`. So `a(n)` is the longest run of
**killed** integers and `G₂ = a(n) + 1` is the gap between consecutive
survivors. The conversion is right, and the offset is right.

**b. And it is confirmed by brute force at six levels, independently of OEIS.**
`research/redteam-DP1-certificate.js` §1 rebuilds the sifted set from the
definition and measures the true maximal gap directly: **2, 5, 7, 11, 18, 25**
slots at x = 5..19, and six times those is **12, 30, 42, 66, 108, 150** — the
ladder's own first six terms. Two routes, no shared code.

**c. Attribution matches.** `a(1)–a(7)` Andrew Carter, Sep 2008; `a(8)–a(16)`
Max Alekseyev, Nov 2009; **`a(17)–a(22)` Jinyuan Wang, Nov 26 2024**. That is
the "Carter 2008, Alekseyev 2009, Wang 2024" the corpus cites.

**d. One qualification, and it matters for how the eight new terms are
described.** A144311's keywords are `nonn,more,hard`. **OEIS makes no statement
that the terms are proven maximal**, and `more` says further terms are wanted.
`attack-growth-law.md`'s "proven maximal rather than best-found" is **this
repository's own argument** — the admissibility of the branch-and-bound pruning
test — and must be attributed that way, not to OEIS. **[VERIFIED as an absence]**

**e. A minor one for the control.** A048670's DATA section carries 58 terms, but
a comment records *"Computation of a(62)-a(64) was supported by Google Cloud"*
(Bozek, Mar 2021), so more terms exist than the 58 the corpus uses. This is
adjacent to the live internal disagreement `attack-growth-law.md` §10 already
flags. Nothing here turns on it — the fits move by 0.001 between x ≤ 229 and
x ≤ 271 — but the corpus's "58 exact terms" is a truncation, not a ceiling.

> **VERDICT: CONFIRMED.** The ladder is the published sequence, under the right
> offset and the right definition, and the `+1` conversion is correct. The one
> edit needed is to stop implying OEIS asserts maximality.

---

## What this red team did NOT check

- **The literature quotations** of §5h and §4f, for the reasons given there.
  Two of the six headlines lean on text files that are not in this repository
  and, in `BF.txt`'s case, carry no hash or byte count either. That is a
  corpus-level custody gap, not a defect in any one attack, and it is worth its
  own fix.
- **`attack-theta-margin.js`** was embed-checked (clean) but not otherwise
  attacked.


---

## The edits this report asks for

Ordered by how much they cost the project if left. **This report edits nothing
outside itself and its own five scripts.**

1. **`attack-lower-bound.md` §3b — delete the word "independent".** The two
   instruments share the object, the eighteen points, the window and the
   estimator, and the exact frame cancels out of every point estimate. Replace
   the "two independent instruments" sentence with: the diagonal re-expresses
   the same comparison in a frame that sharpens the error bar, and its agreement
   with attack E is algebraic. Keep the ranking; drop the second witness. (§2)
2. **Stop circulating "c x ln²x excluded at 31.8 AICc units".** The same
   estimator throws the same law out by 32.8 on the control, where it is the
   conjectured truth. `attack-growth-law.md` §2b already says this; the headline
   dropped it. (§1c)
3. **Qualify "the pure power law excluded at 10.6".** It is 3.3 without x = 11,
   and at x = 5..79 the ranking reverses outright. (§1d, §1e)
4. **Add the window sensitivity to `attack-growth-law.md` §10.** Its own script
   computes block D2 and no section mentions it. §10 is the right home and it
   currently lists five other caveats. (§1e)
5. **Fix the AICc to `K = k + 1`** in `attack-growth-law.js`. The effect is
   small and favourable — PW 10.6 → 10.9 — but the formula is wrong. (§1a)
6. **Fix `attack-AB-bounded.md`'s `H ≫ (log z)^14`** to `(log z)^{8+o(1)}`. The
   printed figure prices `log⁶H` as `(log z)^6` while setting H polylog in z.
   Conservative, and wrong. (§3d)
7. **Re-label the +5.20 slope as a five-point fit on x = 7..19.** On the six
   ratios the headline prints, it is 4.60. (§6e)
8. **Drop "materially cheaper" from the `τ(m)` sentence.** At the worst `m`,
   `τ(m) = 2^{π(z)}` exactly. The gain is in the comparison's shape. (§5a, §5b)
9. **Never write "`1/4.156000 = 0.2406159756`".** That is the reciprocal of the
   exact `(4/3)(1+e^{3/4})`; `1/4.156000` is `0.2406159769`. (§5f)
10. **Stop implying OEIS asserts A144311's terms are maximal.** Its keywords are
    `nonn,more,hard`. The maximality argument is this repository's own. (§7d)
11. **Bring `BF.txt` and `friedlander-weaker-simpler.txt` into custody**, or at
    minimum record a URL, byte count and hash for each the way
    `attack-np-licenses.md` §1 does for the Brady thesis. Two headlines
    currently rest on files nothing here can reach. (§5h)
12. **Record the channel fact**: OEIS returns HTTP 403 to WebFetch and HTTP 200
    to `curl` with a browser user-agent. `attack-growth-law.md` §10 recorded the
    ladder as unverifiable for want of web budget; it was one `curl` away. (§7)

---

*Producers: `research/redteam-growth-aicc.js`,
`research/redteam-instrument-independence.js`, `research/redteam-B-polylog.js`,
`research/redteam-DP1-certificate.js`, `research/redteam-tau-and-split.js`. Each
was run by this session, each carries its output written by
`research/qc/embed.js` rather than pasted, and each passes `embed --check` on
both hashes. Nothing in this file was transcribed by hand.*
