Appendix C: Field Equations Cheat Sheet

A quick reference for the core equations that power zero-knowledge proof systems.

Schwartz-Zippel Lemma

The most important bound in the book.

For a non-zero polynomial of total degree over a field :

Consequence: Random evaluation catches cheating with probability .

Multilinear Extensions

Lagrange Basis Polynomial

For :

Property: and for .

Multilinear Extension Formula

For :

Equality Polynomial

Property: if , else (on hypercube).

Sum-Check Protocol

Dimensions: Vector size ; protocol runs rounds.

The Claim

Prove:

Round Polynomial

Prover sends:

Verifier Checks

  • Round 1:
  • Round :
  • Final: query oracle at to check

Soundness

where is the number of variables and is the maximum individual degree. (More precisely: where is the degree in variable .)

Vanishing Polynomials

Over Roots of Unity

For domain where :

Property: for all , and for .

Over Boolean Hypercube

For proving a polynomial vanishes on , use the univariate identity:

applied variable by variable in multilinear settings.

R1CS and QAP

R1CS Constraint

Dimensions: Matrices are ; witness is ; result is .

For witness vector :

where is entry-wise multiplication.

QAP Polynomial Identity

Define polynomials by interpolating constraint matrices.

The constraint system is satisfied iff:

where is the vanishing polynomial.

KZG Polynomial Commitments

Dimensions: Polynomial degree ; SRS size elements.

Structured Reference String (SRS)

Secret ; public:

Commitment

For :

Evaluation Proof

To prove : (Prover knows ; Verifier knows , , )

  1. Compute quotient:
  2. Proof:

Verification (Pairing Check)

Equivalently:

FRI Folding

Split Polynomial

For :

  • : even coefficients
  • : odd coefficients

Folding with Challenge

Property:

Consistency Check

At query point (where is its conjugate on the same coset), verify:

This uses: and .

AIR (Algebraic Intermediate Representation)

Trace Polynomials

For a trace matrix with registers and timesteps, interpolate each column over domain :

Transition Constraints

For a constraint "register 0 at next step equals of current registers":

The shift accesses "next row" values. Define constraint polynomial:

Quotient Check

Valid trace iff vanishes on transition domain :

is a polynomial (not rational function).

Boundary Constraints

Pin inputs/outputs. For :

must be a polynomial.

PLONK

Gate Equation

on domain .

Permutation Grand Product

Accumulator satisfies:

Property: The product telescopes, so iff all copy constraints hold.

Quotient Check

All constraints satisfied iff there exists with:

Groth16

Public Input Combination

Given public inputs where :

where are verification key elements.

Verification Equation

Given proof :

Verification cost: One MSM (size ) + 3-4 pairings, independent of circuit size.

Proof Size

3 group elements: 128 bytes over BN254 (32 + 64 + 32 for , , ).

Lookup Arguments

Plookup Identity

For lookups and table , let .

Property: Equality holds iff .

LogUp Identity

For lookups into table with multiplicities :

Property: Equality holds iff each and counts occurrences correctly.

Soundness: By Schwartz-Zippel, equality holds with probability over random .

Advantage: No sorting required; additive structure enables multi-table batching.

GKR Protocol

Dimensions: Layer has gates; layer (inputs) has gates; .

Layer Reduction

For layered circuit with values at layer :

Sum-Check Reduction

A claim about reduces via sum-check to claims about and for random .

Soundness: Compound over layers, each with sum-check rounds.

Inner Product Argument (IPA)

The Claim

Prove for committed .

Folding Step

Given challenge :

Property:

where and .

Proof Size

group elements after rounds.

Nova Folding

Relaxed R1CS

Standard R1CS:

Relaxed R1CS with scalar and error :

A satisfying instance has and .

Folding Two Instances

Given instances and , with challenge :

where is the "cross-term" computed by the prover.

Property: If both inputs satisfy relaxed R1CS, so does the folded instance.

Fiat-Shamir Transform

Challenge Derivation

Security Requirement

The hash must include:

  • The public statement
  • All previous commitments
  • All previous challenges

Complexity Summary

SystemProof SizeVerificationProverSetup
Groth16Per-circuit
PLONK+KZGUniversal
STARK/FRITransparent
BulletproofsTransparent
Sum-check IPNone

Field Sizes (Common Choices)

FieldSizeSecurityUse Case
BN254 scalar~100 bitsEthereum, Groth16, PLONK
BLS12-381 scalar~128 bitsZcash, many SNARKs
Goldilocks~100 bits*Plonky2, fast arithmetic
Baby Bear~100 bits*RISC Zero
Mersenne-31~100 bits*Circle STARKs

*Small fields require extension fields for cryptographic security; base field security refers to the overall system design.

Quick Reference: What to Use When

Proving a sum over hypercube: Sum-check protocol

Encoding data as polynomial: Multilinear extension (hypercube) or Lagrange interpolation (roots of unity)

Binding prover to polynomial: KZG (trusted setup, constant size), FRI (transparent, log² size), IPA (no pairings, log size)

Checking polynomial identity on a domain: Quotient by for roots of unity

Checking table membership: Lookup argument (Plookup with sorting, LogUp without)

Verifying circuit layer-by-layer: GKR protocol with sum-check at each layer

Incremental computation: Nova folding (amortize SNARK cost across steps)

Eliminating interaction: Fiat-Shamir with complete transcript hashing