Combinatorial game theory Created 2026-10-20 Updated 2026-11-05
Combinatorial game theory studies positions in alternating-move games with fully specified legal moves, usually perfect information and no chance. A position can be defined recursively by the positions available to each player. Under the normal-play convention, a player with no legal move loses.
An impartial game gives both players the same moves; Nim is the standard example. A partizan game allows different moves for Left and Right. The disjunctive sum lets a player move in exactly one component on each turn, making it possible to study how game positions combine algebraically. Infinite play or misère play requires additional conventions; normal-play results do not automatically transfer.
Euclid game Created 2026-10-20 Updated 2026-11-05
A Euclid game is an impartial game based on subtraction steps of the Euclidean algorithm.[ref]
A Game Based on the Euclidean Algorithm and a Winning Strategy for It by A. J. Cole and A. J. T. Davie. Original paper introducing Euclid; terminal convention is specified explicitly below
Here use the following normal-play convention: a position is an ordered pair ; if , remove a positive multiple from and reorder. A position with has no legal move and is losing. Thus moving to a zero coordinate wins; variants that instead stop at equal positive coordinates require a different endpoint convention.The sum of the coordinates strictly decreases, so every play terminates. If divides , subtract and win immediately. If , there is only one move, to , so the position has the opposite winning status from that successor.
If with and , two legal choices leave or . The latter has exactly one move, to the former, so exactly one of these two successors is losing. Choose it. For example, is losing because its only move reaches , where the opponent takes the whole larger coordinate. From , subtract to leave that losing position. These cases give a recursive strategy without exploring every subtraction amount.
Fibonacci Nim Created 2026-10-20 Updated 2026-11-05
Fibonacci Nim is a normal play impartial game on one heap. Start with counters. The first move removes between and counters; thereafter a move removes at least one and at most twice the number just removed by the opponent, without exceeding the remaining heap. Taking the last counter wins.
For a position with counters and permitted maximum , let be the smallest Fibonacci number appearing in the Zeckendorf representation of , using the sequence . The position is losing exactly when . If , removing is a winning move. When this does not empty the heap, the next smallest summand exceeds , so the opponent's new limit is too small. Conversely, the Zeckendorf subtraction lemma gives whenever , so every legal move from a losing position leaves a winning one.[ref]
Fibonacci Nim by Michael J. Whinihan. Pages 9–12: rules, least-summand criterion and proof
Initially , so the losing initial heap sizes are precisely the Fibonacci numbers. For example, : take , leaving the opponent counters and a limit of , a losing position. The move limit is part of the state; heap size alone does not determine later positions.
Impartial normal-play game 2026-10-20
An impartial game played under the normal-play convention.
Losing position Created 2026-10-20 Updated 2026-11-05
In a finite impartial game with the normal-play convention and no draws, a losing position is one from which the player whose turn it is cannot force a win against best play. It is also called a P-position, since the previous player wins.
A terminal position is losing. Recursively, a position is winning if it has at least one move to a losing position, and losing if every legal move goes to a winning position. Induction on the finite remaining game tree proves this classification. For a single Nim heap, only the empty heap is losing. Infinite plays and misère play need separate conventions and can change the base case.
Minimum excludant Created 2026-10-20 Updated 2026-11-05
The minimum excludant of a finite set of nonnegative integers is the smallest nonnegative integer absent from :For example, , while and . It always exists and is at most : the candidates cannot all belong to a set of cardinality .
In Sprague-Grundy theory, the Grundy number of a position in a finite acyclic impartial game is the mex of the values of its legal successor positions. The minimum excludant therefore converts the available moves into a reusable numerical description of a game position.
Nim 2026-10-20
An impartial game played with heaps of counters: a move removes a positive number of counters from exactly one heap. Under the normal-play convention, a position is losing exactly when the bitwise exclusive or of its heap sizes is zero.
Normal-play convention 2026-10-20
The convention that a player unable to move loses. In a finite impartial game without draws, a position is winning exactly when it has a move to a losing position.
Partizan game Created 2026-10-20 Updated 2026-11-05
A partizan game gives the two players, traditionally Left and Right, potentially different legal moves from the same position. Its recursive notation is , listing Left's and Right's options. An impartial game is the special case where those option sets agree at every reachable position.
For example lets Left move to zero while Right has no move. The game reverses the roles, and their disjunctive sum is zero in game value: responding in the other component leaves the previous player winning. Such comparisons concern behavior in sums, rather than simply counting moves available to one player.
Sprague-Grundy theorem 2026-10-20
Every finite acyclic impartial game under the normal-play convention has a Grundy number. The Grundy number of a sum of independent games is the bitwise exclusive or of their individual Grundy numbers, so the sum is losing exactly when that value is zero.
Sprague-Grundy theory 2026-10-20
Sprague-Grundy theory studies finite acyclic impartial games under the normal-play convention by assigning each position a Grundy number. The assignment recursively takes the minimum excludant of the values of all legal followers. The Sprague-Grundy theorem then reduces a disjunctive sum of games to the bitwise exclusive or of its component values. This framework explains both why a zero value is losing and how independently understood games can be combined without exploring the entire product of their state spaces.
Star game 2026-10-20
The impartial game , so either player can move to zero. It is equivalent to a Nim heap of size one. It is incomparable with zero, and under the disjunctive sum of games.
Wythoff's game 2026-11-05
Wythoff's game is an impartial game played with two finite heaps. A move removes any positive number of objects from one heap, or removes the same positive number from both heaps. Under the normal-play convention, the player with no legal move loses.
For example, is losing, while with is winning because one move empties both heaps. The position is losing: its possible moves lead to , , or , each of which can be emptied by the next player. This directly checks a first nontrivial losing position.
XOR convolution 2026-10-20
For arrays indexed by -bit nonnegative integers, their XOR convolution is , where is bitwise exclusive or. If entries count choices of Grundy numbers, its repeated application counts sums of impartial games with a specified combined Grundy number. The Hadamard transform turns this operation into pointwise multiplication.