A move adds a 1 or shrinks the product
DisprovedIMO2026P1.move_ones_or_prodPart (a) of the source, both bullets. A move never destroys a , and it either creates one or strictly shrinks the product of the board.
The two cases are governed by the gcd. When the move replaces by and , so a appears — the source says this "permanently increases the number of 1's". When the pair is replaced by a pair whose product is , strictly less than .
Together these give the monovariant behind termination: the count of s can rise at most as far as the board's size, and the product is a positive integer that cannot fall forever.
import Definitions.Def_IMO2026P1_Blackboard import Mathlib.Tactic
open IMO2026P1
theorem IMO2026P1.move_ones_or_prod {s t : Board} (h : Move s t) :
s.count 1 ≤ t.count 1 ∧ (s.count 1 < t.count 1 ∨ t.prod < s.prod) := by sorryRead-back
What the Lean code literally says, in plain math · claude-opus-5
Read-backs
Throughout, a board is a finite multiset of natural numbers (repetitions allowed and counted, order irrelevant). For a board and a value , denotes the multiplicity of in , the product of all entries of (with repetition), and the number of entries of (with repetition). For , denotes the exponent of in the prime factorization of ; this is whenever is not prime, and for every when or .
Three auxiliary notions are used and are expanded inline below wherever they occur; they are recorded here once.
One move. (" is obtained from by one move") means: there exist natural numbers and with
where is with exactly one copy of deleted, and such that
That is: delete one copy of and one copy of from and insert the two values and . The division is truncated natural-number division. Note that and are values: the condition permits when that value occurs at least twice in , and it forces to contain at least two entries greater than (counted with multiplicity). The two inserted values are not required to exceed . Every move preserves the number of entries: .
Reachability. means is obtained from by a finite (possibly empty) chain of moves — the reflexive–transitive closure of . In particular always holds.
Terminal. is terminal means there is no board with . Since the target board in the definition of a move is produced by an explicit equation, this is the same as saying no admissible pair can be selected at all: does not contain two entries (with multiplicity) both greater than .
Big part. is the sub-multiset of consisting of exactly those entries that are greater than , with their multiplicities.
Exponent gcd. For and a board , is obtained by replacing each entry of by and folding the resulting multiset of natural numbers with , starting from the value ; since , this is the greatest common divisor of the numbers over all entries of , with . Entries equal to or contribute the value and therefore do not change the result. If is not prime then for every and for every board .
IMO2026P1.move_ones_or_prod
For all boards and (both implicit arguments, i.e. universally quantified over all finite multisets of natural numbers), if is obtained from by one move — that is, if there exist with , , , and
— then both of the following hold:
- : the multiplicity of the value in is at least its multiplicity in ;
- : either that multiplicity strictly increases, or the product of all entries of is strictly smaller than the product of all entries of .
Conditionality. The statement is conditional on a single move existing and on being one of its outcomes: the hypothesis is the move relation between the two given boards. For any pair that is not related by a move — in particular for every terminal , for the empty board, and for every board none of whose entries exceeds — the statement asserts nothing whatsoever. Reachability (multi-step) does not appear; nothing is claimed about chains of two or more moves.
Counts and products. Conjunct 1 states that cannot decrease across a move; no upper bound on its increase is given. The disjunction in conjunct 2 is the ordinary inclusive "or": both disjuncts are permitted to hold simultaneously, and the statement does not say which one holds in any particular case. The comparisons are strict; the comparison in conjunct 1 is non-strict. Products are taken in , so can never hold when ; consequently, for a board containing an entry (which does not prevent a move, since is never chosen as or ), the conclusion forces the first disjunct, . The product of the empty multiset is (the empty product), but the hypothesis forces and , so neither board is empty under the hypothesis and this convention is never invoked.
Degenerate cases. Empty board, a board all of whose entries are , a board with at most one entry greater than , and any already-terminal board: in each of these no move exists, so the hypothesis fails and the statement is vacuous for them. The hypotheses are jointly satisfiable (e.g. , ), so the statement is not vacuous overall.
Not asserted. Nothing about versus ; nothing about the multiplicity of or of any value other than ; no claim that in general (only the disjunct); no claim that divides ; no claim that the process terminates, that moves can be iterated, or that either quantity is monotone along chains of moves; no claim about the entries of (e.g. that they are positive, or greater than ); no claim that are uniquely determined or that is unique for given .