<style>button,.story-clue{pointer-events:none}button{opacity:.55}.story-clue{pointer-events:auto}.panel-select{opacity:1}#app-status{display:none}</style>
A MATHEMATICAL ADVENTURE FOR CURIOUS MINDS

A small why. A big adventure.

Follow the story. Try a proof. Let curiosity choose how deep you go.

No account. No API key. Just curiosity.

Two ways in. One table between them.

I'd rather not fight math today

Walk in through the manga: seventeen chapters, sixty-four pocket pebbles, zero required formulas. The Lean source stays behind glass until you ask for it.

Straight to the mathematics

Begin at the proof map — thousands of named theorems — then climb the full ladder from clock inverses to R = T. The story keeps telling itself beside you; it will keep you honest.

Made for company: one reader who loves math and one who does not — one sofa. Whatever each of you finds carries over to the tea salon.

Start with “I don’t know yet.”

Seventeen chapters, one extraordinary argument. One small discovery is enough for today.

17 chapters · LeanOriginal source ↗

Pip’s rule: mistakes are clues. Every chapter is open, and every question allows another try.

Lower the level. Empty the room. Close the case.

Choose your depthProof terms and exact dependencies.
Explore the whole proof29,511 theorems · original statements · dependencies

Search the local catalogue in English or Japanese. Major landmarks have Japanese titles. Open the full original proof on GitHub for the complete context.

Your discovery in this chapter

Distinguish a checked theorem, an upstream verification report, and a helpful manga explanation.

#guard_msgs
Check that a command’s diagnostics match the expected text during elaboration.
Kernel vs reader
Lean checks formal proof terms; this app checks excerpt hashes and line mappings and displays interpretations.
Where the metaphor ends

The mechanical judge represents Lean’s checker. This reader imports a pinned source snapshot; it has not rebuilt or independently checked the full repository.

</>FinalCheck.lean
Original source ↗ · L1–8Pinned revision aa2d8b3
import Theorems.Thm_fermat_last_theorem
/-- info: 'fermat_last_theorem' depends on axioms: [propext, Classical.choice, Quot.sound] -/
#guard_msgs in
#print axioms fermat_last_theorem
theorem flt_pinned (n : ℕ) (hn : 3 ≤ n) (a b c : ℕ) (ha : 0 < a) (hb : 0 < b) (hc : 0 < c) : a ^ n + b ^ n ≠ c ^ n := fermat_last_theorem n hn a b c ha hb hc
theorem flt_mathlib : FermatLastTheorem := fun n hn a b c ha hb hc => fermat_last_theorem n hn a b c (Nat.pos_of_ne_zero ha) (Nat.pos_of_ne_zero hb) (Nat.pos_of_ne_zero hc)
#print axioms flt_mathlib

👩🏻‍🎨 Mika · Source reading guide

The #guard_msgs block checks the diagnostic produced by #print axioms fermat_last_theorem. flt_pinned forces the explicit target signature; flt_mathlib inhabits Mathlib’s FermatLastTheorem by converting nonzero hypotheses with Nat.pos_of_ne_zero. A source snapshot is not an .olean/kernel-check result. Our stored snapshot is not tagged as locally Lean-verified.

Annotated original · not a live Lean state

Point to a story clue or a highlighted term to connect the two.

Try this logical move →
Source and verification details

Source: anthropics/fermats-last-theorem @ aa2d8b3. Upstream reports verification; this reader has not independently rebuilt the project. Manga explanations are not formal proofs.

Source license & attribution
Chapter 17/17 · Lean

The extremely literal judge

Pip’s dramatic monologue has failed the type checker.

How we got here

The contradiction completes the mathematical route we read. This final chapter separates understanding that route, inspecting Lean source, and actually checking it with the Lean kernel. Reading this site does not run that full check.

These links explain the reading route. A story analogy is not a proof of this theorem.

Take it to the tea salon
PIP
“Your Honour, the book: the imported theorem and every dependency, listed. I did not write the mathematics — I shipped it.”
The complete dossier

Story → proofThe book presented to the owl is the imported theorem and its dependencies. This short checkpoint is not the whole proof.

Open the actual theoremimport Theorems.Thm_fermat_last_theorem
OWL
“The owl does not applaud. It runs #print axioms: name every foundational assumption. No shortcuts, no vibes.”
No points for delivery

Story → proofThe owl’s inspection is #print axioms: asking Lean which foundational axioms the theorem depends on. Applause supplies no evidence.

Ask for the dependencies#print axioms fermat_last_theorem
PIP
“Book closed: the formulation matches the wanted one, natural numbers with positivity evidence included. Case file: verified.”
The case and the comic

Story → proofClosing the book includes matching theorem formulations: for natural numbers, nonzero evidence gives the required positivity.

Nonzero becomes positiveNat.pos_of_ne_zero ha

The idea behind the story

The #guard_msgs block checks the diagnostic produced by #print axioms fermat_last_theorem. flt_pinned forces the explicit target signature; flt_mathlib inhabits Mathlib’s FermatLastTheorem by converting nonzero hypotheses with Nat.pos_of_ne_zero. A source snapshot is not an .olean/kernel-check result. Our stored snapshot is not tagged as locally Lean-verified.

What would justify a fresh local proof-check badge for this repository?

  • Successfully checking the pinned project with its required dependencies and toolchain.
  • Reading #print axioms in the source file.

The story and source are readable here. Enable JavaScript to edit proofs, try quizzes, and explore the interactive map.

Case closed for the tour. Revisit a chapter in Math or Lean mode.

Read. Try. Make it click.

  1. Read the manga and choose Story, Math, or Lean depth.
  2. Open the proof playground. Edit the tactics and watch the goals change.
  3. Select a state, term, or hint. Wrong turns are part of the story.

The playground checks a small propositional language. FLT excerpts are editable reading material, not live-checked Lean proofs. The complete FLT build remains an upstream verification report.

I’m lost · Help

Mika’s help desk

The extremely literal judge

One thing at a time

Start with the cake-scale story. You only need to read one small piece at a time. If you are in the Fermat story, start with Story depth, then the words listed before the chapter.

In simpler words

You do not need to know Lean, symbols or university mathematics to begin. Definitions come first in the small stories.

A small clue

Look at the small example before the general formula. Ask what changed and what stayed the same.

Close this panel to return to the exact place you were reading. These are prepared hints for this page.

Start with the first small story →