Skip to content

review: retract the axis-separation claim and prediction 3 - #73

Merged
InauguralPhysicist merged 1 commit into
mainfrom
adversarial-review-retractions
Jul 30, 2026
Merged

review: retract the axis-separation claim and prediction 3#73
InauguralPhysicist merged 1 commit into
mainfrom
adversarial-review-retractions

Conversation

@InauguralPhysicist

Copy link
Copy Markdown
Contributor

Adversarial review of my own ladder claims. Two withdrawn, one review hypothesis refuted, and the generator gets the structural oracle it should have had from the start.

F1 — RETRACTED: "the expansion axis is 8.4× steeper"

The headline compared steps with unequal variable increments — 3×3→4×4 adds 14 vars, 4×4→4×5 adds 8. Normalised:

step axis +vars ratio per-variable
3×3 → 4×4 expansion +14 ×48.39 1.319×
4×4 → 4×5 flat +8 ×5.77 1.245×
4×5 → 5×5 expansion +10 ≥×2.81 ≥1.109×

Per-variable growth is monotonically decreasing and indifferent to which axis moved. And the only clean single-dimension expansion step (4×5→5×5, min 4→5) is ≥2.81× — lower than the flat step's 5.77×.

Design confound: from a square torus you cannot raise min(r,c) without adding both a row and a column, so "square cases" bundles expansion with a double size jump. The step that breaks it is a size-matched pair: 4×6 (48 vars, min=4) vs 5×5 (50 vars, min=5) — and I killed 4×6 mid-run as "more of the same on the cheap axis", destroying the control for my own headline.

Prediction 2's 20× threshold still wasn't crossed, so nothing shows the rectangular axis is exponential either. Open question; 4×6 is the cheapest experiment that moves it.

F2 — WITHDRAWN: prediction 3 was vacuous

resolutions is cumulative and unbounded; peak_learnts is pinned to the reduction schedule (learnt_limit starts at 4, +2 per reduce run, so peak ≈ 4 + 2·runs — the banked 143/832/1619/1842 imply ~70/~414/~808/~919 runs). The climbing ratio restates the DB policy, not a property of Tseitin.

F3 — REFUTED (review hypothesis)

I suspected the 76→35 res/s decay was an artifact of count_active_learnts being O(total clauses) per conflict. Tested with an incremental counter: 4×4 went 429.2s → 410.4s, only 4.4%, counters byte-identical. Refuted — the decay isn't that scan, and "5×5 is out of reach under the interpreter" stands.

F4 — that optimization is a bad trade anyway

It adds an invariant only build_cdcl_state maintains; the hand-built reduce_state in test_solver.eigs broke instantly ("cannot compare none and num"). count_active_learnts derives from the arrays and needs no invariant. Both recorded in CLAUDE.md so neither is re-attempted.

What survives

  • The generator is genuine. Every edge appears in exactly two vertices' incident lists; every vertex is degree-4 with distinct edges. Verified for 3×3, 3×4, 4×4, 4×5, 5×5, 3×7, 6×4. That incidence-exactly-2 property is what makes XOR-ing all vertex constraints cancel every edge and leave 0 = sum(charges), so odd charge really does imply UNSAT. Now tests/test_tseitin_invariant.eigs in the smoke suite, planted-fault validated (duplicating an incident edge makes it fail).
  • Closed measurements: 1,974 / 95,516 / 551,098.
  • DRAT oracle: single emission site, compaction doesn't route through it.
  • Pigeonhole == coloring, refined: CNFs are not byte-identical (clause order differs) but identical var/clause counts and byte-identical counters.

🤖 Generated with Claude Code

Adversarial review of my own ladder claims. Two are withdrawn, one review
hypothesis is refuted, and the generator gets the structural oracle it should
have had from the start.

F1 RETRACTED -- "the expansion axis is 8.4x steeper". It compared steps with
unequal variable increments: 3x3->4x4 adds 14 vars, 4x4->4x5 adds 8. Per
variable the growth is 1.319x, 1.245x, then >=1.109x -- decreasing, and
indifferent to which axis moved. The only clean single-dimension expansion
step in the data (4x5->5x5) is >=2.81x, LOWER than the flat step's 5.77x.
Design confound: from a square torus you cannot raise min(r,c) without adding
both a row and a column, so "square cases" bundles expansion with a double
size jump. The step that breaks it is a size-matched pair, 4x6 (48 vars,
min=4) vs 5x5 (50 vars, min=5) -- and 4x6 was killed mid-run as "more of the
same on the cheap axis", which destroyed the control for the headline claim.
Prediction 2's 20x threshold still was not crossed, so nothing shows the
rectangular axis IS exponential either. Open question; 4x6 is the cheapest
experiment that moves it.

F2 WITHDRAWN -- prediction 3 was vacuous. resolutions is cumulative and
unbounded while peak_learnts is pinned to the reduction schedule
(learnt_limit starts at 4, +2 per reduce run, so peak ~= 4 + 2*runs; the
banked 143/832/1619/1842 imply ~70/~414/~808/~919 runs). The climbing ratio
restates the DB policy, not a property of the family.

F3 REFUTED (a review hypothesis, not a prior claim) -- I suspected the
76->35 res/s decay was an artifact of count_active_learnts being O(total
clauses) per conflict. Tested with an incremental counter: 4x4 went 429.2s ->
410.4s, only 4.4%, counters byte-identical. So the decay is not that scan and
"5x5 is out of reach under the interpreter" stands.

F4 -- and that optimization is a bad trade anyway: it adds an invariant only
build_cdcl_state maintains, and the hand-built reduce_state in
test_solver.eigs breaks instantly ("cannot compare none and num").
count_active_learnts derives from the arrays and needs no invariant. Both
findings recorded in CLAUDE.md so neither is re-attempted.

SURVIVES: the generator is genuine -- every edge appears in exactly two
vertices' incident lists, every vertex is degree-4 with distinct edges,
verified for 3x3/3x4/4x4/4x5/5x5/3x7/6x4. That incidence-exactly-2 property
is what makes XOR-ing all vertex constraints cancel every edge and leave
0 = sum(charges), so odd charge really does imply UNSAT. Promoted to
tests/test_tseitin_invariant.eigs in run_smoke.sh, and planted-fault
validated (duplicating an incident edge makes it fail). Also surviving: the
closed measurements (1,974 / 95,516 / 551,098), the DRAT oracle (single
emission site, compaction does not route through it), and pigeonhole ==
coloring, refined -- the CNFs are not byte-identical but have identical var
and clause counts and produce byte-identical counters.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@InauguralPhysicist
InauguralPhysicist merged commit a0bf956 into main Jul 30, 2026
1 check passed
@InauguralPhysicist
InauguralPhysicist deleted the adversarial-review-retractions branch July 30, 2026 10:27
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