Precompiles#
Precompile AIRs provide accelerated circuits for cryptographic operations. All four precompile AIRs require the Compressor stage in the recursion pipeline due to their large verifier circuits.
Add256#
The Add256 AIR (\(2^{20}\) rows) provides 256-bit unsigned addition. Used as a building block for multi-precision arithmetic.
ArithEq#
The ArithEq AIR (\(2^{20}\) rows) provides 256-bit modular arithmetic for elliptic curve operations over secp256k1 and BN254. Supports:
256-bit modular addition, subtraction, and multiplication.
secp256k1 point addition and doubling.
BN254 curve operations (addition, doubling, complex field arithmetic).
Uses the ArithEq Lt Table (bus ID 5002) for field comparison lookups.
ArithEq384#
The ArithEq384 AIR (\(2^{20}\) rows) extends ArithEq to 384-bit fields, supporting BLS12-381 elliptic curve operations.
Keccakf#
The Keccakf AIR (\(2^{17}\) rows) implements the Keccak-f[1600] permutation, the core of the Keccak/SHA-3 hash function. Each invocation processes a 1600-bit state through 24 rounds. Memory operations for reading/writing the state use the Memory Bus (10). Uses the Keccakf Table (bus ID 126) for round constant lookups.
Sha256f#
The Sha256f AIR (\(2^{18}\) rows) implements the SHA-256 compression function. Each invocation processes a 512-bit message block with a 256-bit state. Memory operations use the Memory Bus (10).