Skip to content

Appendix B: Notation reference

A symbol in this book is always defined the first time it appears in a chapter. This appendix lists every reservation, organized by the part that introduces it, and flags the letters whose meaning shifts across parts.

When a symbol carries a subscript (like rFRIr_\mathrm{FRI} versus rFSr_\mathrm{FS}), the bare letter is reserved only in the chapter that introduces the decoration, and the decorations are never elided.

The book reuses a handful of letters across parts. Each occurrence is defined locally, but a reader moving between parts should confirm the context before interpreting the letter.

SymbolPart IPart IIPart IIIPart IVPart VI
nnModulus in modular arithmeticLattice dimension / polynomial degreeHash output lengthCode lengthNot used bare
qqRSA large prime (Ch 4)ML-KEM ring modulus 3329Not usedField order (codes)Quantum query budget
rrShor’s period (Ch 4); ECDSA nonce half (Ch 6)Not used bareNot used bareReceived word (Ch 19)Never bare; rFRIr_\mathrm{FRI}, rFSr_\mathrm{FS}, routr_\mathrm{out}
ssECDSA signature half (Ch 6)LWE secret vectorOne-time secret-key slotSyndrome (Ch 19)Not used
eeRSA public exponent (Ch 4)LWE error vectorNot usedError pattern in a received wordNot used
ddRSA private exponent / ECDSA private keyNot usedDigest, MSS depth (Ch 13); WOTS+ digit (Ch 14); hypertree layers (Ch 16)Minimum distance of a codeNot used
kkNot used bareModule rank (Ch 9)FORS trees per signature (Ch 15)Code dimensionTarget PQ soundness in bits (Ch 33)
ttNot used bareNot used bareFORS leaves per tree (Ch 15)Error-correcting capability (Ch 19)Not used bare
ggGenerator of a cyclic group (Ch 2)Not usedNot usedNot usedGrinding-bit count on the Fiat-Shamir transcript
BBNot usedLattice basis matrix (Ch 7); also the scalar noise bound $e^\top r\leq mB$ in Regev-style LWE correctness arguments (Ch 8, Ch 10)Not used
HHHash in an abstract game (Ch 5)Not usedCryptographic hash function (Ch 13)Parity-check matrix (Ch 18)Not used
TTNot usedNot usedMerkle authentication path (Ch 13)Not usedTrace domain (Ch 33)
β\betaNot usedBKZ block size (Ch 12)Not usedNot usedFRI fold challenge
δ0\delta_0Not usedNot usedNot usedNot usedProximity-gap threshold in Hamming distance (Ch 33)
ζ\zetaNot usedPrimitive 256th root of unity, ζ=17\zeta = 17 in Z3329\mathbb{Z}_{3329} (Ch 11, FIPS 203). Not used in Ch 12; the LWE secret-error standard deviation in Ch 12’s primal and dual sections is σ\sigma, matching the Kyber Round 3 submission.Not usedNot usedNot used

Chapter 13 reuses dd internally for two quantities: the message digest in Section 1 and the MSS tree depth from the many-time signature section onward. Part III reuses dd in two more chapters. Ch 14 uses dd for the WOTS+ digit value, the base-ww encoding of the message digest. Ch 16 uses dd for the SLH-DSA hypertree layer count per FIPS 205 (for example, d=7d = 7 for SLH-DSA-SHA2-192s). The Part III reservation table splits these uses across rows. Ch 14 reserves hh for XMSS tree height per RFC 8391.

Introduced in Chapters 1 through 6. These symbols propagate into every later part.

SymbolMeaningFirst used
nnModulus for modular arithmetic (also overloaded in later parts)Chapter 2
Z/nZ\mathbb{Z}/n\mathbb{Z}Ring of integers modulo nnChapter 2
Fp\mathbb{F}_pFinite field with pp elements, pp primeChapter 2
Fp\mathbb{F}_p^*Multiplicative group of Fp\mathbb{F}_pChapter 2
ggGenerator of a cyclic groupChapter 2
φ(n)\varphi(n)Euler totient functionChapter 2
Fp[x]\mathbb{F}_p[x]Polynomial ring over Fp\mathbb{F}_pChapter 2
Fp[x]/(f(x))\mathbb{F}_p[x]/(f(x))Quotient ring by the ideal (f(x))(f(x))Chapter 2
(p,q,n,e,d)(p, q, n, e, d)RSA key-parameter tuple: distinct primes p,qp, q; modulus n=pqn = pq; public exponent ee; private exponent ddChapter 4
rrMultiplicative order of a base mod nn; Shor’s period in the toy factoring walkChapter 4
λ\lambdaSecurity parameter, in bitsChapter 5 (formally introduced at the first {0,1}λ\{0, 1\}^\lambda use in key agreement); also appears as the chord slope in Chapter 4’s EC group law
Pr[E]\Pr[E]Probability of event EEChapter 5
negl(λ)\mathsf{negl}(\lambda)Negligible function in λ\lambdaChapter 6
(d,k,r,s,N)(d, k, r, s, N)ECDSA signature tuple: private key dd; nonce kk; signature pair (r,s)(r, s); curve group order NNChapter 6

Introduced in Chapters 7 through 12. Centered on LWE, Module-LWE, and ML-KEM. Letters marked with \dagger collide with a later-part letter; the collision table at the top gives the resolution.

SymbolMeaningFirst used
L(B)L(B)Lattice generated by basis BBChapter 7
BBBasis matrix, columns are basis vectors (distinct from the scalar noise bound BB used in Ch 8 and Ch 10 LWE correctness arguments; the collision table at the top of this appendix records the split)Chapter 7
bib_iThe ii-th basis vectorChapter 7
UUUnimodular change-of-basis matrixChapter 7
GLn(Z)\mathrm{GL}_n(\mathbb{Z})Group of n×nn \times n unimodular integer matricesChapter 7
det(L)\det(L)Determinant of a latticeChapter 7
P(B)\mathcal{P}(B)Fundamental parallelepiped of basis BBChapter 7
LL^*Dual lattice of LLChapter 7
BTB^{-T}Dual basis, (B1)T(B^{-1})^TChapter 7
λi(L)\lambda_i(L)The ii-th successive minimum of LLChapter 7
ss \daggerLWE secret vectorChapter 8
ee \daggerLWE error vectorChapter 8
χ\chiError distribution, usually centered binomialChapter 8
qq \daggerRing modulus in the lattice construction; 3329 for ML-KEMChapter 8
AAPublic-key sample matrix in (A,As+e)(A, As + e)Chapter 8
aaA row of AA; LWE public vectorChapter 8
ζ2n\zeta_{2n}Primitive 2n2nth root of unity, cyclotomic framing of Ring-LWEChapter 9
RqR_qPolynomial ring Zq[x]/(xn+1)\mathbb{Z}_q[x]/(x^n+1)Chapter 9
kk \daggerModule rank, Module-LWE and ML-KEMChapter 9
η1,η2\eta_1, \eta_2Centered binomial noise widths in ML-KEM (η1=η2=2\eta_1 = \eta_2 = 2 for ML-KEM-768)Chapter 11
ζ\zetaML-KEM’s primitive 256th root of unity in Z3329\mathbb{Z}_{3329}; ζ=17\zeta = 17Chapter 11
du,dvd_u, d_vCiphertext compression widths in ML-KEM (du=10,dv=4d_u = 10, d_v = 4 for ML-KEM-768)Chapter 11
β\beta \daggerBKZ block sizeChapter 12
δ(β)\delta(\beta)Root-Hermite factor at block size β\betaChapter 12

Introduced in Chapters 13 through 17. Centered on Lamport, Merkle trees, WOTS+, FORS, and SLH-DSA. In this part, nn means hash output length, not lattice dimension. The unit splits across the part: Chapter 13 works nn in bits (matching the Lamport digest length); Chapters 14 through 17 work nn in bytes (matching the FIPS 205 and SPHINCS+ convention). Every code block in Chapter 17 introduces the explicit n_bytes / n_bits = 8 * n_bytes pair so the switch is local and visible.

SymbolMeaningFirst used
HH \daggerCryptographic hash function (SHA-256, SHAKE)Chapter 13
nn \daggerHash output length: in bits in Chapter 13, in bytes in Chapters 14 through 17Chapter 13
s0(i),s1(i)s_0^{(i)}, s_1^{(i)}Lamport secret-key slots at bit position iiChapter 13
p0(i),p1(i)p_0^{(i)}, p_1^{(i)}Lamport public-key slots at bit position iiChapter 13
dd \daggerMessage digest (Section 1) and MSS tree depth (many-time signature section)Chapter 13
TT \daggerMerkle authentication pathChapter 13
hhMerkle tree height; XMSS tree height (RFC 8391 convention)Chapter 14
dd \daggerWOTS+ digit value, base-ww encoding of the message digestChapter 14
wwWOTS+ base (Winternitz parameter), usually 16Chapter 14
1,2\ell_1, \ell_2WOTS+ chain counts: message and checksumChapter 14
kk \daggerFORS trees per signatureChapter 15
tt \daggerFORS leaves per treeChapter 15
ADRS\mathrm{ADRS}SLH-DSA address structure: 32 bytes in the general form (FIPS 205 Section 4.2), compressed to 22 bytes for the SHA2 parameter sets (Section 11.2)Chapter 16
PRFk\mathsf{PRF}_kKeyed pseudorandom function with key kkChapter 16
dd \daggerNumber of hypertree layers in SLH-DSA (FIPS 205); d=7d = 7 for SLH-DSA-SHA2-192s, d=22d = 22 for SLH-DSA-SHA2-256fChapter 16

Part IV: Code-based and isogeny-based cryptography

Section titled “Part IV: Code-based and isogeny-based cryptography”

Introduced in Chapters 18 through 23. Code-based notation in Chapters 18 through 20; isogeny notation in Chapters 21 and 22. Part IV works over GF(2)\mathrm{GF}(2) throughout; the length-dimension-distance triple is written unsubscripted.

SymbolMeaningFirst used
F2m\mathbb{F}_{2^m}Binary extension field, mm the extension degreeChapter 18
[n,k,d][n, k, d]Linear code parameters: length nn, dimension kk, minimum distance dd, over GF(2)\mathrm{GF}(2)Chapter 18
CCLinear code, subspace of GF(2)n\mathrm{GF}(2)^nChapter 18
GGGenerator matrix (k×nk \times n) of a linear codeChapter 18
HH \daggerParity-check matrix ((nk)×n(n-k) \times n); distinct from Part III’s hash functionChapter 18
rr \daggerReceived word r=c+er = c + e, where cc is the transmitted codewordChapter 18
ss \daggerSyndrome, s=HrTs = H \cdot r^T (column convention used throughout Part IV)Chapter 18
tt \daggerError-correcting capability of a code, t=(d1)/2t = \lfloor (d-1)/2 \rfloorChapter 18
E0,E1,E_0, E_1, \ldotsSupersingular elliptic curves in an isogeny pathChapter 21
φ\varphiIsogeny map between elliptic curvesChapter 21
j(E)j(E)jj-invariant of an elliptic curveChapter 21
\ell-isogenyIsogeny of prime degree \ellChapter 21
O\mathcal{O}Order in a quaternion algebra (SQIsign)Chapter 22

Part V does not introduce new mathematical notation; it reuses Part II and Part III symbols when referencing the constructions those parts built.

Introduced in Chapters 30 through 34. Chapter 33 Section 3 (“AIR, LDE, and the Reed-Solomon lift”) and Chapter 34 Table 34.1 each publish explicit reservation tables; the Part VI entries below match those tables verbatim. Part VI reuses several Part II and Part III letters with new meanings (notably qq, TT, gg, β\beta); the table below flags those collisions with \dagger and the top-of-appendix collision table gives the full resolution.

SymbolMeaningFirst used
ppSTARK field primeChapter 33
LLTrace lengthChapter 33
NNLDE domain size, usually N=L/ρN = L / \rhoChapter 33
ρ\rhoCode rate, ρ=L/N\rho = L / NChapter 33
rFRIr_\mathrm{FRI}Number of FRI folding roundsChapter 33
rFSr_\mathrm{FS}Number of Fiat-Shamir rounds on the transcriptChapter 33
μ\muFRI query openings per roundChapter 33
gg \daggerGrinding-bit count on the Fiat-Shamir transcriptChapter 33
qq \daggerAdversary’s quantum query budgetChapter 33
kk \daggerTarget post-quantum soundness, in bitsChapter 33
δ0\delta_0 \daggerProximity-gap threshold in Hamming distanceChapter 33
D\mathbb{D}LDE evaluation domainChapter 33
TT \daggerTrace domain, a subgroup of the LDE domainChapter 33
ccReed-Solomon codeword, c=LDE(t)c = \mathrm{LDE}(t)Chapter 33
t(x)t(x)Trace polynomial of degree <L< LChapter 33
(L2,L4)(L_2, L_4)Grid cell label in the four-layer decompositionChapter 34
ksysk_\mathrm{sys}Target PQ bit margin at the system levelChapter 34
qsysq_\mathrm{sys}Adversary’s quantum query budget at the system threat modelChapter 34
routr_\mathrm{out}Fiat-Shamir rounds on an outer wrapper proofChapter 34
nhashn_\mathrm{hash}Hash-output bit width in a Part VI protocolChapter 34

A few notation conventions hold throughout the book and are not individually reserved in any chapter:

  • In Parts II and VI, bold lowercase letters (s,e,a\mathbf{s}, \mathbf{e}, \mathbf{a}) denote vectors and bold uppercase (A,B\mathbf{A}, \mathbf{B}) denote matrices. Part IV follows the coding-theory convention and uses non-bold uppercase for matrices (GG, HH, AA); the dimension is always stated at first use.
  • Set-builder notation uses {xX:P(x)}\{ x \in X : P(x) \}, never the shorthand with a mid-line bar.
  • log\log without a base is base 2, matching the cryptographic convention. Natural log is written ln\ln.
  • Security levels are stated in bits of classical work or, for the quantum model, in quantum gates under a specified cost model (with MAXDEPTH bound).
  • Cryptographic hash output is written in lowercase hex throughout.