Skip to content

Two short rows realize c iff gcd(c,m) >= 3 (#4600 OQ1): necessity proof and explicit construction for every m (no new κ) - #4622

Merged
Mister-Meeseeks merged 3 commits into
CrocSwap:mainfrom
pinterbanget:two-row-coeffs
Oct 22, 2026
Merged

Mister-Meeseeks merged 3 commits into
CrocSwap:mainfrom
pinterbanget:two-row-coeffs

Conversation

@pinterbanget

@pinterbanget pinterbanget commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

This answers #4600's open question 1 (@petalas) completely, within #4280's row model: exactly two short rows realize c ≠ 0 if and only if gcd(c, m) ≥ 3. No new κ.

Necessity (written proof)

If gcd(c, m) = 2, #4600's condition forces both short rows to have length m/2. Then:

  • (r₁ − r₂)·m/2 ≡ 0, so r₁ + r₂ is even;
  • 2B(m/2) ≡ 0.

Together these give c = −(r₁ + r₂)·B(m/2) ≡ 0. Units are already excluded by #4600.

Sufficiency (explicit construction, every m)

Let g = gcd(c, m), d = m/g and c = g·r. Take:

  • λ = (m, m−d, d, 0, …);
  • ρ = (m−g, g, 0, …);
  • β = ((g+1)^r, g^(d−r), M, 1^r, 0^(d−r)), where M is the balanced block of length (g−2)d and sum m − 2r.

Then B(d) = m + r, B(m−d) = 2m − r and B(m) = 2m, all congruences hold, and the coefficient is g·r = c.

Checks

  • Construction: verified for all 4,626 pairs (m, c) with m ≤ 200.
  • Exact enumeration of the whole profile model for m ≤ 12 agrees.
  • The annihilator condition alone is not sufficient. For example, m = 6 with c = 2 or 4, and m = 12 with c = 2 or 10.
  • Prove the two-short-row connector obstruction for every modulus #4600's family m = 8t, c = 4t is checked for t ≤ 64.

research/two-short-row-coefficients/verify.py uses the standard library only and takes about 3 s.

Limitation

The row model and its converse are inherited from #4280. Call counts beyond #4600's are not claimed.

Credit: petalas (Nick Petalas) for #4600 and #4280. Ryanson Jonathan, with Claude Code (Claude Opus 5.5) assistance.

Head: 47cc973

🤖 Generated with Claude Code

pinterbanget and others added 2 commits October 22, 2026 17:33
…act enumeration showing it is also sufficient for m <= 12 (no new κ)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@pinterbanget pinterbanget changed the title Two short rows force gcd(c,m) >= 3 (#4600 OQ1): proof, and exact enumeration showing it is also sufficient for m <= 12 (no new κ) Two short rows realize c iff gcd(c,m) >= 3 (#4600 OQ1): necessity proof and explicit construction for every m (no new κ) Oct 22, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Mister-Meeseeks
Mister-Meeseeks merged commit b21331d into CrocSwap:main Oct 22, 2026
1 of 2 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.

2 participants