⏱️ Lectura: 10 min
By 1899, the journal Notes and Queries had already declared the Cyphral Distich unsolvable, a cipher of just 64 numbers published in 1653 at the end of a Scottish philosophical book. It resisted substitution, frequency analysis, and homophonic decoding for 373 years. In 2026, Claude Fable 5.1 solved it in 44 minutes, without anyone giving it the clue every human cryptographer had overlooked.
📑 En este artículo
The case, documented by the team at vals.ai, is more than a historical curiosity. It shows how an agent given time and autonomy to test hypotheses can find a solution that generations of experts missed, because they were looking for the key outside the text when it was inside it all along.
TL;DR
- Claude Fable 5.1 solved the Cyphral Distich, a 64-number cipher unsolved since 1653.
- The process took 44 minutes and 176,000 tokens, with no human intervention.
- The key was not an external cipher alphabet: it was Urquhart’s own book.
- Each number points to a word within one of the text’s 32 Proquiritations.
- The hidden message wishes King Charles II a long life, consistent with Urquhart’s royalism.
- Using the same method, Fable 5.1 decoded the 285-number Cyphral Octastich in The Jewel (1652).
- The cipher had been listed by researcher Klaus Schmeh among unsolved historical cryptograms.
- Nine letters of the Octastich remain unverified due to lack of access to a physical copy of the book.
Introduction
The Cyphral Distich is a cryptogram of 64 numbers, grouped into two lines of 32, that Scottish writer Sir Thomas Urquhart printed at the end of his book Logopandecteision (1653). For more than three centuries, no one managed to translate it into readable text. The case made it onto serious historical cryptography lists, including the one compiled by German researcher Klaus Schmeh on the most cited unsolved cryptograms.
What matters here for anyone working with artificial intelligence isn’t just the result. It’s the process: a model capable of reasoning over an extended period, testing several hypotheses and discarding them, until it found the correct reading of a text it had access to from the start.
What Happened With the Cyphral Distich
The vals.ai team gave Claude Fable 5.1 an open-ended task: solve the Cyphral Distich without any hints beyond what already existed in the original book. The input was just these 64 numbers:
5.3.27.38.32.14.21.8.66.8.70.39.5.9.12.18.2.3.56.5.1.7.3.2.13.19.3.25.9.3.16.6.
25.15.13.6.11.20.5.1.2.12.1.20.20.49.20.20.35.33.4.6.8.35.5.33.5.5.18.10.3.11.32.42.
Before reaching the correct answer, the model covered the same ground human cryptographers had explored: direct number-to-letter mappings, frequency tables compared against standard English, and homophonic cipher variants where a single number could represent different letters depending on context. None of those approaches produce readable text with these 64 numbers, and that’s precisely why the problem stayed open for so long: everyone assumed the key came from outside the text.
Fable 5.1 took 44 minutes and 176,000 tokens to reach the solution, with no intervention in the process.
Context and History
Thomas Urquhart was a 17th-century Scottish writer and translator, known for translating Rabelais into English and for inventing a fictional universal language in his book Logopandecteision. He was also a committed royalist, openly supporting the Stuart monarchy during the English Civil War.
The cipher appeared printed right after 32 sections of the book called Proquiritations. Urquhart, in fact, pauses to underline that number, writing that “there is no number like that of thirty-two to be chosen.” The poem accompanying the cipher promises that the honest reader will find in it “the wishes of his own heart, and the mind of the author.”
The problem reached Notes and Queries in 1899 as an open puzzle, resurfaced in 20th-century cryptography literature, and ended up on Klaus Schmeh’s list of the most resistant historical cryptograms. Those who attempted it searched for an external substitution alphabet. No one connected the number 32 in the cipher to the 32 Proquiritations right in front of them.
Technical Details and Performance
The key Fable 5.1 found was not an external substitution alphabet, as every prior attempt had assumed. It was the book itself. The rule is this: for the number at position i in a line of the cipher, go to Proquiritation number i, use that number as a word index within that section, and take the first letter of that word.
Applying that rule to the 64 numbers, the hidden text is:
O GOD UPHOLD KING CHARLS THE SECOND AND
MAKE HIM THE SUPREME RULER OF THIS LAND
The result is self-verifying: each line has exactly 32 letters, matching the number of Proquiritations, and both lines rhyme (and / land), just as the introductory poem promised. It also fits Urquhart’s biography: hiding a prayer for Charles II is consistent with a convinced royalist.
Using the same logic, Fable 5.1 tackled a second Urquhart cryptogram: the Cyphral Octastich, published in The Jewel (1652), with 285 numbers instead of 64. There the unit of reference changes: instead of 32 paragraphs, the book has 284 numbered pages, and each number at position k points to a word on page k of the book.
| Cipher | Source Book | Number Count | Reference Unit | Status |
|---|---|---|---|---|
| Cyphral Distich | Logopandecteision (1653) | 64 | 32 Proquiritations | Fully solved |
| Cyphral Octastich | The Jewel (1652) | 285 | 284 numbered pages | Solved except for 9 letters |
def first_letter(word_index, section_text):
words = section_text.split()
return words[word_index - 1][0]
# Minimal example with a test section
section_1 = "it is my deepest wish to serve the crown"
number = 3
print(first_letter(number, section_1)) # -> "d" (from "deepest")
This function sums up the core idea: the number doesn’t encode a letter directly, it points to a word within a text that already exists, and the first letter is extracted from there.
How to Try It Yourself
Reproducing the full finding requires the original text of Logopandecteision, which isn’t included here for length reasons. But the reasoning pattern (testing index rules against a source text before assuming an external alphabet) can be applied to any historical cipher with a similar structure. This script takes the actual 64 numbers of the Cyphral Distich and applies the rule, leaving the get_section function as the only piece that needs to be filled in with the book’s actual text:
line_1_numbers = [5,3,27,38,32,14,21,8,66,8,70,39,5,9,12,18,2,3,56,5,1,7,3,2,13,19,3,25,9,3,16,6]
line_2_numbers = [25,15,13,6,11,20,5,1,2,12,1,20,20,49,20,20,35,33,4,6,8,35,5,33,5,5,18,10,3,11,32,42]
def get_section(i):
# Replace with the actual text of Proquiritation i
raise NotImplementedError("Load the text of Logopandecteision, section i")
def decode(numbers):
letters = []
for i, word_index in enumerate(numbers, start=1):
section = get_section(i)
word = section.split()[word_index - 1]
letters.append(word[0].upper())
return "".join(letters)
# decode(line_1_numbers) should yield "OGODUPHOLDKINGCHARLSTHESECONDAND"
To experiment with agents that reason autonomously during long tasks, like Fable 5.1 did during those 44 minutes, you can use the Claude API with extended tool-use turns:
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-fable-5-1",
max_tokens=8192,
messages=[{
"role": "user",
"content": "Analyze this cryptogram and test different key "
"hypotheses before ruling out the simplest one: the numbers might "
"index words within the very text that accompanies them."
}]
)
print(response.content[0].text)
flowchart TD
A["Number at position i"] --> B["Proquiritation i of the book"]
B --> C["Word number N in that section"]
C --> D["First letter of the word"]
D --> E["Letter i of the hidden message"]
💡 Tip: before assuming an external substitution alphabet in a historical cipher, check whether the text accompanying the cryptogram itself could be the key: that’s exactly what no one tried with the Cyphral Distich for 373 years.
Impact and Analysis
The result matters for two distinct reasons. The first is historical: for 373 years, dozens of people dedicated to cryptography had access to the same 64 numbers and the same book, and none of them connected the detail Urquhart left in plain sight: the emphasis on the number 32 and the word “wishes” in the introductory poem.
The second reason has to do with how these models get evaluated. Traditional benchmarks measure tasks with closed-form answers and immediate verification. This case is different: there’s no training dataset with the answer, no automatic metric, and the task demands sustaining a chain of hypotheses for nearly 45 minutes of continuous reasoning before arriving at anything verifiable.
⚠️ Heads up: the Cyphral Octastich wasn’t fully solved. Nine letters out of 275 readable positions don’t fit any tested hypothesis (page shift, misprinted number, transcription error), and confirming them requires a physical copy of the 1652 book that isn’t currently available in any digitized library reviewed.
That nuance matters: the vals.ai report itself clarifies that 231 of 275 readable positions in the Octastich are exact matches on first appearance in the text, and that the remaining 44 have identifiable explanations (hyphenated words at the start of a page, compound words, an “&” symbol). It’s not a perfect solution, but it’s not a statistical coincidence either.
What’s Next
One step remains that artificial intelligence can’t resolve on its own: someone needs to review a physical copy of the 1652 edition of The Jewel to confirm the page shift that appears starting at position 159 of the Octastich, and to try to read the nine letters that currently don’t produce a readable result in English. The research team has already ruled out several hypotheses (page shift, missing letter, misprinted number, dictionary network) without success.
For the development ecosystem, the case leaves a concrete lesson: letting an agent run for tens of minutes on an open problem, with room to fully test and discard hypotheses, can produce results a single-pass workflow can’t reach. Other historical cryptograms with a similar structure (short message, unknown key, source text available) are natural candidates for the same approach.
Try it yourself: take the 64 numbers of the Cyphral Distich from this article and ask a model with extended reasoning to look for the key within the text itself before looking outside it.
📖 Summary on Telegram: View summary
Frequently Asked Questions
What is the Cyphral Distich?
It’s a cryptogram of 64 numbers, in two lines of 32, that Thomas Urquhart printed at the end of his book Logopandecteision in 1653. It remained unsolved for 373 years.
Who was Thomas Urquhart?
A 17th-century Scottish writer and translator, known for translating Rabelais into English and for being a committed royalist during the English Civil War.
How did Claude Fable 5.1 find the key?
It noticed the book has 32 sections called Proquiritations, the same number as the numbers per line in the cipher, and that the introductory poem mentions “wishes.” From there it tested the rule of using each number as a word index within the corresponding section.
What is the Cyphral Octastich?
A second Urquhart cryptogram, published in The Jewel (1652), with 285 numbers instead of 64. It was solved with the same method, using pages of the book instead of sections, though nine letters remain unconfirmed.
Does this mean AI can solve any historical cipher?
Not necessarily. This case worked because the key was within the same published text and because the model could sustain reasoning over an extended period without cutting the process short. Ciphers with lost external keys remain a different kind of problem.
Where can I read the full analysis?
The original report is published by the vals.ai team, with full details on both ciphers and the discarded hypotheses.
References
- vals.ai: original report on how Claude Fable 5.1 solved the Cyphral Distich and the Cyphral Octastich.
- Wikipedia: biography of Sir Thomas Urquhart, author of Logopandecteision and The Jewel.
- Wikipedia: definition and historical context of cryptograms.
- Anthropic: developer of the Claude Fable 5.1 model used in this experiment.
📱 Enjoying this content? Follow @programacion on Telegram for daily tech content in Spanish: quick summaries, fresh content every day. @programacion
Imagen destacada: Foto de Celine Nadon en Unsplash
0 Comments