4x4 Peg Solitaire on a torus +------->-----+ | a1 b1 c1 d1 | | a2 b2 c2 d2 | V a3 b3 c3 d3 V | a4 b4 c4 d4 | +------->-----+ Claim: In 4x4 toroidal solitaire, we can begin with any peg missing and finish at any hole! Proof: All holes are equivalent as far as starting vacancies, so let's use one of the center holes b2. Starting from b2 vacant, we can label the possible finishing holes in one of six categories (0-5): 2 1 2 4 a1 b1 c1 d1 0 = complement problem 1 0 1 3 a2 b2 c2 d2 1 = one hole away, 2 = one hole away diagonally 2 1 2 4 a3 b3 c3 d3 3 = two holes away, 4 = chess knight move away 4 3 4 5 a4 b4 c4 d4 5 = two holes away diagonally For example, suppose we want a solution from a1 to d3 (type 4). We take the solution below from b2 to d3, and rotate each jump clockwise 90 degrees (can be tricky). This will yield the desired solution. Notation: When specifying a jump, we list the peg jumped over as well as the start and finish, because the jumps d2-c2-b2, and d2-a2-b2 are different, even though they start and end at the same holes. [Perhaps a better notation would be to list the direction into the finishing hole, for example L-b2 or R-b2 for the two jumps above.] Starting board position (b2 vacancy): * * * * a1 b1 c1 d1 * . * * a2 b2 c2 d2 * * * * a3 b3 c3 d3 * * * * a4 b4 c4 d4 Solution: Play the jumps: d2-a2-b2, a4-a1-a2, d4-d1-d2. This leaves us in a 12-peg board position which is square symmetric: . * * . a1 b1 c1 d1 * * * * a2 b2 c2 d2 * * * * a3 b3 c3 d3 . * * . a4 b4 c4 d4 Now play the jumps: c1-b1-a1, c4-b4-a4, this leaves us in the board position: 10 Pegs: * . . . a1 b1 c1 d1 * * * * a2 b2 c2 d2 * * * * a3 b3 c3 d3 * . . . a4 b4 c4 d4 Type 0: Complement problem We can decompose "10 Pegs" into 3-removals, A, B and C as follows: B . . . a1 b1 c1 d1 A X A A a2 b2 c2 d2 B C C C a3 b3 c3 d3 B . . . a4 b4 c4 d4 A: c3-c2-c1, a2-b2-c2, c1-c2-c3 In order to execute B, the first 2 jumps of C must be executed: b2-b3-b4, d3-c3-b3, then b3-a3-d3, a1-a4-a3, d3-a3-b3, b4-b3-b2 Type 1: a2 finish From "10 Pegs", play b2-b3-b4, d2-c2-b2, and d3-c3-b3, and decompose into block removals: A . . . a1 b1 c1 d1 X B . . a2 b2 c2 d2 A B . . a3 b3 c3 d3 A B . . a4 b4 c4 d4 Now play: A: b3-a3-d3, a1-a4-a3, d3-a3-b3, B: a2-b2-c2, b4-b3-b2, c2-b2-a2 Type 2: a1 finish From "10 Pegs", play b3-b2-b1, d2-c2-b2, and d3-c3-b3, and decompose into block removals: X B . . a1 b1 c1 d1 A B . . a2 b2 c2 d2 A B . . a3 b3 c3 d3 A . . . a4 b4 c4 d4 Now play: A: b2-a2-d2, a4-a3-a2, d2-a2-b2, B: a1-b1-c1, b3-b2-b1, c1-b1-a1 Type 3: d2 finish From "10 Pegs", decompose into: B . . . a1 b1 c1 d1 A A A X a2 b2 c2 d2 B C C C a3 b3 c3 d3 B . . . a4 b4 c4 d4 A: c3-c2-c1, a2-b2-c2, c1-c2-c3 In order to execute B, the first jump of C must be executed first. d2-d3-d4, then b3-a3-d3, a1-a4-a3, d3-a3-b3, b3-c3-d3, d4-d3-d2 Type 4: d3 finish Same as Type 3, but decompose as: B . . . a1 b1 c1 d1 B C C C a2 b2 c2 d2 A A A X a3 b3 c3 d3 B . . . a4 b4 c4 d4 (this is the same as the previous case reflected vertically) A: c2-c3-c4, a3-b3-c3, c4-c3-c2 In order to execute B, the first jump of C must be executed. d3-d2-d1, then b2-a2-d2, a4-a1-a2, d2-a2-b2, b2-c2-d2, d1-d2-d3 Type 5: d4 finish From "10 Pegs", play d2-d3-d4, (3 removal a1-a3: b3-a3-d3, a1-a2-a3, d3-a3-b3). . . . . a1 b1 c1 d1 . * * . a2 b2 c2 d2 . * * . a3 b3 c3 d3 * . . * a4 b4 c4 d4 Now play b2-b3-b4, a4-b4-c4 and finish with a standard 3-removal: . . . . a1 b1 c1 d1 . . A . a2 b2 c2 d2 . . A . a3 b3 c3 d3 . . A * a4 b4 c4 d4 A: d4-c4-b4, c2-c3-c4, b4-c4-d4