Additive NTT
This article aims to intuitively explain the goals and process of the Additive NTT protocol.
Introduction
Binius is a SNARK constructed using a characteristic-2 finite field. In Binius, RS-encoding (Reed-Solomon encoding) is employed, but there is a challenge: the conventional Radix-2 FFT cannot be utilized in characteristic-2 finite fields. This paper addresses that challenge.
The title of the paper is "Novel Polynomial Basis and Its Application to Reed-Solomon Erasure Codes." A characteristic-2 finite field is an extension field of the form F2r, which can be constructed as a polynomial ring. Traditionally, polynomials are represented using the Monomial Basis 1,X,X2,…which is a natural choice. However, this paper introduces an ingenious new polynomial basis and proposes an encoding algorithm that achieves performance comparable to the Radix-2 FFT.
Background
Radix-2 FFT
The coefficient form of a univariate polynomial of degree n−1 is defined as:
where the basis is {1,X,X2,…,Xn−1}.
On the other hand, the evaluation form of a univariate polynomial is defined as:
where the basis is {L0(X),L1(X),L2(X),…,Ln−1(X)}, called the Lagrange basis.
In Radix-2 FFT (Fast Fourier Transform), a Lagrange basis is constructed using the roots of unity. Each basis polynomial Li(X) is defined as:
Since we use finite fields instead of complex numbers, this is technically a Radix-2 NTT (Number Theoretic Transform), but for simplicity, we'll refer to it as FFT. Radix-2 FFT transforms a polynomial in coefficient form into its evaluation form. The matrix used to multiply the coefficient vector is called a Vandermonde matrix:
The n-th roots of unity satisfy:
Since ωn/2 cannot equal 1, it must equal −1.
Using the property of ωn/2=−1, Radix-2 FFT is efficiently computed via the Cooley-Tukey algorithm. The polynomial P(X) is divided into two parts:
PE(X2): even powers of X.
PO(X2): odd powers of X.
This gives:
For X=−X,substituting X⋅ωn/2, we have:
This transforms an n-point FFT problem into two n/2-point FFT problems.
Define Δim(X) as follows:
For example, for n=8, the recursive computation proceeds as such:
By recursively applying this process, the computational complexity of FFT becomes O(n⋅logn).
The Inverse FFT (IFFT) converts a polynomial from its evaluation form back to its coefficient form by using the inverse of the Vandermonde matrix:
The IFFT can also be computed in O(n⋅logn) using a similar recursive approach to FFT.
2-adicity
When the modulus of a prime field is of the form 2S⋅T+1, a 2k-th root of unity ω for k<S can be determined as follows.
In other words, if the order of the multiplicative subgroup Fp× of a prime field is of the form 2S⋅T, and S (also known as the 2-adicity) is large, FFT can be used effectively. Fields with this structure are referred to as FFT-friendly fields.
What about characteristic-2 finite fields, such as F2r? For these fields, the order of the multiplicative subgroup F2r× is 2r−1. Since the 2-adicity of 2r−1 is 0, Radix-2 FFT cannot be used.
This naturally raises the question: when the characteristic is 2, what new polynomial basis would be suitable? Moreover, to achieve fast computation similar to Radix-2 FFT, the method must recursively reduce the problem into smaller subproblems.Protocol Explanation
NOTE: From this point onward, ω is no longer a root of unity, and Δ will be newly defined.
Polynomial Basis
The elements of F2r can be represented as the set {ωi}i=02r−1, where:
Given a basis vector v={v0,…,vr−1} composed of elements from F2r, each ωi can be expressed as:
We define the subspace vanishing polynomial as:
This mean the full form of the vanishing polynomials Wj(X) are as follows:
and so on.
Thus, deg(Wj(X))=2j and the roots of W2(X) are ω0,ω1,ω2,ω3 . This follows from the fact that addition in F2r is XOR, so ωi+ωi=0, a direct result of the field’s characteristic being 2.
Lemma 1. Wj(X) is a F2-linearized polynomial.
Furthermore, Wj(X) satisfies the following property:
We now define a new polynomial basis Xi(X) as:
where:
The new polynomial basis Xi(X) is as follows:
and so on.
Thus, deg(Xi(X))=i.
The coefficient form of an n−1-degree univariate polynomial [Dn](X)∈F2r[X]/(X2r−1) is expressed as:
The evaluation form of this polynomial is:
where Lil(X) is defined as:
We denote the set of evaluations as D^nl, defined as such:
Delta Polynomial
The recursive calculation of [Dn](X) can be performed by defining Δim(X) as follows:
where 0≤m<2i.
For n=8, Δ exists as follows:
[Dn](X) is equivalent to Δ00(X). For example, [D8](X) is recursively computed as follows:
Lemma 2. Δim(X+Y)=Δim(X),∀Y∈{ωb}b=02i−1
Proof:
Case 1: i=log2n, both Δim(X+Y) and Δim(X) equal dm, so the equality holds trivially.
Case 2: i=log2n−1, Δim(X) is given as:
which simplifies as follows:
Using Lemma 1:
Since Y∈{ωb}b=02i−1, we know Wlog2n−1(Y)=0, so:
Case 3: Inductive Step
Assume the equality holds for i=c+1. At , we have:
By Lemma 1:
Since Y∈{ωb}b=02c−1, we know Wc(Y)=0, thus:
Transform
Define the transform Ψ as:
where 0≤m<2i.
The transform computes {Ψ(log2n,k,l)∣k∈[0,n−1]}→Ψ(0,0,l). For n=8, this becomes:
Remember that Δ00(X) is equivalent to [Dn](X).
Ψ(i,m,l) can be divided into two parts as follows:
{Δim(ωc+ωl)∣c∈{b⋅2i+1}b=0n/2i+1−1} which can be computed from Ψ(i+1,m,l).
{Δim(ωc+ωl+ω2i)∣c∈{b⋅2i+1}b=0n/2i+1−1} which can be computed from Ψ(i+1,m+2i,l).
Part 1. Ψ(i+1,m,l)
Since all the right-hand terms are known, the left-hand terms can be determined.
Part 2. Ψ(i+1,m+2i,l)
Since Δim(ωc+ωl) can be computed from the Part 1, the left-hand terms can be determined.
When n=8,i=2, for Ψ(2,m,l), it can be split into Ψ(3,m,l)={dm} and Ψ(3,m+4,l)=Δ3m+4(X)={dm+4}.
When n=8,i=1, for Ψ(1,m,l), it can be split intoΨ(2,m,l)={Δ2m(ω0+ωl),Δ2m(ω4+ωl)} and Ψ(2,m+2,l)={Δ2m+2(ω0+ωl),Δ2m+2(ω4+ωl)}.
Inverse Transform
To compute Ψ(i+1,m,l) and Ψ(i+1,m+2i,l) from Ψ(i,m,l):
Part 1. Ψ(i+1,m+2i,l)
where: (Refer to Part 2. in Transform section above.)
Since all the right-hand terms are known, the left-hand terms can be determined.
Part 2. Ψ(i+1,m,l)
where (Refer to Part 1. in Transform section above):
Since Δim(ωc+ωl) can be computed from the Part 1, the left-hand terms can be determined.

The diagram above illustrates the data dependencies for transforming and inversely transforming a polynomial of size 8. Each element is computed as the sum of a solid-line element and a dashed-line element, where the latter represents scalar multiplication by Wij.
Conclusion
The method for performing a formal derivative on the Novel Polynomial Basis and its use in the RS erasure decoding algorithm is omitted here due to space constraints. For those interested, please refer to the original paper.

Using the newly proposed Novel Polynomial Basis, the Additive NTT achieves O(nlogn) additive complexity and O(nlogn) multiplicative complexity without any constraints. Consequently, for the first time, RS-encoding over characteristic-2 finite fields achieves O(nlogn) complexity.

Additionally, it is well-known that polynomial multiplication can be optimized using FFT. Similarly, by leveraging the Novel Polynomial Basis, multiplication in characteristic-2 finite fields can also be optimized.
Written by Ryan Kim of Fractalyze
Last updated