Chapter XVIII of Charles Babbage's 1864 autobiography Passages from the Life of a Philosopher is consecrated to a topic which many present-day computer people find equally fascinating—picking locks and deciphering encrypted messages. Babbage concludes the chapter with a discussion of a word puzzle called “squaring words”. For example, to square the word “dean”, we write the word vertically and horizontally:
The goal is to find English words to fill in the empty spaces so that the resulting grid reads the same across and down, for example:
Babbage then observes,
The various ranks of the church are easily squared; but it is stated, I know not on what authority, that no one has yet succeeded in squaring the word bishop.
Who can resist such a challenge?
|Spoiler warning! The balance of this document presents a contemporary computer-based attempt to solve Babbage's puzzle. If you'd like to have a go at solving it yourself, don't read further until you've made your own attempt. Otherwise, scroll down pass the “spoiler guard” bars to see the results.|
Armed with the product of 130 years of technological evolution of Babbage's Analytical Engine and an on-line spelling checker dictionary of more than a quarter million words, it's a lot easier to attack a puzzle like this than in Babbage's day. I wrote a small C program to search for solutions, tested it on “dean”, and then set it to work on “bishop”. In a minute or so, it printed a list of ways to square “bishop”—more than two thousand different ways, as a matter of fact.
The spelling dictionary I used includes proper names and many obsolete and/or extremely obscure words, and most of the solutions found included one or more such words. Babbage didn't prescribe precise rules for the puzzle, so I assumed the following:
This still leaves a number of solutions, some of which are given below. Brief definitions are given in italics for uncommon words.
Replacing the word “pastel” in the last line by “pasted” or “pastes” also yields solutions to the puzzle. Another solution is:
|o||s||t||e||a||l||of or pertaining to bone|
|p||e||s||t||l||e||for grinding in mortar|
and yet another:
|i||n||h||a||l||e||Nope, never did.|
The relentless accretion of words into the English language has created many new solutions which would have seemed gibberish in the mid-nineteenth century. My favourite is:
|s||n||o||b||o||l||programming language for string processing|
|o||r||o||i||d||e||alloy of copper and zinc|
|p||e||l||t||e||d||with rocks, posers of pesky puzzles|
The solutions to the puzzle of squaring the word “bishop” were found with a small C program used in conjunction with a large spelling checker dictionary. You can download the program as a zipped archive from the link below. As with any C program, it may require some tweaking to run with your compiler and operating system; the program is in the public domain and you're free to use it in any way you wish, but you're entirely on your own—no assistance of any kind is available. In addition to the program you'll need a spelling dictionary in standard Unix /usr/dict/words form: an ASCII text file with one word per line. If your system doesn't have such a dictionary, you can download the Moby Words dictionary collection from the archive at the University of Sheffield. Get the file mwords.tar.Z which is about 4 megabytes, uncompress, un-tar, and you'll find a collection of dictionaries. The list of 354,984 single words is an excellent one to use with the squaring words program. If you are looking for more common words in the square, try the list of 113,809 words from the Scrabble® dictionary, or the list of 74,550 common dictionary words. Happy hunting!
Click on titles to order books on-line from