Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Multilinear extensions

Introduction

In our sum-check protocol notebook, we followed Thaler’s 1 presentation of the sum-check protocol, supplementing it with background material and interactive examples.

In this notebook, we turn to multilinear extensions, which play a central role in the GKR interactive proof for circuit evaluation (Goldwasser, Kalai, and Rothblum 23).

Multilinear extensions: definition, existence, and uniqueness

Recall from the definitions in the sum-check notebook that a multivariate polynomial gg is multilinear if the degree of gg in each variable is at most 1. For example, over any field F\mathbb{F}, the polynomial g1(X0,X1,X2)=X0X1X2+X1X2+X1g_1(X_0, X_1, X_2) = X_0 X_1 X_2 + X_1 X_2 + X_1 is multilinear, while g2(X0,X1,X2)=X0X1X2+X12X2g_2(X_0, X_1, X_2) = X_0 X_1 X_2 + X_1^2 X_2 is not.

Also recall that a polynomial function is obtained by evaluating a polynomial at each input. (Over finite fields, distinct polynomials may define the same polynomial function, so it is useful to keep the distinction explicit.) If the polynomial is multilinear, we call it a multilinear polynomial function. For instance, let f1:F3Ff_1 : \mathbb{F}^3 \to \mathbb{F} be defined by f1(x0,x1,x2)=g1(x0,x1,x2)f_1(x_0, x_1, x_2) = g_1(x_0, x_1, x_2) and f2:F3Ff_2 : \mathbb{F}^3 \to \mathbb{F} by f2(x0,x1,x2)=g2(x0,x1,x2)f_2(x_0, x_1, x_2) = g_2(x_0, x_1, x_2). Then both f1f_1 and f2f_2 are polynomial functions, but only f1f_1 is a multilinear polynomial function.

The proof of the existence part of the following result shows how to use β~\tilde{\beta} to construct a multilinear extension of a given function f:{0,1}vFf : \{0,1\}^v \to \mathbb{F}. The result also establishes uniqueness, so that we may speak of the multilinear extension of ff.

Properties of multilinear extensions

What about the multilinear extension of the product of two functions? In general, the product of multilinear functions is not multinear, so there is no immediate analog of the above proposition for products. For example, define

f:{0,1}2Fbyf(0,0)=f(0,1)=f(1,0)=0andf(1,1)=1,f : \{0,1\}^2 \to \mathbb{F} \quad \text{by} \quad f(0,0) = f(0,1) = f(1,0) = 0 \quad \text{and} \quad f(1,1) = 1,

and define

g:{0,1}2Fbyg(0,0)=0andg(0,1)=g(1,0)=g(1,1)=1.g : \{0,1\}^2 \to \mathbb{F} \quad \text{by} \quad g(0,0) = 0 \quad \text{and} \quad g(0,1) = g(1,0) = g(1,1) = 1.

Then f~:F2F\tilde{f} : \mathbb{F}^2 \to \mathbb{F} is given by

f~(x,y)=xy\tilde{f}(x,y) = xy

and g~:F2F\tilde{g} : \mathbb{F}^2 \to \mathbb{F} is given by

g~(x,y)=x+yxy.\tilde{g}(x,y) = x + y - xy.

However, fg=ffg = f, whence fg~=f~\widetilde{fg} = \tilde{f}, but (f~g~)(x,y)=xy(x+yxy)(\tilde{f}\tilde{g})(x,y) = xy(x + y - xy), which is not multilinear. Hence f~g~\tilde{f}\tilde{g} is not a multilinear extension of fgfg.

Multilinear extensions of special functions

We have already seen the ‘equality’ function β\beta and its multilinear extension β~\tilde{\beta}. It is also clear that if cFc \in \mathbb{F} and f:{0,1}vFf : \{0,1\}^v \to \mathbb{F} is defined by f(b)=cf(\mathbf{b}) = c for all b{0,1}v\mathbf{b} \in \{0,1\}^v, then f~:FvF\tilde{f} : \mathbb{F}^v \to \mathbb{F} defined by f~(x)=c\tilde{f}(\mathbf{x}) = c for all xFv\mathbf{x} \in \mathbb{F}^v is the multilinear extension of ff. (We used this fact in the case c=1c = 1 in the above proof.)

Let F\mathbb{F} be given. We can define Boolean operators on {0,1}\{0,1\} and extend their definitions to all of F\mathbb{F} as follows.

Note that these extensions agree with the Boolean operators only on {0,1}2\{0,1\}^2; over F2\mathbb{F}^2 they define polynomial relaxations rather than Boolean operations.

References
  1. Thaler, J. (2015). A note on the GKR protocol. https://api.semanticscholar.org/CorpusID:16402332
  2. Goldwasser, S., Kalai, Y. T., & Rothblum, G. N. (2008). Delegating computation: Interactive proofs for muggles. Proceedings of the 40th Annual ACM Symposium on Theory of Computing (STOC), 113–122. 10.1145/1374376.1374396
  3. Goldwasser, S., Kalai, Y. T., & Rothblum, G. N. (2015). Delegating computation: Interactive proofs for muggles. Journal of the ACM, 62(4), 1–64. 10.1145/2699436