Skip to content

Chapter 101. Multilinear Maps

Multilinear maps generalize linear maps to functions with several vector inputs. A linear map has one vector argument. A bilinear map has two vector arguments. A multilinear map has any finite number of vector arguments and is linear in each argument separately.

This chapter gives the language needed for tensor products, exterior algebra, symmetric algebra, determinants, differential forms, and higher-order tensors. The main principle is simple: multilinear maps are nonlinear as functions of all variables together, but linear in each variable when the others are fixed. Standard references formulate tensor products through this same universal correspondence between multilinear maps and linear maps from tensor products.

101.1 Linear Maps Recalled

Let VV and WW be vector spaces over a field FF.

A function

T:VW T : V \to W

is linear if

T(u+v)=T(u)+T(v) T(u+v)=T(u)+T(v)

and

T(cv)=cT(v) T(cv)=cT(v)

for all u,vVu,v\in V and all cFc\in F.

Equivalently,

T(au+bv)=aT(u)+bT(v). T(au+bv)=aT(u)+bT(v).

Linearity says that TT preserves linear combinations.

Multilinearity applies this same condition to several inputs, one input at a time.

101.2 Definition of a Multilinear Map

Let

V1,V2,,Vk,W V_1,V_2,\ldots,V_k,W

be vector spaces over FF.

A map

A:V1×V2××VkW A : V_1\times V_2\times \cdots \times V_k \to W

is multilinear if it is linear in each argument separately.

That means: for each index ii, if all variables except the ii-th one are held fixed, then the function

viA(v1,,vi,,vk) v_i \mapsto A(v_1,\ldots,v_i,\ldots,v_k)

is linear.

Explicitly,

A(v1,,aui+bwi,,vk)=aA(v1,,ui,,vk)+bA(v1,,wi,,vk). A(v_1,\ldots,au_i+bw_i,\ldots,v_k) = aA(v_1,\ldots,u_i,\ldots,v_k) + bA(v_1,\ldots,w_i,\ldots,v_k).

This must hold for every argument position ii, every pair ui,wiViu_i,w_i\in V_i, and every pair of scalars a,bFa,b\in F.

A multilinear map with kk inputs is also called a kk-linear map.

101.3 Special Cases

The cases k=1k=1, k=2k=2, and k=3k=3 have special names.

Number of inputsNameForm
1Linear mapVWV\to W
2Bilinear mapV1×V2WV_1\times V_2\to W
3Trilinear mapV1×V2×V3WV_1\times V_2\times V_3\to W
kkMultilinear mapV1××VkWV_1\times\cdots\times V_k\to W

Thus multilinear maps extend the familiar notion of a linear map.

101.4 Bilinear Maps

A bilinear map is a map

B:V×WU B : V\times W \to U

such that

B(av1+bv2,w)=aB(v1,w)+bB(v2,w) B(av_1+bv_2,w) = aB(v_1,w)+bB(v_2,w)

and

B(v,aw1+bw2)=aB(v,w1)+bB(v,w2). B(v,aw_1+bw_2) = aB(v,w_1)+bB(v,w_2).

Examples include:

MapFormulaType
Dot product(u,v)uv(u,v)\mapsto u\cdot vRn×RnR\mathbb{R}^n\times\mathbb{R}^n\to\mathbb{R}
Matrix multiplication(A,B)AB(A,B)\mapsto ABMm,n×Mn,pMm,pM_{m,n}\times M_{n,p}\to M_{m,p}
Polynomial multiplication(p,q)pq(p,q)\mapsto pqPm×PnPm+nP_m\times P_n\to P_{m+n}
Outer product(u,v)uvT(u,v)\mapsto uv^TRm×RnMm,n\mathbb{R}^m\times\mathbb{R}^n\to M_{m,n}

The dot product is bilinear over real vector spaces. Matrix multiplication is bilinear because it distributes over addition and respects scalar multiplication in each factor.

101.5 Multilinearity Versus Linearity

A multilinear map is generally not linear as a map from the product space.

For example, the ordinary product

B(x,y)=xy B(x,y)=xy

is bilinear as a map

R×RR. \mathbb{R}\times\mathbb{R}\to\mathbb{R}.

It is linear in xx when yy is fixed, and linear in yy when xx is fixed.

But it is not linear in the pair (x,y)(x,y). Indeed,

B((x1,y1)+(x2,y2))=(x1+x2)(y1+y2). B((x_1,y_1)+(x_2,y_2)) = (x_1+x_2)(y_1+y_2).

Expanding gives

x1y1+x1y2+x2y1+x2y2. x_1y_1+x_1y_2+x_2y_1+x_2y_2.

This differs from

B(x1,y1)+B(x2,y2)=x1y1+x2y2. B(x_1,y_1)+B(x_2,y_2) = x_1y_1+x_2y_2.

The extra cross terms show why multilinearity must be understood one variable at a time.

101.6 Coordinate Formula

Let

A:V1××VkW A : V_1\times\cdots\times V_k\to W

be multilinear.

Suppose each ViV_i has a basis

e1(i),,eni(i). e^{(i)}_1,\ldots,e^{(i)}_{n_i}.

If

vi=ji=1niaji(i)eji(i), v_i=\sum_{j_i=1}^{n_i} a^{(i)}_{j_i}e^{(i)}_{j_i},

then multilinearity gives

A(v1,,vk)=j1,,jkaj1(1)ajk(k)A(ej1(1),,ejk(k)). A(v_1,\ldots,v_k) = \sum_{j_1,\ldots,j_k} a^{(1)}_{j_1}\cdots a^{(k)}_{j_k} A(e^{(1)}_{j_1},\ldots,e^{(k)}_{j_k}).

Thus a multilinear map is determined completely by its values on basis tuples.

This is the higher-order version of the fact that a linear map is determined by its values on a basis.

101.7 Components

When W=FW=F, a multilinear map

A:V1××VkF A : V_1\times\cdots\times V_k\to F

is called a multilinear form.

Its values on basis tuples are scalars:

A(ej1(1),,ejk(k)). A(e^{(1)}_{j_1},\ldots,e^{(k)}_{j_k}).

These scalars form a multidimensional array of components.

For k=2k=2, the component array is a matrix.

For k=3k=3, the component array has three indices.

For general kk, the component array has kk indices.

This is one reason tensors are often represented computationally as multidimensional arrays.

101.8 Multilinear Forms

A multilinear form is a scalar-valued multilinear map.

Examples include:

FormNumber of inputsMeaning
Linear functional1Measures one vector
Bilinear form2Pairs two vectors
Inner product2Measures angle and length
DeterminantnnMeasures signed volume
Alternating formkkMeasures oriented kk-volume

The determinant is the most important classical example.

For vectors v1,,vnFnv_1,\ldots,v_n\in F^n, the function

(v1,,vn)det[v1  vn] (v_1,\ldots,v_n) \mapsto \det[v_1\ \cdots\ v_n]

is multilinear in the column vectors.

It is also alternating, since swapping two columns changes the sign.

101.9 Multilinear Maps and Tensor Products

Tensor products are designed to represent multilinear maps as linear maps.

Let

A:V1××VkW A : V_1\times\cdots\times V_k\to W

be multilinear.

Then there is a unique linear map

A~:V1VkW \widetilde{A} : V_1\otimes\cdots\otimes V_k \to W

such that

A~(v1vk)=A(v1,,vk). \widetilde{A}(v_1\otimes\cdots\otimes v_k) = A(v_1,\ldots,v_k).

This is the universal property of the tensor product.

It says that studying multilinear maps out of a product is equivalent to studying linear maps out of a tensor product. This correspondence is a standard formulation of the tensor product.

101.10 Space of Multilinear Maps

The set of all multilinear maps

V1××VkW V_1\times\cdots\times V_k\to W

is itself a vector space.

If AA and BB are multilinear, then

(A+B)(v1,,vk)=A(v1,,vk)+B(v1,,vk). (A+B)(v_1,\ldots,v_k) = A(v_1,\ldots,v_k)+B(v_1,\ldots,v_k).

If cFc\in F, then

(cA)(v1,,vk)=cA(v1,,vk). (cA)(v_1,\ldots,v_k) = cA(v_1,\ldots,v_k).

Both operations preserve multilinearity.

This vector space is often denoted

Mult(V1,,Vk;W). \operatorname{Mult}(V_1,\ldots,V_k;W).

When W=FW=F, the space of multilinear forms is naturally related to

V1Vk. V_1^*\otimes\cdots\otimes V_k^*.

101.11 Dimension Count

Assume all vector spaces are finite-dimensional.

Let

dimVi=ni \dim V_i=n_i

and

dimW=m. \dim W=m.

A multilinear map is determined by its values on all basis tuples.

There are

n1n2nk n_1n_2\cdots n_k

basis tuples.

For each tuple, the value lies in WW, an mm-dimensional space.

Therefore,

dimMult(V1,,Vk;W)=mn1n2nk. \dim \operatorname{Mult}(V_1,\ldots,V_k;W) = m n_1n_2\cdots n_k.

For scalar-valued multilinear forms,

dimMult(V1,,Vk;F)=n1n2nk. \dim \operatorname{Mult}(V_1,\ldots,V_k;F) = n_1n_2\cdots n_k.

101.12 Alternating Multilinear Maps

A multilinear map

A:VkW A : V^k\to W

is alternating if

A(v1,,vk)=0 A(v_1,\ldots,v_k)=0

whenever two arguments are equal.

Equivalently, over fields of characteristic not equal to 22, swapping two arguments changes the sign:

A(,vi,,vj,)=A(,vj,,vi,). A(\ldots,v_i,\ldots,v_j,\ldots) = - A(\ldots,v_j,\ldots,v_i,\ldots).

The determinant is alternating.

Exterior algebra is built to represent alternating multilinear maps, just as tensor algebra represents general multilinear maps.

101.13 Symmetric Multilinear Maps

A multilinear map

A:VkW A : V^k\to W

is symmetric if its value remains unchanged under every permutation of the arguments:

A(vσ(1),,vσ(k))=A(v1,,vk) A(v_{\sigma(1)},\ldots,v_{\sigma(k)}) = A(v_1,\ldots,v_k)

for every permutation σSk\sigma\in S_k.

Examples include symmetric bilinear forms:

B(u,v)=B(v,u). B(u,v)=B(v,u).

The Hessian of a sufficiently smooth scalar function gives a symmetric bilinear form at each point.

Symmetric algebra represents symmetric multilinear structure.

101.14 Tensor Fields and Multilinear Maps

In geometry, tensors are often defined as multilinear maps on vectors and covectors.

For example, a tensor of type (r,s)(r,s) on a vector space VV may be viewed as a multilinear map taking rr covector inputs and ss vector inputs:

T:(V)r×VsF. T : (V^*)^r\times V^s \to F.

This coordinate-free definition is important because it describes the tensor independently of any chosen basis.

Coordinate arrays are representations of tensors, not the tensors themselves.

101.15 Currying

A multilinear map can be partially evaluated.

If

A:V1×V2×V3W A : V_1\times V_2\times V_3\to W

is trilinear and v1V1v_1\in V_1 is fixed, then

(v2,v3)A(v1,v2,v3) (v_2,v_3) \mapsto A(v_1,v_2,v_3)

is bilinear.

This process is called partial evaluation.

It allows multilinear maps to be studied recursively.

A bilinear map

B:V×WU B : V\times W\to U

may also be viewed as a linear map

VHom(W,U) V\to \operatorname{Hom}(W,U)

by sending vv to the linear map

wB(v,w). w\mapsto B(v,w).

This transformation of arguments is called currying.

101.16 Pullback of Multilinear Forms

Let

Ti:UiVi T_i : U_i\to V_i

be linear maps, and let

A:V1××VkF A : V_1\times\cdots\times V_k\to F

be a multilinear form.

The pullback of AA along the maps TiT_i is the multilinear form

(T1,,Tk)A:U1××UkF (T_1,\ldots,T_k)^*A : U_1\times\cdots\times U_k\to F

defined by

((T1,,Tk)A)(u1,,uk)=A(T1u1,,Tkuk). ((T_1,\ldots,T_k)^*A)(u_1,\ldots,u_k) = A(T_1u_1,\ldots,T_ku_k).

Pullback is the natural way multilinear forms change under linear maps.

In geometry, this idea extends to differential forms and smooth maps between manifolds.

101.17 Example: Matrix Multiplication

Matrix multiplication is bilinear.

Let

A1,A2Mm,n,BMn,p,cF. A_1,A_2\in M_{m,n}, \qquad B\in M_{n,p}, \qquad c\in F.

Then

(A1+A2)B=A1B+A2B (A_1+A_2)B = A_1B+A_2B

and

(cA1)B=c(A1B). (cA_1)B = c(A_1B).

Similarly,

A(B1+B2)=AB1+AB2 A(B_1+B_2) = AB_1+AB_2

and

A(cB1)=c(AB1). A(cB_1) = c(AB_1).

Thus

(A,B)AB (A,B)\mapsto AB

is bilinear.

This example is important because it shows that multilinearity appears in ordinary matrix algebra, not only in abstract tensor theory.

101.18 Example: Determinant

The determinant

det:(Fn)nF \det : (F^n)^n\to F

takes nn column vectors and returns a scalar.

It is multilinear in its columns.

For n=2n=2, if

u=[ab],v=[cd], u= \begin{bmatrix} a \\ b \end{bmatrix}, \qquad v= \begin{bmatrix} c \\ d \end{bmatrix},

then

det[u v]=adbc. \det[u\ v] = ad-bc.

If uu is replaced by u1+u2u_1+u_2, the determinant splits into the sum of two determinants. If uu is multiplied by cc, the determinant is multiplied by cc.

The same holds in every column.

This multilinearity is one of the structural reasons determinants are useful.

101.19 Example: A Trilinear Map

Let

A:R3×R3×R3R A : \mathbb{R}^3\times\mathbb{R}^3\times\mathbb{R}^3\to\mathbb{R}

be defined by

A(u,v,w)=u(v×w). A(u,v,w)=u\cdot(v\times w).

This is the scalar triple product.

It measures signed volume.

The map is trilinear. It is linear in uu because the dot product is linear in uu. It is linear in vv and ww because the cross product is bilinear.

It is also alternating. If two vectors are equal, the volume collapses to zero.

101.20 Computational Representation

In computation, a scalar-valued kk-linear map on

Fn1××Fnk F^{n_1}\times\cdots\times F^{n_k}

can be stored as an array

Ai1,,ik. A_{i_1,\ldots,i_k}.

Then

A(v1,,vk)=i1,,ikAi1,,ik(v1)i1(vk)ik. A(v_1,\ldots,v_k) = \sum_{i_1,\ldots,i_k} A_{i_1,\ldots,i_k} (v_1)_{i_1}\cdots(v_k)_{i_k}.

For vector-valued maps into FmF^m, one additional output index is used:

Ai1,,ikα. A^\alpha_{i_1,\ldots,i_k}.

The output components are

A(v1,,vk)α=i1,,ikAi1,,ikα(v1)i1(vk)ik. A(v_1,\ldots,v_k)^\alpha = \sum_{i_1,\ldots,i_k} A^\alpha_{i_1,\ldots,i_k} (v_1)_{i_1}\cdots(v_k)_{i_k}.

This notation is the bridge between abstract multilinear algebra and tensor computation.

101.21 Summary

Multilinear maps are functions with several vector inputs that are linear in each input separately.

ConceptMeaning
Linear mapOne vector input
Bilinear mapTwo vector inputs
Multilinear mapSeveral vector inputs
Multilinear formScalar-valued multilinear map
Alternating mapChanges sign under swaps
Symmetric mapInvariant under permutations

The central structural fact is that multilinear maps from

V1××Vk V_1\times\cdots\times V_k

correspond to linear maps from

V1Vk. V_1\otimes\cdots\otimes V_k.

This correspondence explains why tensor products are the natural language for multilinear algebra. Multilinear maps give the operational viewpoint; tensor products give the linear representation.