Skip to content

Multilinear Polynomials

The existence and uniqueness of multilinear extensions

For our purposes here, we work over the field F2\mathbb{F}_2. We can now moreover write F2[X0,,X1]\mathbb{F}_2[X_0, \ldots , X_{\ell - 1}] for the ring of multivariate polynomials over F2\mathbb{F}_2 in \ell indeterminates. A polynomial t(X0,,X1)F2[X0,,X1]t(X_0, \ldots , X_{\ell - 1}) \in \mathbb{F}_2[X_0, \ldots, X_{\ell - 1}] is multilinear if each indeterminate appears in it with individual degree at most 1. We write F2[X0,,X1]1\mathbb{F}_2[X_0, \ldots, X_{\ell - 1}]^{\preceq 1} for the set of multilinears. This thing is 22^\ell-dimensional over F2\mathbb{F}_2 (a basis is given by the multilinear monomials 1,X0,X1,X0X1,X2,,X0X11, X_0, X_1, X_0 \cdot X_1, X_2, \ldots , X_0 \cdot \cdots \cdot X_{\ell - 1}).

Multilinear polynomials and lists of field elements are basically the same thing, as we argue now. We will write B{0,1}\mathcal{B}_\ell \coloneqq \{0, 1\}^\ell for the \ell-dimensional discrete unit cube.

The Equality Indicator Polynomial

For each fixed 0\ell \geq 0, the 22 \cdot \ell-variate equality indicator polynomial eq~(X0,,X1,Y0,,Y1)\widetilde{\texttt{eq}}(X_0, \ldots , X_{\ell - 1}, Y_0, \ldots , Y_{\ell - 1}) is defined to be:

eq~(X0,,X1,Y0,,Y1)i=01((1Xi)(1Yi)+XiYi).\begin{equation*}\widetilde{\texttt{eq}}(X_0, \ldots , X_{\ell - 1}, Y_0, \ldots , Y_{\ell - 1}) \coloneqq \prod_{i = 0}^{\ell - 1} \left( (1 - X_i) \cdot (1 - Y_i) + X_i \cdot Y_i \right).\end{equation*}

This polynomial is multilinear. Moreover, its restriction to the cube B×B\mathcal{B}_\ell \times \mathcal{B}_\ell yields the equality indicator function, the function that, on each pair of bitstrings uu and uu^*, equals 1 if u=uu = u^* and 0 otherwise.

Multilinear Extensions

Given some multilinear t(X0,,X1)F2[X0,,X1]1t(X_0, \ldots , X_{\ell - 1}) \in \mathbb{F}_2[X_0, \ldots, X_{\ell - 1}]^{\preceq 1}, the evaluation map sends t(X0,,X1)t(X_0, \ldots , X_{\ell - 1}) to its evaluations on the cube; that is,

eval:t(X0,,X1)(t(u))uB.\begin{equation*}\text{eval} : t(X_0, \ldots , X_{\ell - 1}) \mapsto \left( t(u) \right)_{u \in \mathcal{B}_\ell}.\end{equation*}

The problem of reversing this mapping is called "multilinear extension". We're going from the list (tu)uB\left( t_u \right)_{u \in \mathcal{B}_\ell} of prescribed values back to the multilinear t(X0,,X1)t(X_0, \ldots , X_{\ell - 1}) takes those values.

We argue that eval\text{eval} is a bijection (multilinear extensions exist and are unique). For dimension-count reasons, it suffices to argue that it's surjective (multilinear extensions exist). Indeed, it's linear over F2\mathbb{F}_2, and both the domain and the codomain are 22^\ell-dimensional. If it's surjective, it must also be injective (multilinear extensions are unique).

We fix a list (tu)uB\left( t_u \right)_{u \in \mathcal{B}_\ell} of prescribed values. We're going to solve this problem using multilinear Lagrange interpolation. Indeed, the polynomial

t(X0,,X1)uBtueq~(u0,,u1,X0,,X1)\begin{equation*}t(X_0, \ldots , X_{\ell - 1}) \coloneqq \sum_{u \in \mathcal{B}_\ell} t_u \cdot \widetilde{\texttt{eq}}(u_0, \ldots , u_{\ell - 1}, X_0, \ldots , X_{\ell - 1})\end{equation*}

gives us what we want. Why? First off, t(X0,,X1)t(X_0, \ldots , X_{\ell - 1}) is definitely multilinear, since each of the partial specializations eq~(u0,,u1,X0,,X1)\widetilde{\texttt{eq}}(u_0, \ldots , u_{\ell - 1}, X_0, \ldots , X_{\ell - 1}) is. Moreover, let's pick an arbitrary uBu^* \in \mathcal{B}_\ell. Since eq~(u0,,u1,u0,,u1)\widetilde{\texttt{eq}}(u_0, \ldots , u_{\ell - 1}, u^*_0, \ldots , u^*_{\ell - 1}) equals 1 if and only if u=uu = u^*, the sum t(u)t(u^*) winds up with just one nonzero summand, tueq~(u,u)=tut_{u^*} \cdot \widetilde{\texttt{eq}}(u^*, u^*) = t_{u^*}. In other words, t(u)=tut(u^*) = t_{u^*} holds for each uBu^* \in \mathcal{B}_\ell, which is what we wanted to show.

It's worth pointing out that you can show directly that eval\text{eval} is injective, without relying on dimension-counting or Lagrange interpolation. This proof is fairly interesting too; it's carried out in Thaler [Tha23, Fact 3.5.].

Succinctness

There is one final fact that makes things work. The equality indicator polynomial eq~(X0,,X1,Y0,,Y1)\widetilde{\texttt{eq}}(X_0, \ldots , X_{\ell - 1}, Y_0, \ldots , Y_{\ell - 1}) is succinct, meaning that for each pair of points rr and rr' in F2128\mathbb{F}_{2^{128}}^\ell, the evaluation eq~(r,r)\widetilde{\texttt{eq}}(r, r') can be computed in O()O(\ell) time.

To see why this is true, just look at the defining equation of eq~\widetilde{\texttt{eq}}. It's a product, with \ell terms; moreover, each term in the product can be computed using just a few operations. Actually, in characteristic 2, things get even nicer: we get the simplification

eq~(X0,,X1,Y0,,Y1)i=01(1+Xi+Yi),\begin{equation*}\widetilde{\texttt{eq}}(X_0, \ldots , X_{\ell - 1}, Y_0, \ldots , Y_{\ell - 1}) \coloneqq \prod_{i = 0}^{\ell - 1} \left( 1 + X_i + Y_i \right),\end{equation*}

since XiYi+XiYi=0X_i \cdot Y_i + X_i \cdot Y_i = 0 cancels from each term in the product. Thus, we can get away with just 1\ell - 1 total multiplications.