Skip to the story
Mike Battaglia Ongoing research All work

The Vesuvius Challenge

Beneath
Vesuvius.

I’m building tools to look for ink in scrolls too fragile to open.

A library stood beneath this mountain.

Then Vesuvius erupted.

The scrolls turned to carbon.

Now X-rays can see inside.

My part: testing whether a mark is ink or just papyrus.

Scroll to start

The challenge

Reading a scroll
without opening it.

Vesuvius buried Herculaneum and carbonized hundreds of papyrus scrolls. Unrolling them can destroy them.

The Vesuvius Challenge uses CT scans and machine learning to read them without opening them.

01 / 03
Scan

Scan the scroll.

CT imaging captures thousands of slices through the papyrus.

Unwrap

Flatten a sheet digitally.

Software traces one layer through the folds.

Read

Look for ink.

Models flag candidate marks for closer inspection.

What went wrong

The models agreed.
The marks weren’t ink.

Several models highlighted the same spots. A closer look explained why.

They were picking up fibers, seams and torn edges.

The pivot

Start with
known writing.

I needed to check the method before using it on unread scrolls.

Known text

Use a scroll already read.

Experts have published its text, so misses are easy to spot.

Surface

Pin each character to the surface.

Each gets exact coordinates anyone can inspect.

Scan

Trace it back into the scan.

That ties the mark to real papyrus, not just an image.

Controls

Look for other explanations.

The plan uses chance tests, blank regions and alternate masks.

What the checks
found.

The checks covered known text, reproducibility and false leads.

Known-text control · 51 characters

Known characters traced to the scan.

PHerc0139 linked known characters to surface coordinates and their CT volume.

Reproducible chain

PHerc1667 rebuilt end to end.

Every hash checked. The output rebuilt from pinned source and binary.

Signal retired

Render geometry explained the apparent ink.

All five PHerc1447 leads failed the structural test.

Cohors Vesuviana

How I
split the work.

I split the work across six AI roles, with Romulus coordinating.
OperatorRomulusRoutes tasks, checks results and brings me a recommendation.
01

Minerva

Strategy

Picks the next question.

02

Vulcan

Engineering

Builds tools and logs runs.

03

Veritas

Falsification

Tries to break each claim.

04

Mercury

Intelligence

Tracks outside work.

05

Plutus

Cost

Tracks compute and cost.

06

Cassandra

Risk

Flags risks early.

Research snapshot · August 29, 2026

Where things stood
on August 29.

Resolved

Five PHerc1447 leads

The renderer explained every gap. All five closed.

STRUCTURAL_EXPLAINED
Gate rejected

PHerc800 surface gate

The metric was invalid, so it failed before reaching the unread scroll.

FAIL_METRIC_INVALID
Chain reproduced

PHerc1667 canonical chain

Every hash and coverage figure reproduced.

CANONICAL_CHAIN_PASS
Under test at snapshot

M1v2 offset scan

The next test was a possible 2.3-voxel offset between the surface labels and the sheet center.

Result pending at snapshot
OFFSET TEST
The question

The failed gate raised a question: were the surface labels aligned with the sheet center?

No offset result recorded in this snapshot.