Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Every Natural Rook-Placement Count Occurs

Abstract

An alternating five-column family realizes every positive count, and a three-by-three grid realizes zero.

Theorem 1.1 (Horizontal row intervals).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.white_same_across (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Two white cells in the same row of the family lie in the same across word.

Theorem 1.2 (Side-word confinement).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.side_word_stays_in_block (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

A down word meeting the side column within a block remains between that block’s first and last rows.

Theorem 1.3 (Singleton outer words).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.tip_word_is_singleton (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

A down word through an outer tip contains only that tip.

Theorem 1.4 (Odd-row white columns).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.odd_row_columns (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Each occupied odd row consists of the central, side, and outer columns of its block.

Theorem 1.5 (Even-row white columns).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.even_row_columns (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Each occupied even row meets the central column and the side columns of the blocks incident to it.

Theorem 1.6 (Spine, side runs, and tips).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.white_iff_pattern (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

The white cells are precisely the central spine, the three-cell side runs, and the outer tips.

Theorem 1.7 (Classification of down words).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.same_down_iff (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Two white cells share a down word exactly when both are central, both lie in one side block, or they coincide.

Theorem 1.8 (At most one candidate rook per row).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.candidate_row_unique (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Candidate cells with the same row index are equal.

Theorem 1.9 (Selected side endpoint).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.candidate_side_choice (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

A candidate cell in a side block is its top endpoint before the central index and its bottom endpoint afterward.

Theorem 1.10 (Candidate across-word coverage).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.candidate_row_exists (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

For k less than r, every occupied row contains a candidate rook.

Theorem 1.11 (Candidate down-word coverage).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.candidate_down_exists (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

For k less than r, every white cell shares its down word with a candidate rook.

Theorem 1.12 (Candidate completeness).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.candidate_is_placement (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Every central index less than r gives a complete non-attacking rook placement.

Theorem 1.13 (Forced upper endpoints).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.placement_top_before_central (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

In any complete placement with a central rook in row two k, every earlier side block uses its upper endpoint.

Theorem 1.14 (Forced lower endpoints).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.placement_bottom_after_central (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

In any complete placement with a central rook in row two k, every side block from k onward uses its lower endpoint.

Theorem 1.15 (Exhaustion by central indices).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.placement_eq_candidate (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

For positive r, every complete placement equals the candidate for some k less than r.

Theorem 1.16 (Distinct central choices).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.candidate_injective (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

Equal candidates with indices less than r have equal indices.

Definition 1.17 (The zero-count grid).

Formalization. D5/S3/Combinatorics/CrosswordRookCounts.zeroWhite (✓ std3).

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

The white cells are two adjacent cells in the first row and two vertically adjacent cells in the first column.

Theorem 1.18 (No placement on the zero grid).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.zero_rook_count (✓ std3). ∎

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

The two singleton down words in the first row would force two rooks in one across word, so the count is zero.

Theorem 1.19 (Every natural number occurs).

Proof. Machine-checked in Lean as D5/S3/Combinatorics/CrosswordRookCounts.result (✓ std3). ∎

Resolves. Problems/lewis-won-crossword-rook-counts (proved) by D5/S3/Combinatorics/CrosswordRookCounts.result.

Source. Repository-derived.

Acknowledgement. Joel Brewster Lewis, Robert Won (2026). Non-attacking rook placements on crossword grids. DOI: 10.48550/arXiv.2609.03081. URL: https://arxiv.org/abs/2609.03081v1.

Commentary.

The zero grid and the positive family together realize every natural rook-placement count on square grids.

References

  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.candidate_down_exists
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.candidate_injective
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.candidate_is_placement
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.candidate_row_exists
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.candidate_row_unique
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.candidate_side_choice
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.even_row_columns
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.odd_row_columns
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.placement_bottom_after_central
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.placement_eq_candidate
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.placement_top_before_central
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.result
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.same_down_iff
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.side_word_stays_in_block
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.tip_word_is_singleton
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.white_iff_pattern
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.white_same_across
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.zeroWhite
  • Truth anchor: D5/S3/Combinatorics/CrosswordRookCounts.zero_rook_count
  • Dependency: D5/S3/Combinatorics/CrosswordRookCountsDefs