Version C's subtract-three conjecture

Consider a position of Version C with aia_i piles of size ii, for 1in1\leq i\leq n, where

ai2(1in).a_i\geq 2\qquad(1\leq i\leq n).

Exclude the position with 1,1,2,2,3,3,31,1,2,2,3,3,3 as its piles, equivalently (a1,a2,a3)=(2,2,3)(a_1,a_2,a_3)=(2,2,3). Version C's subtract-three conjecture. The position is a P\mathcal{P}-position if and only if the total number of tokens is a multiple of 33. The claim was verified for ai5a_i\leq 5 and n5n\leq 5, but no general proof is supplied.

Progress summary

Solved

The original authors left the conjecture unproved, but a reader now claims exact computer counterexamples showing that its proposed rule fails in both directions.

Danai, Ellis, and Thanatipanonda formulated Version C's subtract-three conjecture in 2026: under the stated multiplicity conditions, losing positions should be exactly those with token count divisible by 33, apart from one exception.

Known results

  • The conjecture was verified computationally for ai5a_i\leq 5 and n5n\leq 5 (Danai, Ellis, and Thanatipanonda, 2026).
  • The paper supplies no general proof.
  • Its separate large-gap examples do not satisfy ai2a_i\geq 2 for every size, so they are not counterexamples here.

Posted attempt

A reader claims exact backward-induction computations give a winning position with (a1,,a7)=(2,2,2,2,2,2,3)(a_1,\ldots,a_7)=(2,2,2,2,2,2,3) and a losing position with (2,2,2,2,2,2,4)(2,2,2,2,2,2,4), disproving both implications beyond the tested range. The attempt claims a complete disproof, but it has not been independently verified.

Current status (as of August 2026): the conjecture has no published proof, while an unverified posted computation claims counterexamples to both directions.

Sources
Sources & referencesView supporting material

Primary source

Alon Danai, Paul Ellis and Thotsaporn Aek Thanatipanonda, “Generalizing OOOOOOB”, arXiv:2605.23213 (2026).

Solutions 1

Counterexample

Counterexample beyond the source's computationally verified range.

Take seven distinct pile sizes, with multiplicities

(a1,a2,a3,a4,a5,a6,a7)=(2,2,2,2,2,2,3).(a_1,a_2,a_3,a_4,a_5,a_6,a_7) =(2,2,2,2,2,2,3).

Every multiplicity is at least two, and this is not the explicitly excluded three-size position (2,2,3)(2,2,3). The total number of tokens is

i=17iai=2(1+2+3+4+5+6)+37=630(mod3).\sum_{i=1}^7 i a_i =2(1+2+3+4+5+6)+3\cdot7 =63\equiv0\pmod3.

The conjecture therefore predicts that this is a losing position.

In fact it is a winning position. Remove one token from each of the two distinct size-one piles. This legal Version C move leaves

(0,2,2,2,2,2,3),(0,2,2,2,2,2,3),

which is a losing position by exact backward induction.

For completeness, the entire certificate is reproducible with the following terminating recursion. A state records the multiplicities of piles of sizes 1,2,1,2,\ldots; trailing zero multiplicities are deleted. Every legal move reduces the total token count by one or two.

from functools import cache

def norm(a):
    while a and a[-1] == 0:
        a = a[:-1]
    return a

def followers(a):
    for i, count in enumerate(a):
        if count == 0:
            continue
        b = list(a)
        b[i] -= 1
        if i:
            b[i - 1] += 1
        yield norm(tuple(b))
        for j in range(i, len(a)):
            if a[j] <= (i == j):
                continue
            b = list(a)
            b[i] -= 1
            b[j] -= 1
            if i:
                b[i - 1] += 1
            if j:
                b[j - 1] += 1
            yield norm(tuple(b))

@cache
def losing(a):
    return not any(losing(b) for b in followers(a))

a = (2, 2, 2, 2, 2, 2, 3)
b = (0, 2, 2, 2, 2, 2, 3)
assert b in set(followers(a))
assert losing(b)
assert not losing(a)
assert losing.cache_info().currsize == 35528

The recursion is exact because the empty position has no followers and every other position is losing exactly when every legal follower is winning. Its 35,528 states constitute a finite exhaustive certificate.

The paper reports verification only for at most five distinct pile sizes. The counterexample has seven, satisfies every stated multiplicity condition, and disproves the unrestricted subtract-three characterization.

Source: Danai, Ellis, and Thanatipanonda, Generalizing OOOOOOB, Conjecture 3.1, https://arxiv.org/html/2605.23213 .

Both directions fail. Consider also

(a1,,a7)=(2,2,2,2,2,2,4).(a_1,\ldots,a_7)=(2,2,2,2,2,2,4).

Again every multiplicity is at least two and the position is not the excluded example. Its token count is

2(1+2+3+4+5+6)+47=701(mod3).2(1+2+3+4+5+6)+4\cdot7=70\equiv1\pmod3.

Thus the conjecture predicts a winning position, but the same exact backward-induction recursion above gives

losing(2,2,2,2,2,2,4)=true.\operatorname{losing}(2,2,2,2,2,2,4)=\mathrm{true}.

Both examples are verified by the identical recursion over a combined 71,835 states. Therefore divisibility by three is neither sufficient nor necessary for a losing position, with both failures occurring at seven distinct pile sizes beyond the authors' tested range.

0 endorsements
Shivam Patel · · edited