STARK Aggregation
zkMIPS's STARK aggregation system decomposes complex program proofs into parallelizable shard proofs and recursively compresses them into a single STARK proof.
Shard Proof Generation
zkMIPS processes execution trace proofs for shards through three key phases:
-
Execution Shard
Splits program execution (compiled ELF binaries) into fixed-size batches and maintains execution context continuity across shards.
-
Trace Generation
Converts each shard's execution into constrained polynomial traces and encodes register states, memory operations, and instruction flows.
-
Shard Proof
Generates STARK proofs for each shard independently using FRI with Merkle tree-based polynomial commitments.
The proving pipeline coordinates multiple parallel proving units to process shards simultaneously, significantly reducing total proof generation time compared to linear processing.
Recursive Aggregation
Recursive aggregations are used to recursively compress multiple shard proofs into one. The aggregation system processes verification artifacts through:
-
Proof Normalization
Converts shard proofs into recursive-friendly format.
-
Context Bridging
Maintains execution state continuity between shards.
-
Batch Optimization
Groups proofs for optimal parallel processing.
The aggregation engine implements a multi-phase composition:
-
Base Layer
Processes raw shard proofs through initial verification circuits and generates first-layer aggregation certificates.
-
Intermediate Layers
Recursively combines certificates "2-to-1" using recursive-circuit.
-
Final Compression
Produces single STARK proof through final composition step.