Research trail / Ongoing series

Following the bottleneck.

A research story in chapters: Plonky3, leanVM, an allocator detour, and the questions that came next.

ZKAutoresearchPerformance

Prover optimization / zk-autoresearch

One experiment leads
to another.

Start with Plonky3. Follow the memory detour. Keep going into LeanVM. These chapters preserve the experiments in the order they happened, including what I understood at the time.

PROFILE → CHANGE → MEASURE → REPEAT
  1. 01

    14 Apr 2026 · 3 min read

    Plonky3 · The first experiment

    The first Plonky3 experiment: applying an autonomous optimization loop to an already optimized production proving framework.

  2. 02

    14 Apr 2026 · 7 min read

    Plonky3 · Models, memory & measurement

    A Plonky3 experiment comparing model scaling with the ability to retain context, question a benchmark, and change direction.

  3. 03

    28 Apr 2026 · 5 min read

    zk-alloc · Building a new tool

    The allocator detour: using the autoresearch loop to build a new tool, then testing where it helps and where it does not.

  4. 04

    5 May 2026 · 5 min read

    leanVM · End-to-end proving

    The leanVM chapter: moving from isolated micro-optimizations to profiling, algorithmic changes, and end-to-end measurement.

  5. 05

    25 Aug 2026 · 5 min read

    What comes next · SNARK autoresearch

    From performance optimization to cryptographic research: what a more complete autoresearch loop would need.

  6. ↗

    An open notebook

    The next bottleneck.

    New chapters will join the trail as I write them.

About the research method

One loop, a growing set of questions

Can an agent find useful performance improvements in a proving system that experts have already optimized?

zk-autoresearch started with Plonky3’s NTT implementation. The loop was deliberately constrained: propose a change, check correctness, measure it, and keep it only when it passes the gates. Every iteration leaves a record.

The project grew into an ecosystem of target-specific harnesses, correctness checks, benchmark scripts, and experiment logs. My contribution includes designing the experiments, directing the agents, investigating the measurements, and taking changes through upstream review.

From Plonky3 to leanVM

The first Plonky3 run found implementation-level improvements. The next experiment made the research process itself the subject: model size, context retention, repeated dead ends, and a benchmark that needed questioning.

Moving to leanVM changed the target from isolated microbenchmarks to end-to-end proof generation. Profiling led deeper into allocation overhead, and eventually to a separate tool: zk-alloc.

The public repository also records later Vortex and gnark-crypto experiments. Their reported results are microbenchmarks; production-scale end-to-end benchmarking was not available. They should not be read as equivalent to a whole-prover speedup.

What stayed with me

Measure the right thing. Keep the failed experiments. Notice when the loop is circling. A passing test is valuable evidence, but it does not replace a soundness argument or expert review.

Those questions eventually led toward formal verification and certified research state. The point of the loop is to learn where the next, harder problem actually is.

Read it in order

The chapters above follow the publication history. Each keeps its original date and conclusions, including qualifications that later experiments revisited. New chapters can extend the story as the work develops.

Go deeper