mscroggs.co.uk
mscroggs.co.uk

subscribe

Blog

 2025-03-17 
This is an article that I wrote for Chalkdust issue 21.
For ten years now, I've been setting the Chalkdust crossnumber. Over this time, I've developed a lot of tricks and tools for setting good puzzles.
Although puzzles involving words in grids of squares have been around since at least the 1800s, the first crossword (or word-cross as the author called it) puzzle was published in the New York World newspaper in 1913. Since this, crosswords have become a staple in newspapers and magazines around the world.
In the UK, cryptic crosswords were invented and grew in popularity in the 1900s and now appear in most newspapers and magazines. The cryptic crossword in the Listener magazine became infamous as the hardest such puzzle. the Listener ceased publication in 1991, but the Listener crossword still lives on and is now published on Saturdays in the Times newspaper.
Fun's word-cross puzzle, written by Arthur Wynne in 1913. Each clue gives the position of the first and last letters where the entry should be written. The puzzle features well-known words such as 'neif' and 'nard', and the solution includes 'dove' twice.
In early 2015, we were discussing ideas for regular content in our brand new maths magazine, and wanted to include a more mathematical crossword-style puzzle. Like Venus emerging from the shell, the crossnumber was born.
Of course, we didn't invent the crossnumber puzzle: the first known crossnumber puzzle was written by Henry Dudeney and published by Strand Magazine in 1926; four times a year, the Listener features a numerical puzzle; and the UKMT (United Kingdom Mathematics Trust) have included a crossnumber as part of their team challenge for many years. There are also plenty of other publications that include crossnumbers, including the very enjoyable Crossnumbers Quarterly, that's been publishing collections of the puzzles four times a year since 2016. But perhaps we'll be mentioned in a footnote in a book about the history of puzzles.
But anyway, we'd decided we needed a crossnumber, so I needed to write one...

Making a grid

The first step when creating a puzzle is to create the grid. Like many publications, we restrict ourselves to using grids of squares (for the main crossnumber at least---we allow more freedom in other puzzles that we feature).
Grids with order 2 (left) and order 4 (right) rotational symmetry.
Typically, a publication will impose some restrictions on the placement of the black squares in its puzzle. The most popular restrictions are:
Grids with one, two, and four lines of symmetry.
There are two forms of symmetry that are used in crossword grids: rotational symmetry and reflectional symmetry. Both order 2 (rotate the grid 180° and it looks the same) and order 4 (rotate the grid 90° and it looks the same) rotational symmetry are commonly used in crossword grids, with order 2 rotational symmetry often being the minimal allowable amount of symmetry. You'll want to be careful when making a grid with order 4 rotational symmetry, as it's very easy to make your grid into an accidental swastika.
The grid for crossnumber #14 experimented with translational symmetry.
With a few notable exceptions, the grids for the Chalkdust crossnumber have some form of symmetry, and also follow the other two restrictions. We do, however, allow some flexibility on these restrictions if it allows us to use an interesting grid. For crossnumber #14 (shown on the left), we experimented with translational symmetry, leading to a grid that was not simply connected and with a greater than usual proportion of black squares. For crossnumbers #11 and #6, the grids had a nice property: rotating the grid leads to the same pattern of squares with the colours inverted. Once again we had to break the requirements on connectedness and the proportion of black squares to do this.
The grid for crossnumber #11. Rotating this grid 90° leads to the same grid with inverted colours. This grid also has order 2 rotational symmetry.
The grid for crossnumber #6. Rotating this grid 180° leads to the same grid with inverted colours.
The grid for crossnumber #17 was not symmetric, and instead included all 18 pentominoes in black.
For crossnumber #17, we skipped imposing symmetry entirely and instead formed all 18 pentominoes from the black squares in the grid. This really pleased me, as there were clues in the puzzle related to the number of pentominoes and the number of black squares in the grid.
For American style crosswords, there's an additional restriction that is imposed: all white squares must be checked. A white square is called 'checked' if it is part of an across entry and a down entry---and so you can fill that square in by solving one of two different clues. Due to this, American crosswords will have large rectangles composed entirely of white squares and never have lines of alternating black and white squares as commonly seen in British puzzles.
A valid American crossword (if two letter entries were allowed
A valid British crossword that is not a valid American crossword
When writing a crossword, it is common to pick the words to include while making the grid, as trying to find valid words or phrases to fill a predetermined grid is a challenging task. (Thankfully, there's software out there that can help you make grids from a list of words.) For crossnumbers, filling the grid is a much easier task as any string of digits not starting with a zero is a valid entry. This ease of filling the grid is what allowed us to use the interesting restriction-breaking grids mentioned in this section.
For crosswords, it is also common to disallow the use of two-letter words. For the crossnumber, removing two-digit numbers would remove the potential for a lot of fun number puzzles, so we don't impose this restriction here. We allow two-letter words in the Chalkdust cryptic too, as they can be really useful when trying to make a grid with our additional restriction that the majority of the included words should be related to maths.

Setting the clues

Once I've made the grid for a crossnumber, the next task is to write the clues.
Often, I start this task by picking a fun mathematical or logic puzzle to include in the clues. Sometimes, this is a single clue, such as this one from crossnumber #1:

Down

6. This number's first digit tells you how many 0s are in this number, the second digit how many 1s, the third digit how many 2s, and so on. (10)
Or this clue from crossnumber #5:

Across

9. A number \(a\) such that the equation \(3x^2+ax+75\) has a repeated root. (2)
Other times, this could be a set of clues that refer to each other and reveal enough information to work out what one of the entries should be, such as these clues from crossnumber #10:

Across

13. 49A reversed. (3)
37. The difference between 49A and 13A. (3)
47. 37A reversed. (3)
48. The sum of 47A and 37A. (4)
49. Each digit of this number (except the first) is (strictly) less than the previous digit. (3)
Once I've included a few sets of clues like this, it's time to write the rest of the clues. As any crossnumber solvers will have noticed, my favourite type of clue to add from this point on is a clue that refers to another entry.
More recently, I've begun adding an additional mechanic to each crossnumber. This started in crossnumber #13, when all the clues involved two conditions which were joined by an and, or, xor, nand, nor or xnor connective. Mechanics in later puzzles have included the clues being given in a random order without clue numbers (#14), some clues being false (#16), and each clue being satisfied by both the entry and the entry reversed (#19). I really hope that you enjoy the 'fun' mechanic I used in this issue's puzzle.
Around the same time as I started playing with additional mechanics, my taste in puzzles shifted. Older crossnumbers had been quite computational, and often needed some programming for a few of the clues, but more recently I have become a greater fan of logic puzzles and number puzzles that can be solved by hand. To reflect the change in the type of puzzle I was setting we added the phrase 'but no programming should be necessary to solve the puzzle' to the instructions, starting with crossnumber #14.

Thinking like a mega-pedant

One of the most important things to watch out from when writing and checking clues is accidental ambiguity due to writing maths in words.
For example, the clue 'A factor of 6 more than 2D' could be read in two ways: this could be asking the solver to add 6 to 2D, then find a factor of the result; or it could be asking the solver to add 1, 2, 3, or 6 (ie a factor of 6) to 2D.
As long as I spot clues like this, it can usually be fixed with some rewording. In this example, I'd rewrite the clues as either '2D plus a factor of 6.' or 'This number is a factor of the sum of 6 and 2D.'
In my time setting the crossnumber, I've got a lot better at spotting ambiguity in clues, and do this by reading through the clues and trying to be a mega-pedant and intentionally misinterpret them. It can be really helpful to get someone else to help with this check though, as remembering what you intended to mean when writing a clue can make it hard to read them critically.

Checking uniqueness

Perhaps the most difficult part of setting a crossnumber is checking that there is exactly one solution to the completed puzzle.
To help with this task, I've written a load of Python code to help me find all the solutions to the puzzle. I run this a lot while writing clues to make sure there's no area of the puzzle where I've left multiple options for a digit. I intentionally use a lot of brute force in this code so that it's really good at catching situations where there are multiple answers to a puzzle where I only found one solution by hand.
Once I've got all the clues and my code says the solution is unique, I do a full solve of the puzzle by hand. This is both to confirm that the code's conclusion was not due to a bug, and to check that the difficulty of the puzzle is reasonable.
Following this checking, and a little proofreading, the puzzle is ready for publishing. Then the fun part begins, as I get to chill with a nice cup of tea and wait for people to submit their answers.
×8      ×1                  
(Click on one of these icons to react to this blog post)

You might also enjoy...

Comments

Comments in green were written by me. Comments in blue were not written by me.
 Add a Comment 


I will only use your email address to reply to your comment (if a reply is needed).

Allowed HTML tags: <br> <a> <small> <b> <i> <s> <sup> <sub> <u> <spoiler> <ul> <ol> <li> <logo>
To prove you are not a spam bot, please type "bisect" in the box below (case sensitive):

Archive

Show me a random blog post
 2026 

May 2026

World Cup stickers 2026

Apr 2026

A new puzzle every day
Mixing Wordle with other games

Feb 2026

Christmas (2025) is over
 2025 

Dec 2025

Christmas card 2025

Nov 2025

Christmas (2025) is coming!

Sep 2025

The partridge puzzle

Aug 2025

TMiP 2025 puzzle hunt

Jun 2025

A nonogram alphabet

Mar 2025

How to write a crossnumber

Jan 2025

Christmas (2024) is over
Friendly squares
 2024 

Dec 2024

A regular expression Christmas puzzle
Christmas card 2024

Nov 2024

Christmas (2024) is coming!

Feb 2024

Zines, pt. 2

Jan 2024

Christmas (2023) is over
 2023 
▼ show ▼
 2022 
▼ show ▼
 2021 
▼ show ▼
 2020 
▼ show ▼
 2019 
▼ show ▼
 2018 
▼ show ▼
 2017 
▼ show ▼
 2016 
▼ show ▼
 2015 
▼ show ▼
 2014 
▼ show ▼
 2013 
▼ show ▼
 2012 
▼ show ▼

Tags

guest posts noughts and crosses wordle golden ratio pi approximation day oeis world cup tmip binary weak imposition big internet math-off fonts preconditioning polynomials pythagoras puzzles javascript numerical analysis nine men's morris gaussian elimination tetris numbers hannah fry latex bempp pokémon wordle golden spiral matrix of minors logic data error bars pi coins phd graphs raspberry pi inverse matrices interpolation reddit rhombicuboctahedron data visualisation books game of life speed chalkdust magazine errors tennis plastic ratio realhats computational complexity trigonometry menace live stream correlation talking maths in public edinburgh martin gardner football finite element method mathsteroids folding paper asteroids frobel geometry manchester science festival anscombe's quartet arithmetic european cup gerry anderson ternary logs probability php video games gather town royal institution sound sport quadrilaterals final fantasy databet map projections propositional calculus recursion harriss spiral braiding manchester misleading statistics bots national lottery weather station approximation dates triangles folding tube maps pac-man bodmas coventry kenilworth pokémon squares accuracy christmas card chebyshev logo standard deviation curvature electromagnetic field alphabets determinants estimation crossnumbers crosswords runge's phenomenon hyperbolic surfaces convergence rugby pizza cutting 24 hour maths mathslogicbot geogebra games flexagons dataset light people maths inline code warwick hexapawn platonic solids chess dinosaurs kings pascal's triangle matrices london underground matt parker game show probability draughts craft fractals cambridge matrix multiplication newcastle royal baby mean sorting captain scarlet friendly squares advent calendar exponential growth boundary element methods a gamut of games machine learning graph theory programming christmas hats signorini conditions datasaurus dozen reuleaux polygons london statistics matrix of cofactors go youtube sobolev spaces thirteen wave scattering rust mathsjam the aperiodical regular expressions crochet news turtles nonograms radio 4 countdown palindromes fence posts python stirling numbers ucl dragon curves wool crossnumber zines bluesky cross stitch finite group arrangement puzzles bubble bobble partridge puzzle simultaneous equations stickers

Archive

Show me a random blog post
▼ show ▼
© Matthew Scroggs 2012–2026