This page runs large WebAssembly modules in your
browser — real Ruby and the Lean checker, compiled to wasm.
It does not work in Safari. Chrome on a phone does, but for best
results use Chrome on your desktop.
target —
The program — Ruby, with Sorbet type annotations. Editable.
Without the annotations — what actually gets checked and run
Certificate — the proposed proof. Edit it and stage 4 will check what you wrote.
The pipeline — press ▸ to run one, or “Check it” for all five
Declared types
— run stage 0 to read the program's type annotations
The program, desugared — the core form the model runs
— run stages 1 and 2
Verdict — the one trusted answer on this page
— run stages 3 and 4
Run it — the Lean model beside real CRuby. They should agree.
—
— press “Lean model” to run the program in the formal model
— press “CRuby” to run the same program in real Ruby