liveBook · Manning

Statement variable

As explained in Elliptic Curve Cryptography for Developers

A statement variable is a public wire value that specifies the publicly known part of a proof statement.

A statement variable is a public wire value that specifies the publicly known part of a proof statement. In a QAP-based SNARK, the prover knows both statement and witness values, while the verifier knows only the statement values. Separating these inputs from secret witness variables allows the verifier to check the proof without learning the witness. section 19.7

The QAP construction makes the distinction concrete:

  • With a₀ fixed at 1, a₁ and a₂ are selected as statement variables; a₅ and a₇ also depend only on public values and can therefore remain public. section 19.5.2
  • The permutation vector records statement indexes in sw[0] through sw[4] and witness indexes in sw[5] through sw[9]. Thus l = 4, m = 9, and five gates determine n = 5. section 19.5.2
  • The resulting public values, wire functions, and cross-term table are serialized with the QAP parameters for later proof construction. section 19.5.2
Listing 19.12 Permutation vector setup
  sw[0] = 0;
  sw[1] = 1;
  sw[2] = 2;  #1
  sw[3] = 5;  #1
  sw[4] = 7;  #1
  sw[5] = 3;
  sw[6] = 4;  #2
  sw[7] = 6;  #2
  sw[8] = 8;  #2
  sw[9] = 9;
  l = 4;

The permutation-vector listing shows how ten wire positions are divided into public statement indexes and secret witness indexes. section 19.5.2

How Elliptic Curve Cryptography for Developers covers it

How deep it goes
Explains wire classification and QAP indexing, but does not derive the underlying pairing arithmetic.
Examples
Uses a₀, a₁, a₂, a₅, and a₇ alongside a permutation vector that separates ten wire indexes.
What it assumes
Assumes QAP notation and zero-knowledge proof roles while distinguishing public and secret values explicitly.
What you can do after
Understand how to classify wires and configure their indexes before generating QAP data for a proof.
How it connects
Connects public wires with witness variables, QAP formulas, CRS, SNARKs, and prover–verifier roles.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Elliptic Curve Cryptography for Developers. The section links point to the parts of the book it draws on.