Fast Evaluation on an Affine Tower

Status: Conditional algorithmic theorem

This chapter gives a recursive algorithm for evaluating a polynomial written in the affine kernel basis. If a compatible affine quadratic domain tower of size is supplied, the algorithm uses field operations.

The recursion and its operation count are established. The conclusion is conditional because the existence of a tower of the requested size is a separate arithmetic question.

10.1 Compatible algebraic and domain data

Let be a field of characteristic different from . Fix and let .

Assume that we are given an affine quadratic domain tower

with

At level , the tower map is

and every point of has a fiber with .

Use the same parameters to define the affine coordinates

The compatibility between the coordinate recursion and the domain maps is essential: when , the value lies in .

10.2 Input representation

Let

where

The input is the table of affine kernel coefficients

The output is the ordered evaluation table

The algorithm assumes that every domain level is stored together with its two-point fibers. Searching for fibers is not included in the evaluation cost.

10.3 First coefficient split

Write each Boolean index as

Define the tail kernel

Then

Define two tail polynomials

and

with coefficient tables

and

It follows that

Proposition 10.1 — Affine-kernel coefficient split

For each , the first recursive split is

The complete split uses exactly field additions and no field multiplications.

This inexpensive update is the reason for using affine kernel coordinates. In the ordinary monomial basis, the affine substitution would introduce binomial expansions of shifted powers.

10.4 One value butterfly

Let be the fiber over . Since ,

and

Given and , computing both outputs uses exactly:

  • one multiplication, to form ; and
  • two additions or subtractions.

The result does not depend on which member of the fiber is named .

10.5 Recursive algorithm

The two tail polynomials and are expressed in the affine kernel basis associated with the shortened coordinate sequence

They can therefore be evaluated recursively on using the remaining tower levels.

The recursive procedure is:

AffineKernelEval(level i, coefficient table lambda):
    n := length(lambda)

    if n = 1:
        return the one constant value

    for each tail index z:
        A[z] := lambda[1,z]
        B[z] := lambda[0,z] + lambda[1,z]

    values_A := AffineKernelEval(level i+1, A)
    values_B := AffineKernelEval(level i+1, B)

    for each stored fiber {alpha,-alpha} over beta in D_(i+1):
        t := alpha * values_B[beta]
        values_f[alpha]  := values_A[beta] + t
        values_f[-alpha] := values_A[beta] - t

    return values_f

The base case contains the empty tail kernel, which is the constant polynomial . Hence the sole remaining coefficient is already the value on the one-point final domain.

Theorem 10.2 — Correctness

Given compatible affine coordinates and an affine quadratic domain tower, the algorithm returns for every .

Proof

Proceed by induction on . The claim is immediate when .

For , Proposition 10.1 gives the polynomial identity

The induction hypothesis correctly evaluates and on . For each fiber over , the value butterfly then computes and . The fibers partition , so every requested evaluation is returned.

10.6 Exact arithmetic cost

Let be the number of field multiplications and let be the number of field additions or subtractions.

At a problem of size :

  • the coefficient split uses additions;
  • the two recursive calls have size ;
  • the value butterflies use multiplications and additions or subtractions.

Therefore

and

Theorem 10.3 — Exact evaluation cost

For , the recursive affine-kernel evaluation uses exactly

field multiplications and

field additions or subtractions.

Proof

At every recursion depth, the subproblem sizes sum to . Thus each of the nontrivial depths uses multiplications and additions or subtractions. Summing over all depths gives the formulas.

Consequently, the arithmetic complexity is

These counts exclude:

  • construction or discovery of the affine tower;
  • validation and ordering of its fibers;
  • conversion from another polynomial basis;
  • memory movement and indexing; and
  • hashing, commitments, or proof-protocol operations.

Multiplication by a precomputed domain element is counted as one field multiplication.

10.7 What the condition replaces

A classical radix-two FFT usually assumes a multiplicative subgroup or coset supporting the required chain of squaring maps. The affine algorithm does not require itself to be such a subgroup.

However, the subgroup assumption is not removed without replacement. It is replaced by the requirement that compatible sets

and two-to-one affine quadratic maps between them are available. Whether that requirement can be met is field- and size-dependent.

Thus the correct implication is:

The converse is not asserted, and universal tower existence is not assumed.

10.8 Relation to interpolation and protocols

The evaluation map is invertible because the points of are distinct and the affine kernels form a basis. Therefore interpolation exists as a linear operation.

This chapter does not yet provide or count a recursive interpolation algorithm. It also does not prove a proximity property, an error-correction guarantee, or protocol soundness. Those questions require separate analysis.

10.9 What has been established

Conditional on a supplied compatible affine tower, this chapter establishes:

  • the affine-kernel coefficient split;
  • the recursive evaluation algorithm and its correctness;
  • an exact cost of multiplications;
  • an exact cost of additions or subtractions; and
  • total arithmetic complexity .

No universal tower-construction, interpolation-complexity, proximity, or soundness theorem is asserted.