Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Bounds from a Distinguished Heap

Abstract

A distinguished heap bounds removal amounts and divisor counts. Separating moves that preserve this heap from moves that replace it gives a uniform recurrence for the Sprague–Grundy value.

Theorem 1.1 (The reference heap bounds every removal).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.removal_le_reference (✓ std3). ∎

Source. Repository-derived.

Commentary.

A removal from the reference heap is at most its size. A removal elsewhere divides that positive size and is therefore no larger.

Theorem 1.2 (An unchanged reference heap survives).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.reference_survives (✓ std3). ∎

Source. Repository-derived.

Commentary.

Changing a different heap retains the reference occurrence.

Theorem 1.3 (A positive remainder is retained).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.changed_reference (✓ std3). ∎

Source. Repository-derived.

Commentary.

A removal smaller than the changed heap leaves its positive remainder in the board.

Theorem 1.4 (Lower removals retain a reference ceiling).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.lower_reference (✓ std3). ∎

Source. Repository-derived.

Commentary.

A lower-depth removal cannot empty the changed heap. Either the original reference survives or its positive remainder is no larger.

Theorem 1.5 (Counting high-depth removals).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.dyadic_step (✓ std3). ∎

Source. Repository-derived.

Commentary.

For a nonzero parent, a nonzero high-depth follower changes its unique minimum-depth heap. A finite set of eligible removal amounts bounds the number of exceptional followers.

Theorem 1.6 (The coarse ceiling at depth zero).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.coarseBound_zero (✓ std3). ∎

Source. Repository-derived.

Commentary.

The depth-zero ceiling is H plus one.

Theorem 1.7 (Successive coarse ceilings).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.coarseBound_succ (✓ std3). ∎

Source. Repository-derived.

Commentary.

The next ceiling adds the number of positive multiples of the next depth power that fit below H, followed by one mex increment.

Theorem 1.8 (The coarse ceiling increases with depth).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.coarseBound_mono (✓ std3). ∎

Source. Repository-derived.

Commentary.

Every increment is nonnegative.

Theorem 1.9 (The divisible geometric sum).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.coarseBound_balance (✓ std3). ∎

Source. Repository-derived.

Commentary.

When the depth power divides H, the geometric sum and its last quotient add to twice H, with the depth-dependent mex increments.

Theorem 1.10 (Large odd factors suffice).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.coarseBound_le_reference (✓ std3). ∎

Source. Repository-derived.

Commentary.

If the odd factor is at least v plus one, the terminal quotient absorbs all depth-dependent increments and the ceiling is at most twice the heap.

Theorem 1.11 (The ceiling after changing the reference).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.changed_coarseBound (✓ std3). ∎

Source. Repository-derived.

Commentary.

Subtracting the smallest amount of valuation j from the reference gives the explicit changed-reference ceiling.

Theorem 1.12 (A uniform coarse Grundy bound).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.coarse_bound (✓ std3). ∎

Source. Repository-derived.

Commentary.

Induction on depth bounds lower-depth followers. Higher-depth nonzero followers can arise only on a unique minimum heap, and their removal amounts are multiples of the depth power bounded by H.

Definition 1.13 (Divisors above a dyadic threshold).

Formalization. D5/S3/Combinatorics/Games/DivisorNimBoundReference.highDivisors (✓ std3).

Source. Repository-derived.

Commentary.

Keep divisors of m that are multiples of the depth power.

Theorem 1.14 (Division injects eligible removals into quotient divisors).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.highDivisors_card_le_quotient (✓ std3). ∎

Source. Repository-derived.

Commentary.

Dividing an eligible removal by the depth power gives a divisor of the reference quotient. Multiplication by that power recovers the removal.

Theorem 1.15 (A divisor-count product bound).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.divisor_card_le (✓ std3). ∎

Source. Repository-derived.

Commentary.

Every divisor of a product is a product of divisors. The power of two has w plus one divisors, which bounds the cardinality by the product.

Theorem 1.16 (The high-removal divisor ceiling).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.highDivisors_card_le (✓ std3). ∎

Source. Repository-derived.

Commentary.

The quotient has the remaining power of two and the original odd factor, giving at most v minus k plus one times the odd-factor divisor count.

Theorem 1.17 (The depth of the distinguished heap).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.reference_valuation (✓ std3). ∎

Source. Repository-derived.

Commentary.

Multiplication by a positive odd factor leaves the valuation of the power of two unchanged.

Theorem 1.18 (Lower-depth followers preserve or change the reference).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.reference_lower (✓ std3). ∎

Source. Repository-derived.

Commentary.

An unchanged reference invokes the earlier distinguished-heap bound. A changed reference invokes the coarse ceiling for its smaller remainder.

Theorem 1.19 (The distinguished-heap recurrence step).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.reference_step (✓ std3). ∎

Source. Repository-derived.

Commentary.

Below the reference valuation, high removals divide the unchanged reference. At its valuation, high removals on the unique minimum are multiples of its depth power fitting within its size.

Theorem 1.20 (The recurrence bounds every containing board).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/Games/DivisorNimBoundReference.reference_bound (✓ std3). ∎

Source. Repository-derived.

Commentary.

Strong induction on depth combines all earlier containing-board bounds with the changed-reference ceilings. The number of other heaps is unrestricted.

References