Von Neumann’s minimax theorem
through Fourier-Motzkin elimination

Mark Voorneveld Department of Economics, Stockholm School of Economics, Box 6501, 113 83 Stockholm, Sweden, [email protected]
(August 21, 2024)
Abstract

Fourier-Motzkin elimination, a standard method for solving systems of linear inequalities, leads to an elementary, short, and self-contained proof of von Neumann’s minimax theorem.

1 Introduction

Fourier-Motzkin elimination (FME) is a standard method for solving systems of linear inequalities. It was described by Fourier (1826) for a specific problem and rediscovered by Motzkin (1936) in his PhD dissertation; Khachiyan (2009) gives an overview. Analogous to its better-known sibling Gaussian elimination for systems of linear equations, an elimination step involves generating new inequalities, implied by the original ones, from which an unknown “disappears” because it gets a coefficient equal to zero.

FME has been used as a stepping stone to establish intermediate results — like variants of Farkas’ Lemma or the duality theorem in linear programming — which in their turn can be used to prove the minimax theorem of von Neumann (1928). A recent paper that details this convex analysis methodology and gives a great historical overview is von Stengel (2024). But such intermediate steps are unnecessary: FME alone easily establishes the minimax theorem. Section 2 summarizes FME, Section 3 uses it to prove the minimax theorem.

notation: m𝑚mitalic_m and n𝑛nitalic_n denote positive integers and [n]={1,,n}delimited-[]𝑛1𝑛[n]=\{1,\ldots,n\}[ italic_n ] = { 1 , … , italic_n }. Vectors 𝟎0\mathbf{0}bold_0 and 𝟏1\mathbf{1}bold_1 have all components equal to zero and one, respectively; eisubscript𝑒𝑖e_{i}italic_e start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT is the standard basis vector with i𝑖iitalic_i-th component equal to one and all others equal to zero. The identity matrix is I𝐼Iitalic_I. Their dimension depends on the context. Unless explicitly written otherwise, vectors are column vectors. The transpose (row vector) of a vector v𝑣vitalic_v is denoted by vsuperscript𝑣topv^{\top}italic_v start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT. For vectors of equal dimension, vw𝑣𝑤v\leq witalic_v ≤ italic_w means that viwisubscript𝑣𝑖subscript𝑤𝑖v_{i}\leq w_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≤ italic_w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for all components i𝑖iitalic_i.

2 A review of Fourier-Motzkin elimination

Given matrix Am×n𝐴superscript𝑚𝑛A\in\mathbb{R}^{m\times n}italic_A ∈ blackboard_R start_POSTSUPERSCRIPT italic_m × italic_n end_POSTSUPERSCRIPT and vector bm𝑏superscript𝑚b\in\mathbb{R}^{m}italic_b ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT, consider the system Axb𝐴𝑥𝑏Ax\leq bitalic_A italic_x ≤ italic_b of m𝑚mitalic_m linear inequalities in n𝑛nitalic_n unknowns x=(x1,,xn)𝑥subscript𝑥1subscript𝑥𝑛x=(x_{1},\ldots,x_{n})italic_x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ):

ai1x1++ainxnbii[m].formulae-sequencesubscript𝑎𝑖1subscript𝑥1subscript𝑎𝑖𝑛subscript𝑥𝑛subscript𝑏𝑖𝑖delimited-[]𝑚a_{i1}x_{1}+\cdots+a_{in}x_{n}\leq b_{i}\qquad i\in[m].italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_i italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ≤ italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_i ∈ [ italic_m ] .

Divide the m𝑚mitalic_m inequalities into three types, depending on whether the unknown x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT has a coefficient (G)reater than, (E)qual to, or (L)ess than zero:

G={i[m]:ai1>0},E={i[m]:ai1=0},L={i[m]:ai1<0}.formulae-sequence𝐺conditional-set𝑖delimited-[]𝑚subscript𝑎𝑖10formulae-sequence𝐸conditional-set𝑖delimited-[]𝑚subscript𝑎𝑖10𝐿conditional-set𝑖delimited-[]𝑚subscript𝑎𝑖10G=\bigl{\{}i\in[m]:a_{i1}>0\bigr{\}},\qquad E=\bigl{\{}i\in[m]:a_{i1}=0\bigr{% \}},\qquad L=\bigl{\{}i\in[m]:a_{i1}<0\bigr{\}}.italic_G = { italic_i ∈ [ italic_m ] : italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT > 0 } , italic_E = { italic_i ∈ [ italic_m ] : italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT = 0 } , italic_L = { italic_i ∈ [ italic_m ] : italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT < 0 } .

Inequalities iG𝑖𝐺i\in Gitalic_i ∈ italic_G give upper bounds on x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Multiply both sides by 1/ai1>01subscript𝑎𝑖101/a_{i1}>01 / italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT > 0 and rewrite:

for all iG:x11ai1bi1ai1(ai2x2++ainxn).\text{for all }i\in G:\qquad x_{1}\leq\frac{1}{a_{i1}}b_{i}-\frac{1}{a_{i1}}% \left(a_{i2}x_{2}+\cdots+a_{in}x_{n}\right).for all italic_i ∈ italic_G : italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ≤ divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG ( italic_a start_POSTSUBSCRIPT italic_i 2 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_i italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) . (1)

Inequalities jL𝑗𝐿j\in Litalic_j ∈ italic_L give lower bounds on x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. Multiply both sides by 1/aj1>01subscript𝑎𝑗10-1/a_{j1}>0- 1 / italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT > 0 and rewrite:

for all jL:1aj1bj1aj1(aj2x2++ajnxn)x1.\text{for all }j\in L:\qquad\frac{1}{a_{j1}}b_{j}-\frac{1}{a_{j1}}\left(a_{j2}% x_{2}+\cdots+a_{jn}x_{n}\right)\leq x_{1}.for all italic_j ∈ italic_L : divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG italic_b start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG ( italic_a start_POSTSUBSCRIPT italic_j 2 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_j italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) ≤ italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT . (2)

Inequalities kE𝑘𝐸k\in Eitalic_k ∈ italic_E don’t involve x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and impose no restrictions on it:

for all kE:ak1=0x1+ak2x2++aknxnbk.\text{for all }k\in E:\qquad\underbrace{a_{k1}}_{=0}x_{1}+a_{k2}x_{2}+\cdots+a% _{kn}x_{n}\leq b_{k}.for all italic_k ∈ italic_E : under⏟ start_ARG italic_a start_POSTSUBSCRIPT italic_k 1 end_POSTSUBSCRIPT end_ARG start_POSTSUBSCRIPT = 0 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + italic_a start_POSTSUBSCRIPT italic_k 2 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_k italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ≤ italic_b start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT . (3)

So we have a solution x=(x1,,xn)𝑥subscript𝑥1subscript𝑥𝑛x=(x_{1},\ldots,x_{n})italic_x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) to the linear inequalities Axb𝐴𝑥𝑏Ax\leq bitalic_A italic_x ≤ italic_b if and only if (x2,,xn)subscript𝑥2subscript𝑥𝑛(x_{2},\ldots,x_{n})( italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ), the vector of unknowns from which x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT was eliminated, satisfies the linear inequalities in (3) and those that say that each upper bound it imposes on x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT in (1) is indeed greater than or equal to each lower bound in (2), leaving room to squeeze the remaining unknown x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT in between: for all iG𝑖𝐺i\in Gitalic_i ∈ italic_G and all jL𝑗𝐿j\in Litalic_j ∈ italic_L,

1aj1bj1aj1(aj2x2++ajnxn)1ai1bi1ai1(ai2x2++ainxn),1subscript𝑎𝑗1subscript𝑏𝑗1subscript𝑎𝑗1subscript𝑎𝑗2subscript𝑥2subscript𝑎𝑗𝑛subscript𝑥𝑛1subscript𝑎𝑖1subscript𝑏𝑖1subscript𝑎𝑖1subscript𝑎𝑖2subscript𝑥2subscript𝑎𝑖𝑛subscript𝑥𝑛\frac{1}{a_{j1}}b_{j}-\frac{1}{a_{j1}}\left(a_{j2}x_{2}+\cdots+a_{jn}x_{n}% \right)\leq\frac{1}{a_{i1}}b_{i}-\frac{1}{a_{i1}}\left(a_{i2}x_{2}+\cdots+a_{% in}x_{n}\right),divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG italic_b start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG ( italic_a start_POSTSUBSCRIPT italic_j 2 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_j italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) ≤ divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG ( italic_a start_POSTSUBSCRIPT italic_i 2 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_i italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) ,

or, equivalently, after rearranging and noticing that the x1subscript𝑥1x_{1}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT-terms cancel out,

1ai1(ai1x1++ainxn)1aj1(aj1x1++ajnxn)1ai1bi1aj1bj.1subscript𝑎𝑖1subscript𝑎𝑖1subscript𝑥1subscript𝑎𝑖𝑛subscript𝑥𝑛1subscript𝑎𝑗1subscript𝑎𝑗1subscript𝑥1subscript𝑎𝑗𝑛subscript𝑥𝑛1subscript𝑎𝑖1subscript𝑏𝑖1subscript𝑎𝑗1subscript𝑏𝑗\frac{1}{a_{i1}}\left(a_{i1}x_{1}+\cdots+a_{in}x_{n}\right)-\frac{1}{a_{j1}}% \left(a_{j1}x_{1}+\cdots+a_{jn}x_{n}\right)\leq\frac{1}{a_{i1}}b_{i}-\frac{1}{% a_{j1}}b_{j}.divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG ( italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_i italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG ( italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT + ⋯ + italic_a start_POSTSUBSCRIPT italic_j italic_n end_POSTSUBSCRIPT italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) ≤ divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG italic_b start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT . (4)

These inequalities are nonnegative combinations of those in the original system Axb𝐴𝑥𝑏Ax\leq bitalic_A italic_x ≤ italic_b, i.e., of the form yAxybsuperscript𝑦top𝐴𝑥superscript𝑦top𝑏y^{\top}Ax\leq y^{\top}bitalic_y start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A italic_x ≤ italic_y start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_b for some nonnegative vector y=(y1,,ym)𝑦subscript𝑦1subscript𝑦𝑚y=(y_{1},\ldots,y_{m})italic_y = ( italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ): for inequality kE𝑘𝐸k\in Eitalic_k ∈ italic_E in (3), y=ek𝑦subscript𝑒𝑘y=e_{k}italic_y = italic_e start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT; and for inequality (4) arising from iG𝑖𝐺i\in Gitalic_i ∈ italic_G and jL𝑗𝐿j\in Litalic_j ∈ italic_L, y=1ai1ei+(1aj1)ej𝑦1subscript𝑎𝑖1subscript𝑒𝑖1subscript𝑎𝑗1subscript𝑒𝑗y=\tfrac{1}{a_{i1}}e_{i}+\left(-\tfrac{1}{a_{j1}}\right)e_{j}italic_y = divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_i 1 end_POSTSUBSCRIPT end_ARG italic_e start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + ( - divide start_ARG 1 end_ARG start_ARG italic_a start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT end_ARG ) italic_e start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT.

Repeating this process to eliminate more unknowns and using that nonnegative combinations of nonnegative combinations of some linear inequalities are themselves such nonnegative combinations yields a crucial insight: after eliminating k𝑘kitalic_k unknowns, the set

{(xk+1,,xn):there exist (x1,,xk) such that x=(x1,,xn) solves Axb}conditional-setsubscript𝑥𝑘1subscript𝑥𝑛there exist subscript𝑥1subscript𝑥𝑘 such that 𝑥subscript𝑥1subscript𝑥𝑛 solves 𝐴𝑥𝑏\bigl{\{}(x_{k+1},\ldots,x_{n}):\text{there exist }(x_{1},\ldots,x_{k})\text{ % such that }x=(x_{1},\ldots,x_{n})\text{ solves }Ax\leq b\bigr{\}}{ ( italic_x start_POSTSUBSCRIPT italic_k + 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) : there exist ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) such that italic_x = ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) solves italic_A italic_x ≤ italic_b }

is again the set of solutions to a system of linear inequalities, each of which is a nonnegative combination of those in Axb𝐴𝑥𝑏Ax\leq bitalic_A italic_x ≤ italic_b, i.e., of the form yAxybsuperscript𝑦top𝐴𝑥superscript𝑦top𝑏y^{\top}Ax\leq y^{\top}bitalic_y start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A italic_x ≤ italic_y start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_b for some nonnegative vector y=(y1,,ym)𝑦subscript𝑦1subscript𝑦𝑚y=(y_{1},\ldots,y_{m})italic_y = ( italic_y start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_y start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ).

3 Von Neumann’s minimax theorem

Fix a matrix Am×n𝐴superscript𝑚𝑛A\in\mathbb{R}^{m\times n}italic_A ∈ blackboard_R start_POSTSUPERSCRIPT italic_m × italic_n end_POSTSUPERSCRIPT where entry aijsubscript𝑎𝑖𝑗a_{ij}italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT is the payoff to player 1 from player 2 if the former chooses row i[m]𝑖delimited-[]𝑚i\in[m]italic_i ∈ [ italic_m ] and the latter column j[n]𝑗delimited-[]𝑛j\in[n]italic_j ∈ [ italic_n ]. If player 1 assigns probabilities p=(p1,,pm)𝑝subscript𝑝1subscript𝑝𝑚p=(p_{1},\ldots,p_{m})italic_p = ( italic_p start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_p start_POSTSUBSCRIPT italic_m end_POSTSUBSCRIPT ) to the m𝑚mitalic_m rows (p𝟎𝑝0p\geq\mathbf{0}italic_p ≥ bold_0 and 𝟏p=1superscript1top𝑝1\mathbf{1}^{\top}p=1bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_p = 1) and player 2 assigns probabilities q=(q1,,qn)𝑞subscript𝑞1subscript𝑞𝑛q=(q_{1},\ldots,q_{n})italic_q = ( italic_q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_q start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ) to the n𝑛nitalic_n columns (q𝟎𝑞0q\geq\mathbf{0}italic_q ≥ bold_0 and 𝟏q=1superscript1top𝑞1\mathbf{1}^{\top}q=1bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_q = 1), player 1’s expected payoff is pAqsuperscript𝑝top𝐴𝑞p^{\top}Aqitalic_p start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A italic_q. Given p𝑝pitalic_p, the expected payoff is a convex combination of those in row vector pAsuperscript𝑝top𝐴p^{\top}Aitalic_p start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A: player 1 is sure that this expected payoff is at least v𝑣vitalic_v for any number v𝑣vitalic_v with pAv𝟏superscript𝑝top𝐴𝑣superscript1topp^{\top}A\geq v\mathbf{1}^{\top}italic_p start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A ≥ italic_v bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT. Through a clever choice of p𝑝pitalic_p, the highest expected payoff this player can assure therefore solves

maximize v subject to pAv𝟏,p𝟎,𝟏p=1.formulae-sequencemaximize 𝑣 subject to superscript𝑝top𝐴𝑣superscript1topformulae-sequence𝑝0superscript1top𝑝1\displaystyle\text{maximize }v\text{ subject to }p^{\top}A\geq v\mathbf{1}^{% \top},p\geq\mathbf{0},\mathbf{1}^{\top}p=1.maximize italic_v subject to italic_p start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A ≥ italic_v bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT , italic_p ≥ bold_0 , bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_p = 1 . (5)
Similarly, player 2, who wants to pay as little as possible, can make sure that player 1’s expected payoff is not more than the solution to
minimize v subject to Aqv𝟏,q𝟎,𝟏q=1.formulae-sequenceminimize 𝑣 subject to 𝐴𝑞𝑣1formulae-sequence𝑞0superscript1top𝑞1\displaystyle\text{minimize }v\text{ subject to }Aq\leq v\mathbf{1},q\geq% \mathbf{0},\mathbf{1}^{\top}q=1.minimize italic_v subject to italic_A italic_q ≤ italic_v bold_1 , italic_q ≥ bold_0 , bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_q = 1 . (6)

Von Neumann’s minimax theorem says that (5) and (6) have the same optimal value. For a proof, it suffices to find (p,q,v)m×n×superscript𝑝superscript𝑞superscript𝑣superscript𝑚superscript𝑛(p^{*},q^{*},v^{*})\in\mathbb{R}^{m}\times\mathbb{R}^{n}\times\mathbb{R}( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT × blackboard_R such that (p,v)superscript𝑝superscript𝑣(p^{*},v^{*})( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) is feasible in (5) and (q,v)superscript𝑞superscript𝑣(q^{*},v^{*})( italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) is feasible in (6). Then (p,v)superscript𝑝superscript𝑣(p^{*},v^{*})( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) solves (5) since each other feasible (p,v)𝑝𝑣(p,v)( italic_p , italic_v ) has

v=v(𝟏q)(pA)qp(v𝟏)=v.𝑣𝑣superscript1topsuperscript𝑞superscript𝑝top𝐴superscript𝑞superscript𝑝topsuperscript𝑣1superscript𝑣v=v\left(\mathbf{1}^{\top}q^{*}\right)\leq(p^{\top}A)q^{*}\leq p^{\top}(v^{*}% \mathbf{1})=v^{*}.italic_v = italic_v ( bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) ≤ ( italic_p start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A ) italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ≤ italic_p start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT ( italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT bold_1 ) = italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT .

Likewise, (q,v)superscript𝑞superscript𝑣(q^{*},v^{*})( italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) solves (6) and both problems have optimal value vsuperscript𝑣v^{*}italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT. Finding such feasible points is easy with FME. To facilitate comparison with Section 2, write all constraints in (6) as linear inequalities Aqv𝟏𝟎𝐴𝑞𝑣10Aq-v\mathbf{1}\leq\mathbf{0}italic_A italic_q - italic_v bold_1 ≤ bold_0, Iq𝟎𝐼𝑞0-Iq\leq\mathbf{0}- italic_I italic_q ≤ bold_0, 𝟏q1superscript1top𝑞1\mathbf{1}^{\top}q\leq 1bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_q ≤ 1, and (𝟏)q1superscript1top𝑞1(-\mathbf{1})^{\top}q\leq-1( - bold_1 ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_q ≤ - 1. In matrix form:

A^[qv]b^ with A^=[A𝟏I𝟎𝟏0𝟏0],b^=[𝟎𝟎11].formulae-sequence^𝐴matrix𝑞𝑣^𝑏 with formulae-sequence^𝐴matrix𝐴1𝐼0superscript1top0superscript1top0^𝑏matrix0011\widehat{A}\begin{bmatrix}q\\ v\end{bmatrix}\leq\widehat{b}\qquad\text{ with }\qquad\widehat{A}=\begin{% bmatrix}[r]A\phantom{{}^{\top}}&-\mathbf{1}\\ -I\phantom{{}^{\top}}&\mathbf{0}\\ \mathbf{1}^{\top}&0\\ -\mathbf{1}^{\top}&0\end{bmatrix},\quad\widehat{b}=\begin{bmatrix}[r]\mathbf{0% }\\ \mathbf{0}\\ 1\\ -1\end{bmatrix}.over^ start_ARG italic_A end_ARG [ start_ARG start_ROW start_CELL italic_q end_CELL end_ROW start_ROW start_CELL italic_v end_CELL end_ROW end_ARG ] ≤ over^ start_ARG italic_b end_ARG with over^ start_ARG italic_A end_ARG = [ start_ARG start_ROW start_CELL italic_A end_CELL start_CELL - bold_1 end_CELL end_ROW start_ROW start_CELL - italic_I end_CELL start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL end_ROW start_ROW start_CELL - bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT end_CELL start_CELL 0 end_CELL end_ROW end_ARG ] , over^ start_ARG italic_b end_ARG = [ start_ARG start_ROW start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL bold_0 end_CELL end_ROW start_ROW start_CELL 1 end_CELL end_ROW start_ROW start_CELL - 1 end_CELL end_ROW end_ARG ] . (7)
Theorem 1.

There are (p,q,v)m×n×superscript𝑝superscript𝑞superscript𝑣superscript𝑚superscript𝑛(p^{*},q^{*},v^{*})\in\mathbb{R}^{m}\times\mathbb{R}^{n}\times\mathbb{R}( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT × blackboard_R such that (p,v)superscript𝑝superscript𝑣(p^{*},v^{*})( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) is feasible in (5) and (q,v)superscript𝑞superscript𝑣(q^{*},v^{*})( italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) is feasible in (6).

Proof.

Eliminate q1,,qnsubscript𝑞1subscript𝑞𝑛q_{1},\ldots,q_{n}italic_q start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_q start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT by FME from (7) to find, say, r𝑟ritalic_r linear inequalities α1vβ1subscript𝛼1𝑣subscript𝛽1\alpha_{1}v\leq\beta_{1}italic_α start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v ≤ italic_β start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, …, αrvβrsubscript𝛼𝑟𝑣subscript𝛽𝑟\alpha_{r}v\leq\beta_{r}italic_α start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT italic_v ≤ italic_β start_POSTSUBSCRIPT italic_r end_POSTSUBSCRIPT in the unknown v𝑣vitalic_v only, whose solutions are

{v: there is a q such that A^[qv]b^}.conditional-set𝑣 there is a q such that ^𝐴matrix𝑞𝑣^𝑏\left\{v:\text{ there is a $q$ such that }\widehat{A}\begin{bmatrix}q\\ v\end{bmatrix}\leq\widehat{b}\right\}.{ italic_v : there is a italic_q such that over^ start_ARG italic_A end_ARG [ start_ARG start_ROW start_CELL italic_q end_CELL end_ROW start_ROW start_CELL italic_v end_CELL end_ROW end_ARG ] ≤ over^ start_ARG italic_b end_ARG } . (8)

System (7) is feasible and bounds v𝑣vitalic_v from below by, for instance, the lowest payoff in A𝐴Aitalic_A. Hence, so do the inequalities αivβisubscript𝛼𝑖𝑣subscript𝛽𝑖\alpha_{i}v\leq\beta_{i}italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_v ≤ italic_β start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT for i[r]𝑖delimited-[]𝑟i\in[r]italic_i ∈ [ italic_r ]: αi<0subscript𝛼𝑖0\alpha_{i}<0italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT < 0 for some i[r]𝑖delimited-[]𝑟i\in[r]italic_i ∈ [ italic_r ]. The smallest element of (8) is the greatest lower bound v=max{βi/αi:i[r] and αi<0}superscript𝑣:subscript𝛽𝑖subscript𝛼𝑖𝑖delimited-[]𝑟 and subscript𝛼𝑖0v^{*}=\max\left\{\beta_{i}/\alpha_{i}:i\in[r]\text{ and }\alpha_{i}<0\right\}italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT = roman_max { italic_β start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT / italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT : italic_i ∈ [ italic_r ] and italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT < 0 }. We may assume that v=β1/α1superscript𝑣subscript𝛽1subscript𝛼1v^{*}=\beta_{1}/\alpha_{1}italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT = italic_β start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT / italic_α start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT. By FME, inequality α1vβ1subscript𝛼1𝑣subscript𝛽1\alpha_{1}v\leq\beta_{1}italic_α start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT italic_v ≤ italic_β start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT or, after rescaling by 1/α1>01subscript𝛼10-1/\alpha_{1}>0- 1 / italic_α start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT > 0,

v=[𝟎1][qv]v,𝑣delimited-[]superscript0top1matrix𝑞𝑣superscript𝑣-v=[\mathbf{0}^{\top}\leavevmode\nobreak\ -1]\begin{bmatrix}q\\ v\end{bmatrix}\leq-v^{*},- italic_v = [ bold_0 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT - 1 ] [ start_ARG start_ROW start_CELL italic_q end_CELL end_ROW start_ROW start_CELL italic_v end_CELL end_ROW end_ARG ] ≤ - italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ,

is a nonnegative combination of those in (7):  yA^=[𝟎1]superscript𝑦top^𝐴delimited-[]superscript0top1y^{\top}\widehat{A}=[\mathbf{0}^{\top}\leavevmode\nobreak\ -1]italic_y start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT over^ start_ARG italic_A end_ARG = [ bold_0 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT - 1 ] and yb^=vsuperscript𝑦top^𝑏superscript𝑣y^{\top}\widehat{b}=-v^{*}italic_y start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT over^ start_ARG italic_b end_ARG = - italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT for a nonnegative vector y=(p,s,δ,ε)m×n××𝑦superscript𝑝𝑠𝛿𝜀superscript𝑚superscript𝑛y=(p^{*},s,\delta,\varepsilon)\in\mathbb{R}^{m}\times\mathbb{R}^{n}\times% \mathbb{R}\times\mathbb{R}italic_y = ( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_s , italic_δ , italic_ε ) ∈ blackboard_R start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT × blackboard_R start_POSTSUPERSCRIPT italic_n end_POSTSUPERSCRIPT × blackboard_R × blackboard_R. That is,

p𝟎,s𝟎,δ,ε0,(p)AsI+(δε)𝟏=𝟎,(p)(𝟏)=1,δε=v.formulae-sequencesuperscript𝑝0formulae-sequence𝑠0𝛿formulae-sequence𝜀0formulae-sequencesuperscriptsuperscript𝑝top𝐴superscript𝑠top𝐼𝛿𝜀superscript1topsuperscript0topformulae-sequencesuperscriptsuperscript𝑝top11𝛿𝜀superscript𝑣p^{*}\geq\mathbf{0},\enspace s\geq\mathbf{0},\enspace\delta,\varepsilon\geq 0,% \enspace(p^{*})^{\top}A-s^{\top}I+(\delta-\varepsilon)\mathbf{1}^{\top}=% \mathbf{0}^{\top},\enspace(p^{*})^{\top}(-\mathbf{1})=-1,\enspace\delta-% \varepsilon=-v^{*}.italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ≥ bold_0 , italic_s ≥ bold_0 , italic_δ , italic_ε ≥ 0 , ( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A - italic_s start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_I + ( italic_δ - italic_ε ) bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT = bold_0 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT , ( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT ( - bold_1 ) = - 1 , italic_δ - italic_ε = - italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT .

Consequently, p𝟎superscript𝑝0p^{*}\geq\mathbf{0}italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ≥ bold_0, 𝟏p=1superscript1topsuperscript𝑝1\mathbf{1}^{\top}p^{*}=1bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT = 1, and (p)A=s+v𝟏v𝟏superscriptsuperscript𝑝top𝐴superscript𝑠topsuperscript𝑣superscript1topsuperscript𝑣superscript1top(p^{*})^{\top}A=s^{\top}+v^{*}\mathbf{1}^{\top}\geq v^{*}\mathbf{1}^{\top}( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT italic_A = italic_s start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT + italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT ≥ italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT bold_1 start_POSTSUPERSCRIPT ⊤ end_POSTSUPERSCRIPT, making (p,v)superscript𝑝superscript𝑣(p^{*},v^{*})( italic_p start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) feasible in (5). And vsuperscript𝑣v^{*}italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT lies in (8), so (q,v)superscript𝑞superscript𝑣(q^{*},v^{*})( italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT , italic_v start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT ) is feasible in (6) for some qsuperscript𝑞q^{*}italic_q start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT. ∎

This proof requires no topological arguments, like compactness of strategy spaces or continuity of payoffs. It applies equally well if payoffs and probabilities lie in other ordered fields than the reals, like the set of rational numbers. The duality theorem of linear programming can be proved in essentially the same way (Martin, 1999, Thm. 2.29).

References

  • Fourier (1826) J. Fourier. Solution d’une question particulière du calcul des inégalités. Nouveau Bulletin des Sciences par la Société philomatique de Paris, pages 99–100, 1826.
  • Khachiyan (2009) L. Khachiyan. Fourier-Motzkin elimination method. In C. A. Floudas and P. M. Pardalos, editors, Encyclopedia of Optimization, pages 1074–1077. Springer, 2nd edition, 2009.
  • Martin (1999) R. K. Martin. Large scale linear and integer optimization: a unified approach. Springer, 1999.
  • Motzkin (1936) T. S. Motzkin. Beiträge zur Theorie der linearen Ungleichungen. Ph.D. thesis, University of Basel, 1936.
  • von Neumann (1928) J. von Neumann. Zur Theorie der Gesellschaftsspiele. Mathematische Annalen, 100:295–320, 1928.
  • von Stengel (2024) B. von Stengel. Zero-sum games and linear programming duality. Mathematics of Operations Research, 49:1091–1108, 2024.