§E16.23Birkhoff–von Neumann の定理

最終更新

各成分が非負であり、各行の和と各列の和がいずれも11である正方行列を二重確率行列という。置換行列は、各行と各列にちょうど一つだけ11をもち、他の成分が00である行列であり、二重確率行列の最も単純な例である。本記事では、逆に任意の二重確率行列が置換行列の凸結合として表されることを証明する。

証明の要は、二重確率行列から置換行列を一つ取り出す段にある。行iiと列jjを二部グラフの左右の頂点とし、成分aija_{ij}が正であるときに辺を張る。行和がすべて11であることと列和がすべて11であることを用いて数え上げると、この二部グラフが Hall の条件を満たすことが分かる。Hall の定理により、行の全体を被覆するマッチングが存在する。このマッチングから置換が定まる。取り出した置換行列に、対応する成分の最小値を係数として掛けて、もとの行列から引く。このとき、正の成分の少なくとも一つが00になる。この差を正規化した行列は、再び二重確率行列になる。正成分の個数は有限であり真に減るので、この操作は有限回で終わる。

最後に、費用行列に対して置換を選び総費用を最小にする線形割当問題について、二重確率行列まで範囲を広げても最適値が変わらないことを導く。用いるのは凸結合表示と目的関数の線形性だけであり、線形計画の一般論は用いない。

本記事では、成分が実数であるnn次正方行列を扱う。行・列・成分の呼び方、成分の記法、正方行列という語、および二つの行列が等しいということの意味は、§D3 線形代数 Iの§D3.1 定義 1.1に従う。すなわち、行列AAの第ii行第jj列の成分をaija_{ij}と書き、A=(aij)A=(a_{ij})と表す。行列の和と実数倍は同単元の§D3.1 定義 2.1による。{1,…,n}\{1,\dots,n\}から{1,…,n}\{1,\dots,n\}への全単射を置換という。二部グラフとマッチングの語彙は§D2.12 定義 1.1に従い、X⊔YX\sqcup Yという書き方で左右の頂点集合を表す。

1 二重確率行列と置換行列

定義 1.1.nn次実正方行列A=(aij)A=(a_{ij})が二重確率行列 (doubly stochastic matrix) であるとは、次の三条件を満たすことをいう。

  1. すべてのi,ji,jについてaij≥0a_{ij}\ge0である。
  2. すべてのiiについて∑j=1naij=1\sum_{j=1}^{n}a_{ij}=1である。
  3. すべてのjjについて∑i=1naij=1\sum_{i=1}^{n}a_{ij}=1である。

定義 1.2. 置換σ\sigmaに対し、nn次実正方行列Pσ=(pij)P_\sigma=(p_{ij})を

pij={1(j=σ(i)),0(j≠σ(i))p_{ij}=\begin{cases}1 & (j=\sigma(i)),\\ 0 & (j\ne\sigma(i))\end{cases}

で定め、置換行列 (permutation matrix) という。

命題 1.3. 任意の置換σ\sigmaに対しPσP_\sigmaは二重確率行列である。

証明. 成分は00または11であるから非負である。第ii行ではj=σ(i)j=\sigma(i)のときだけ成分が11であり、他は00であるから行の和は11である。第jj列では、pij=1p_{ij}=1となるiiはσ(i)=j\sigma(i)=jを満たすもの、すなわちi=σ−1(j)i=\sigma^{-1}(j)ただ一つであるから列の和も11である。▨

2 正成分の定める二部グラフと Hall の条件

定義 2.1.nn次二重確率行列A=(aij)A=(a_{ij})に対し、二部グラフGA=(X⊔Y,EA)G_A=(X\sqcup Y,E_A)を次で定める。X={x1,…,xn}X=\{x_1,\dots,x_n\}を行に対応する頂点集合、Y={y1,…,yn}Y=\{y_1,\dots,y_n\}を列に対応する頂点集合とし、

EA={ xiyj: aij>0 }E_A=\{\,x_iy_j:\ a_{ij}>0\,\}

とする。GAG_AをAAの正成分の二部グラフ (positive-entry bipartite graph) という。

補題 2.2.nn次二重確率行列AAに対し、任意のS⊆XS\subseteq Xについて∣N(S)∣≥∣S∣\lvert N(S)\rvert\ge\lvert S\rvertが成り立つ。ここでN(S)N(S)はSSの頂点に隣接するYYの頂点の全体である。

証明.S⊆XS\subseteq Xをとり、I={i: xi∈S}I=\{i:\ x_i\in S\}、J={j: yj∈N(S)}J=\{j:\ y_j\in N(S)\}と置く。∣I∣=∣S∣\lvert I\rvert=\lvert S\rvertかつ∣J∣=∣N(S)∣\lvert J\rvert=\lvert N(S)\rvertである。

i∈Ii\in Iかつj∉Jj\notin Jならばaij=0a_{ij}=0である。実際、aij>0a_{ij}>0とするとxiyj∈EAx_iy_j\in E_Aでありyj∈N(S)y_j\in N(S)となってj∈Jj\in Jに反する。したがって、IIに属する行についての行和を足し合わせると

∣I∣=∑i∈I∑j=1naij=∑i∈I∑j∈Jaij\lvert I\rvert=\sum_{i\in I}\sum_{j=1}^{n}a_{ij}=\sum_{i\in I}\sum_{j\in J}a_{ij}

となる。ここで最初の等号は行和がすべて11であることによる。次に、成分がすべて非負であることから、JJに属する列についてIIに属する行だけの和を全体の列和で上から評価することができ、

∑i∈I∑j∈Jaij=∑j∈J∑i∈Iaij≤∑j∈J∑i=1naij=∣J∣\sum_{i\in I}\sum_{j\in J}a_{ij}=\sum_{j\in J}\sum_{i\in I}a_{ij}\le\sum_{j\in J}\sum_{i=1}^{n}a_{ij}=\lvert J\rvert

となる。最後の等号は列和がすべて11であることによる。二つを合わせて∣S∣=∣I∣≤∣J∣=∣N(S)∣\lvert S\rvert=\lvert I\rvert\le\lvert J\rvert=\lvert N(S)\rvertを得る。▨

補題 2.3.nn次二重確率行列A=(aij)A=(a_{ij})に対し、すべてのiiについてaiσ(i)>0a_{i\sigma(i)}>0を満たす置換σ\sigmaが存在する。

証明.補題 2.2によりGAG_Aは Hall の条件を満たす。したがって§D2.12 定理 1.3により、XXのすべての頂点を被覆するマッチングMMが存在する。MMの各辺はちょうど一つのXXの頂点と一つのYYの頂点を端点にもち、MMはマッチングであるから、xix_iを被覆するMMの辺はただ一本である。その辺をxiyσ(i)x_iy_{\sigma(i)}と書いて、写像σ\sigmaを定める。

σ\sigmaが単射であることを示す。σ(i)=σ(i′)=j\sigma(i)=\sigma(i')=jかつi≠i′i\ne i'とすると、MMの二辺xiyjx_iy_jとxi′yjx_{i'}y_jがともにyjy_jを端点にもち、MMがマッチングであることに反する。{1,…,n}\{1,\dots,n\}から自分自身への単射は全単射であるから、σ\sigmaは置換である。xiyσ(i)∈EAx_iy_{\sigma(i)}\in E_Aであるからaiσ(i)>0a_{i\sigma(i)}>0が成り立つ。▨

3 置換行列の凸結合表示

定義 3.1.nn次実正方行列A=(aij)A=(a_{ij})に対し、aij>0a_{ij}>0を満たす添字の対(i,j)(i,j)の個数をp(A)p(A)と書き、AAの正の成分の個数 (number of positive entries) という。

命題 3.2.nn次二重確率行列AAに対しp(A)≥np(A)\ge nが成り立つ。さらにp(A)=np(A)=nであることと、AAが置換行列であることは同値である。

証明. 各iiについて、第ii行の成分はすべて非負でありその和は11であるから、aij>0a_{ij}>0を満たすjjが少なくとも一つ存在する。行ごとにそのような対を一つずつ選ぶと相異なるnn個の対が得られるのでp(A)≥np(A)\ge nである。

p(A)=np(A)=nとする。上の評価で等号が成り立つのは、各行に正の成分がちょうど一つある場合に限る。第ii行の正の成分をaiτ(i)a_{i\tau(i)}とすると、同じ行の他の成分は00であり行和が11であるからaiτ(i)=1a_{i\tau(i)}=1である。第jj列の和はτ(i)=j\tau(i)=jを満たすiiの個数に等しく、これが11であるから、各jjに対してτ(i)=j\tau(i)=jを満たすiiはちょうど一つである。よってτ\tauは置換であり、定義 1.2によりA=PτA=P_\tauである。

逆にA=PτA=P_\tauとすると、正の成分は各行の(i,τ(i))(i,\tau(i))ただ一つずつであるからp(A)=np(A)=nである。▨

3.1 証明方針

p(A)p(A)についての累積帰納法で示す。

p(A)p(A)の最小値は命題 3.2によりnnであり、そのときAA自身が置換行列である。この場合が帰納法の基底である。

p(A)>np(A)>nのときは、補題 2.3により得られる置換σ\sigmaをとり、係数を

λ=min⁡1≤i≤naiσ(i)\lambda=\min_{1\le i\le n}a_{i\sigma(i)}

と定める。λ>0\lambda>0である。まずλ<1\lambda<1を示す。λ=1\lambda=1とすると、各行でaiσ(i)=1a_{i\sigma(i)}=1となり、行和が11で成分が非負であることから同じ行の他の成分はすべて00となってp(A)=np(A)=nになり、仮定に反するからである。

次にB=(A−λPσ)/(1−λ)B=(A-\lambda P_\sigma)/(1-\lambda)が再び二重確率行列であることを、成分の非負性、行和、列和の順に確かめる。λ\lambdaを最小値にとったことが非負性を保証する。さらに、最小値を与える位置の成分がBBでは00になるのでp(B)≤p(A)−1p(B)\le p(A)-1であり、帰納法の仮定をBBへ適用することができる。最後に、BBの表示に(1−λ)(1-\lambda)を掛けてλPσ\lambda P_\sigmaを加えるとAAの表示が得られ、係数の総和がλ+(1−λ)=1\lambda+(1-\lambda)=1となることを確かめる。

定理 3.3 (Birkhoff–von Neumann の定理).AAをnn次二重確率行列とする。このとき、有限個の置換σ1,…,σm\sigma_1,\dots,\sigma_mと正の実数λ1,…,λm\lambda_1,\dots,\lambda_mが存在して

A=∑k=1mλkPσk,∑k=1mλk=1A=\sum_{k=1}^{m}\lambda_kP_{\sigma_k}, \qquad \sum_{k=1}^{m}\lambda_k=1

が成り立つ。

証明. 正の成分の個数p(A)p(A)についての累積帰納法で示す。命題 3.2によりp(A)≥np(A)\ge nである。

p(A)=np(A)=nの場合。命題 3.2によりAAは置換行列PτP_\tauである。m=1m=1、λ1=1\lambda_1=1ととれば主張が成り立つ。

p(A)>np(A)>nの場合。正の成分の個数がp(A)p(A)より少ないすべての二重確率行列について主張が成り立つと仮定する。

補題 2.3により、すべてのiiについてaiσ(i)>0a_{i\sigma(i)}>0を満たす置換σ\sigmaが存在する。λ=min⁡iaiσ(i)\lambda=\min_i a_{i\sigma(i)}と置くとλ>0\lambda>0である。また、行和が11で成分が非負であるから各成分は11以下でありλ≤1\lambda\le1である。λ=1\lambda=1と仮定すると、各iiについてaiσ(i)=1a_{i\sigma(i)}=1となり、第ii行の他の成分は非負で和が00であるからすべて00となる。すると各行の正の成分がちょうど一つとなりp(A)=np(A)=nが成り立つので、p(A)>np(A)>nという仮定に反する。よって0<λ<10<\lambda<1である。

B=(bij)B=(b_{ij})を

bij=aij−λ (Pσ)ij1−λb_{ij}=\frac{a_{ij}-\lambda\,(P_\sigma)_{ij}}{1-\lambda}

で定める。BBが二重確率行列であることを示す。j=σ(i)j=\sigma(i)のときbij=(aiσ(i)−λ)/(1−λ)b_{ij}=(a_{i\sigma(i)}-\lambda)/(1-\lambda)であり、λ\lambdaが最小値であるからaiσ(i)−λ≥0a_{i\sigma(i)}-\lambda\ge0となりbij≥0b_{ij}\ge0である。j≠σ(i)j\ne\sigma(i)のときbij=aij/(1−λ)≥0b_{ij}=a_{ij}/(1-\lambda)\ge0である。行和については、命題 1.3によりPσP_\sigmaの第ii行の和が11であるから

∑j=1nbij=11−λ(∑j=1naij−λ∑j=1n(Pσ)ij)=1−λ1−λ=1\sum_{j=1}^{n}b_{ij}=\frac{1}{1-\lambda}\Bigl(\sum_{j=1}^{n}a_{ij}-\lambda\sum_{j=1}^{n}(P_\sigma)_{ij}\Bigr)=\frac{1-\lambda}{1-\lambda}=1

となる。列和についても、PσP_\sigmaの各列の和が11であるから同じ計算により∑ibij=1\sum_{i}b_{ij}=1となる。よってBBは二重確率行列である。

次にp(B)<p(A)p(B)<p(A)を示す。bij>0b_{ij}>0ならばaij−λ(Pσ)ij>0a_{ij}-\lambda(P_\sigma)_{ij}>0であり、(Pσ)ij≥0(P_\sigma)_{ij}\ge0かつλ>0\lambda>0であるからaij>0a_{ij}>0である。よってBBの正の成分の位置はAAの正の成分の位置に含まれる。さらに、最小値を与える添字i0i_0、すなわちai0σ(i0)=λa_{i_0\sigma(i_0)}=\lambdaを満たすi0i_0をとると、bi0σ(i0)=0b_{i_0\sigma(i_0)}=0である一方ai0σ(i0)=λ>0a_{i_0\sigma(i_0)}=\lambda>0である。よってp(B)≤p(A)−1p(B)\le p(A)-1である。

帰納法の仮定をBBへ適用すると、置換τ1,…,τl\tau_1,\dots,\tau_lと正の実数μ1,…,μl\mu_1,\dots,\mu_lが存在して

B=∑k=1lμkPτk,∑k=1lμk=1B=\sum_{k=1}^{l}\mu_kP_{\tau_k}, \qquad \sum_{k=1}^{l}\mu_k=1

が成り立つ。bijb_{ij}の定め方から、すべてのiiとjjについてaij=λ (Pσ)ij+(1−λ)bija_{ij}=\lambda\,(P_\sigma)_{ij}+(1-\lambda)b_{ij}が成り立つので、§D3.1 定義 2.1と§D3.1 定義 1.1の行列の相等によりA=λPσ+(1−λ)BA=\lambda P_\sigma+(1-\lambda)Bである。この右辺へBBの表示を代入し、§D3.1 命題 2.3の実数倍についての法則によって係数をまとめると

A=λPσ+∑k=1l(1−λ)μkPτkA=\lambda P_\sigma+\sum_{k=1}^{l}(1-\lambda)\mu_kP_{\tau_k}

となる。λ>0\lambda>0かつ(1−λ)μk>0(1-\lambda)\mu_k>0であり、係数の総和は

λ+∑k=1l(1−λ)μk=λ+(1−λ)∑k=1lμk=λ+(1−λ)=1\lambda+\sum_{k=1}^{l}(1-\lambda)\mu_k=\lambda+(1-\lambda)\sum_{k=1}^{l}\mu_k=\lambda+(1-\lambda)=1

である。よってm=l+1m=l+1として主張の形の表示が得られる。▨

注意 3.4.定理 3.3では表示の存在が主張されるのみであり、一意性が主張されない。取り出す置換の選び方に応じて異なる表示が得られる。また、同じ置換が二度現れる表示が得られた場合には、その二項の係数を足し合わせて一つの項にまとめることができる。まとめた後も各係数は正であり、係数の総和は変わらず11である。

4 線形割当問題

系 4.1.C=(cij)C=(c_{ij})を成分が実数であるnn次正方行列とし、

γ=min⁡σ ∑i=1nciσ(i)\gamma=\min_{\sigma}\ \sum_{i=1}^{n}c_{i\sigma(i)}

と置く。ここで最小は置換σ\sigmaの全体をわたる。このとき、任意のnn次二重確率行列A=(aij)A=(a_{ij})に対し

∑i=1n∑j=1ncijaij ≥ γ\sum_{i=1}^{n}\sum_{j=1}^{n}c_{ij}a_{ij}\ \ge\ \gamma

が成り立ち、γ\gammaを与える置換σ∗\sigma^{*}の置換行列A=Pσ∗A=P_{\sigma^{*}}で等号が成り立つ。したがって、二重確率行列の全体における∑i,jcijaij\sum_{i,j}c_{ij}a_{ij}の最小値は存在してγ\gammaに等しく、置換行列で達成される。

証明. 置換の個数はn!n!個で有限であるからγ\gammaは定まり、γ\gammaを与える置換σ∗\sigma^{*}が存在する。任意の置換σ\sigmaについて、定義 1.2により

∑i=1n∑j=1ncij(Pσ)ij=∑i=1nciσ(i)\sum_{i=1}^{n}\sum_{j=1}^{n}c_{ij}(P_\sigma)_{ij}=\sum_{i=1}^{n}c_{i\sigma(i)}

が成り立つ。σ=σ∗\sigma=\sigma^{*}ととると、この式の左辺はγ\gammaに等しい。命題 1.3によりPσ∗P_{\sigma^{*}}は二重確率行列であるから、等号を与える二重確率行列が存在する。

任意の二重確率行列AAをとる。定理 3.3により、置換σ1,…,σm\sigma_1,\dots,\sigma_mと正の実数λ1,…,λm\lambda_1,\dots,\lambda_mが存在してA=∑kλkPσkA=\sum_k\lambda_kP_{\sigma_k}かつ∑kλk=1\sum_k\lambda_k=1である。各成分についてaij=∑kλk(Pσk)ija_{ij}=\sum_k\lambda_k(P_{\sigma_k})_{ij}であるから、和の順序を入れ替えて

∑i,jcijaij=∑k=1mλk∑i,jcij(Pσk)ij=∑k=1mλk∑i=1nciσk(i)\sum_{i,j}c_{ij}a_{ij} =\sum_{k=1}^{m}\lambda_k\sum_{i,j}c_{ij}(P_{\sigma_k})_{ij} =\sum_{k=1}^{m}\lambda_k\sum_{i=1}^{n}c_{i\sigma_k(i)}

となる。ここで和はすべて有限和であるから、順序の入れ替えは加法の結合法則と交換法則による。各kkについて∑iciσk(i)≥γ\sum_i c_{i\sigma_k(i)}\ge\gammaであり、λk>0\lambda_k>0であるから

∑i,jcijaij ≥ ∑k=1mλkγ=γ∑k=1mλk=γ\sum_{i,j}c_{ij}a_{ij}\ \ge\ \sum_{k=1}^{m}\lambda_k\gamma=\gamma\sum_{k=1}^{m}\lambda_k=\gamma

を得る。▨

5 検算例

例 5.1.

A=(1/21/2001/21/21/201/2)A=\begin{pmatrix} 1/2 & 1/2 & 0\\ 0 & 1/2 & 1/2\\ 1/2 & 0 & 1/2 \end{pmatrix}

と置く。行の和は順に1/2+1/2+0=11/2+1/2+0=1、0+1/2+1/2=10+1/2+1/2=1、1/2+0+1/2=11/2+0+1/2=1である。列の和は順に1/2+0+1/2=11/2+0+1/2=1、1/2+1/2+0=11/2+1/2+0=1、0+1/2+1/2=10+1/2+1/2=1である。成分はすべて非負であるからAAは二重確率行列であり、正の成分の個数はp(A)=6p(A)=6である。

Hall の条件の確認。正成分の二部グラフGAG_Aの辺はx1y1x_1y_1、x1y2x_1y_2、x2y2x_2y_2、x2y3x_2y_3、x3y1x_3y_1、x3y3x_3y_3である。一元集合の近傍はいずれも二元であり、∣N(S)∣≥∣S∣\lvert N(S)\rvert\ge\lvert S\rvertが成り立つ。二元集合については、N({x1,x2})={y1,y2,y3}N(\{x_1,x_2\})=\{y_1,y_2,y_3\}、N({x1,x3})={y1,y2,y3}N(\{x_1,x_3\})=\{y_1,y_2,y_3\}、N({x2,x3})={y1,y2,y3}N(\{x_2,x_3\})=\{y_1,y_2,y_3\}であり、いずれも三元である。三元集合についてはN(X)={y1,y2,y3}N(X)=\{y_1,y_2,y_3\}である。よって Hall の条件が成り立つ。

置換の取り出しと分解。恒等置換σ=id\sigma=\mathrm{id}についてa11=a22=a33=1/2>0a_{11}=a_{22}=a_{33}=1/2>0であるから、σ\sigmaは補題 2.3の条件を満たす。λ=min⁡{1/2,1/2,1/2}=1/2\lambda=\min\{1/2,1/2,1/2\}=1/2である。恒等置換の置換行列は、§D3.1 定義 3.6の単位行列にほかならない。33次の単位行列をIIと書くとPid=IP_{\mathrm{id}}=Iであり、

B=A−12I1−12=2(01/20001/21/200)=(010001100)B=\frac{A-\tfrac12 I}{1-\tfrac12} =2\begin{pmatrix} 0 & 1/2 & 0\\ 0 & 0 & 1/2\\ 1/2 & 0 & 0 \end{pmatrix} =\begin{pmatrix} 0 & 1 & 0\\ 0 & 0 & 1\\ 1 & 0 & 0 \end{pmatrix}

となる。BBの正の成分の個数は33であり、p(A)=6p(A)=6より真に小さい。BBはτ(1)=2\tau(1)=2、τ(2)=3\tau(2)=3、τ(3)=1\tau(3)=1で定まる置換τ\tauの置換行列PτP_\tauである。よって

A=12Pid+12PτA=\frac12 P_{\mathrm{id}}+\frac12 P_\tau

であり、係数はいずれも正でその和は11である。右辺を成分ごとに計算すると、第11行は(1/2, 1/2, 0)(1/2,\,1/2,\,0)、第22行は(0, 1/2, 1/2)(0,\,1/2,\,1/2)、第33行は(1/2, 0, 1/2)(1/2,\,0,\,1/2)となりAAに一致する。

割当の最適値。費用行列を

C=(123231312)C=\begin{pmatrix}1&2&3\\ 2&3&1\\ 3&1&2\end{pmatrix}

とする。六つの置換について総費用を数え上げる。恒等置換ではc11+c22+c33=1+3+2=6c_{11}+c_{22}+c_{33}=1+3+2=6、τ\tauではc12+c23+c31=2+1+3=6c_{12}+c_{23}+c_{31}=2+1+3=6、11と22を入れ替える置換ではc12+c21+c33=2+2+2=6c_{12}+c_{21}+c_{33}=2+2+2=6、11と33を入れ替える置換ではc13+c22+c31=3+3+3=9c_{13}+c_{22}+c_{31}=3+3+3=9、22と33を入れ替える置換ではc11+c23+c32=1+1+1=3c_{11}+c_{23}+c_{32}=1+1+1=3、残る置換1↦3, 2↦1, 3↦21\mapsto3,\ 2\mapsto1,\ 3\mapsto2ではc13+c21+c32=3+2+1=6c_{13}+c_{21}+c_{32}=3+2+1=6である。よってγ=3\gamma=3である。

上のAAについては

∑i,jcijaij=12(c11+c12+c22+c23+c31+c33)=12(1+2+3+1+3+2)=12⋅12=6\sum_{i,j}c_{ij}a_{ij}=\tfrac12(c_{11}+c_{12}+c_{22}+c_{23}+c_{31}+c_{33})=\tfrac12(1+2+3+1+3+2)=\tfrac12\cdot12=6

であり、分解A=12Pid+12PτA=\tfrac12P_{\mathrm{id}}+\tfrac12P_\tauから得られる12⋅6+12⋅6=6\tfrac12\cdot6+\tfrac12\cdot6=6と一致する。6≥3=γ6\ge3=\gammaであり、系 4.1の不等式と整合する。

6 演習

問題 6.1.

  1. nn次二重確率行列AAとS⊆XS\subseteq Xをとり、I={i: xi∈S}I=\{i:\ x_i\in S\}、J={j: yj∈N(S)}J=\{j:\ y_j\in N(S)\}と置く。∣N(S)∣−∣S∣=∑i∉I∑j∈Jaij\lvert N(S)\rvert-\lvert S\rvert=\sum_{i\notin I}\sum_{j\in J}a_{ij}を示せ。さらに、空でなくXXと異なるS⊆XS\subseteq Xであって∣N(S)∣=∣S∣\lvert N(S)\rvert=\lvert S\rvertを満たすものが存在することと、ある整数1≤k≤n−11\le k\le n-1と置換α,β\alpha,\betaについて、bij=aα(i)β(j)b_{ij}=a_{\alpha(i)\beta(j)}で定まる行列B=(bij)B=(b_{ij})が「i≤k<ji\le k<jまたはj≤k<ij\le k<iならばbij=0b_{ij}=0」を満たすことが同値であることを示せ。
  2. nn次二重確率行列AAについて、定理 3.3の表示を、置換の個数mmがp(A)−n+1p(A)-n+1以下であるようにとることができることを示せ。これを用いて、すべてのnn次二重確率行列はn2−n+1n^{2}-n+1個以下の置換行列の凸結合として表されることを示せ。
  3. p(A)>np(A)>nであるnn次二重確率行列AAと、補題 2.3による置換σ\sigmaをとり、0<λ′<min⁡iaiσ(i)0<\lambda'<\min_ia_{i\sigma(i)}を満たす実数λ′\lambda'に対してB′=(A−λ′Pσ)/(1−λ′)B'=(A-\lambda'P_\sigma)/(1-\lambda')と置く。B′B'が二重確率行列でありp(B′)=p(A)p(B')=p(A)を満たすことを示せ。さらに、n=2n=2の二重確率行列A0A_0から出発し、各回でこの形の置き換えAk↦Ak+1A_k\mapsto A_{k+1}を行って得られる列A0,A1,A2,…A_0,A_1,A_2,\dotsであって、どのAkA_kも置換行列でないものを作れ。
  4. n≥2n\ge2とする。成分が非負で行和がすべて11であるnn次正方行列であって、p(A)=np(A)=nを満たすが置換行列でないものの例を挙げよ。さらに、nn次二重確率行列AAが置換行列でないならばp(A)≥n+2p(A)\ge n+2であることを示し、p(A)=n+2p(A)=n+2を満たすnn次二重確率行列の例を作れ。
  5. 系 4.1の証明を、最小化ではなく最大化について書き直せ。すなわち、任意の二重確率行列AAについて∑i,jcijaij\sum_{i,j}c_{ij}a_{ij}が置換にわたる最大値以下であることを、同じ線形性の議論で示せ。
解答.

(1)を示す。補題 2.2の証明のとおり、i∈Ii\in Iかつj∉Jj\notin Jならばaij=0a_{ij}=0であり、行和がすべて11であるから∣I∣=∑i∈I∑j∈Jaij\lvert I\rvert=\sum_{i\in I}\sum_{j\in J}a_{ij}である。列和がすべて11であるから

∣J∣=∑j∈J∑i=1naij=∑i∈I∑j∈Jaij+∑i∉I∑j∈Jaij\lvert J\rvert=\sum_{j\in J}\sum_{i=1}^{n}a_{ij}=\sum_{i\in I}\sum_{j\in J}a_{ij}+\sum_{i\notin I}\sum_{j\in J}a_{ij}

である。∣S∣=∣I∣\lvert S\rvert=\lvert I\rvert、∣N(S)∣=∣J∣\lvert N(S)\rvert=\lvert J\rvertであるから、二つの等式の差をとって∣N(S)∣−∣S∣=∑i∉I∑j∈Jaij\lvert N(S)\rvert-\lvert S\rvert=\sum_{i\notin I}\sum_{j\in J}a_{ij}を得る。

空でなくXXと異なるSSが∣N(S)∣=∣S∣\lvert N(S)\rvert=\lvert S\rvertを満たすとし、k=∣S∣k=\lvert S\rvertと置くと1≤k≤n−11\le k\le n-1である。前段の等式の右辺は非負の数の和であり00に等しいので、i∉Ii\notin Iかつj∈Jj\in Jならばaij=0a_{ij}=0である。またi∈Ii\in Iかつj∉Jj\notin Jならばaij=0a_{ij}=0である。∣I∣=∣J∣=k\lvert I\rvert=\lvert J\rvert=kであるから、α({1,…,k})=I\alpha(\{1,\dots,k\})=Iを満たす置換α\alphaとβ({1,…,k})=J\beta(\{1,\dots,k\})=Jを満たす置換β\betaが存在する。このときα({k+1,…,n})\alpha(\{k+1,\dots,n\})はIIの補集合であり、β({k+1,…,n})\beta(\{k+1,\dots,n\})はJJの補集合である。i≤k<ji\le k<jならばα(i)∈I\alpha(i)\in I、β(j)∉J\beta(j)\notin Jであるからbij=aα(i)β(j)=0b_{ij}=a_{\alpha(i)\beta(j)}=0である。j≤k<ij\le k<iならばα(i)∉I\alpha(i)\notin I、β(j)∈J\beta(j)\in Jであるからbij=0b_{ij}=0である。

逆に、1≤k≤n−11\le k\le n-1と置換α,β\alpha,\betaについてBBが条件を満たすとする。I=α({1,…,k})I=\alpha(\{1,\dots,k\})、S={xi: i∈I}S=\{x_i:\ i\in I\}と置くと、∣S∣=k\lvert S\rvert=kであるからSSは空でなくXXと異なる。i∈Ii\in Iとjjについて、i=α(i′)i=\alpha(i')(i′≤ki'\le k)と書きj′=β−1(j)j'=\beta^{-1}(j)と置くとaij=bi′j′a_{ij}=b_{i'j'}であり、j′>kj'>kならばこれは00である。よってyj∈N(S)y_j\in N(S)ならばj∈β({1,…,k})j\in\beta(\{1,\dots,k\})であり、∣N(S)∣≤k=∣S∣\lvert N(S)\rvert\le k=\lvert S\rvertである。補題 2.2により∣N(S)∣≥∣S∣\lvert N(S)\rvert\ge\lvert S\rvertであるから∣N(S)∣=∣S∣\lvert N(S)\rvert=\lvert S\rvertである。

(2)を、p(A)p(A)についての累積帰納法で示す。p(A)=np(A)=nのとき、命題 3.2によりAAはある置換τ\tauの置換行列PτP_\tauであり、m=1=p(A)−n+1m=1=p(A)-n+1の表示A=1⋅PτA=1\cdot P_\tauがある。p(A)>np(A)>nとし、正の成分の個数がp(A)p(A)より少ないすべての二重確率行列BBについて、置換の個数がp(B)−n+1p(B)-n+1以下の表示が存在すると仮定する。定理 3.3の証明で示したとおり、補題 2.3による置換σ\sigmaとλ=min⁡iaiσ(i)\lambda=\min_ia_{i\sigma(i)}について0<λ<10<\lambda<1であり、B=(A−λPσ)/(1−λ)B=(A-\lambda P_\sigma)/(1-\lambda)は二重確率行列であってp(B)≤p(A)−1p(B)\le p(A)-1を満たす。帰納法の仮定により、置換τ1,…,τl\tau_1,\dots,\tau_l(l≤p(B)−n+1≤p(A)−nl\le p(B)-n+1\le p(A)-n)と、総和が11である正の実数μ1,…,μl\mu_1,\dots,\mu_lが存在してB=∑kμkPτkB=\sum_k\mu_kP_{\tau_k}である。同じ証明のとおり

A=λPσ+∑k=1l(1−λ)μkPτkA=\lambda P_\sigma+\sum_{k=1}^{l}(1-\lambda)\mu_kP_{\tau_k}

は係数が正で総和が11の表示であり、置換の個数はl+1≤p(A)−n+1l+1\le p(A)-n+1である。よって主張が成り立つ。

成分の位置はn2n^{2}個であるからp(A)≤n2p(A)\le n^{2}であり、すべてのnn次二重確率行列はn2−n+1n^{2}-n+1個以下の置換行列PσkP_{\sigma_k}と正の係数λk\lambda_k(∑kλk=1\sum_k\lambda_k=1)によってA=∑kλkPσkA=\sum_k\lambda_kP_{\sigma_k}と表される。たとえば例 5.1の行列ではp(A)=6p(A)=6、n=3n=3であり、上界は44である。実際に得られた表示の置換の個数は22であり、上界の範囲に収まる。

(3)を示す。λ=min⁡iaiσ(i)\lambda=\min_ia_{i\sigma(i)}と置く。定理 3.3の証明により、p(A)>np(A)>nのときλ<1\lambda<1であるから0<λ′<λ<10<\lambda'<\lambda<1であり、1−λ′>01-\lambda'>0である。bij′=(aij−λ′(Pσ)ij)/(1−λ′)b'_{ij}=(a_{ij}-\lambda'(P_\sigma)_{ij})/(1-\lambda')と置く。j=σ(i)j=\sigma(i)のときaiσ(i)−λ′≥λ−λ′>0a_{i\sigma(i)}-\lambda'\ge\lambda-\lambda'>0であるからbiσ(i)′>0b'_{i\sigma(i)}>0であり、aiσ(i)>0a_{i\sigma(i)}>0でもある。j≠σ(i)j\ne\sigma(i)のときbij′=aij/(1−λ′)b'_{ij}=a_{ij}/(1-\lambda')であるから、bij′≥0b'_{ij}\ge0であり、bij′>0b'_{ij}>0とaij>0a_{ij}>0は同値である。よってB′B'の成分は非負であり、B′B'の正の成分の位置はAAの正の成分の位置に一致してp(B′)=p(A)p(B')=p(A)である。命題 1.3によりPσP_\sigmaの行和と列和は11であるから、第ii行の和は(1−λ′)/(1−λ′)=1(1-\lambda')/(1-\lambda')=1であり、列和も同様に11である。よってB′B'は二重確率行列である。

列を作る。0<a<10<a<1に対して

M(a)=(a1−a1−aa)M(a)=\begin{pmatrix}a&1-a\\ 1-a&a\end{pmatrix}

と置くと、M(a)M(a)は二重確率行列でありp(M(a))=4>2p(M(a))=4>2であるから、命題 3.2により置換行列ではない。a0=1/2a_0=1/2、A0=M(a0)A_0=M(a_0)とする。Ak=M(ak)A_k=M(a_k)(0<ak<10<a_k<1)に対し、σ\sigmaを恒等置換にとるとa11=a22=ak>0a_{11}=a_{22}=a_k>0であるからσ\sigmaは補題 2.3の条件を満たし、min⁡iaiσ(i)=ak\min_ia_{i\sigma(i)}=a_kである。λ′=ak/2\lambda'=a_k/2と置くと0<λ′<ak0<\lambda'<a_kであり、置き換えの結果の対角成分は(ak−ak/2)/(1−ak/2)=ak/(2−ak)(a_k-a_k/2)/(1-a_k/2)=a_k/(2-a_k)、非対角成分は(1−ak)/(1−ak/2)=1−ak/(2−ak)(1-a_k)/(1-a_k/2)=1-a_k/(2-a_k)である。よってak+1=ak/(2−ak)a_{k+1}=a_k/(2-a_k)と置くとAk+1=M(ak+1)A_{k+1}=M(a_{k+1})である。ak=1/(2k+1)a_k=1/(2^{k}+1)ならば

ak+1=1/(2k+1)2−1/(2k+1)=12(2k+1)−1=12k+1+1a_{k+1}=\frac{1/(2^{k}+1)}{2-1/(2^{k}+1)}=\frac{1}{2(2^{k}+1)-1}=\frac{1}{2^{k+1}+1}

であるから、帰納法によりすべてのkkについてak=1/(2k+1)a_k=1/(2^{k}+1)であり、0<ak<10<a_k<1が保たれる。したがって列A0,A1,…A_0,A_1,\dotsはすべての段で定まり、どのAkA_kも置換行列ではない。

(4)を示す。第11列の成分がすべて11で、他の成分がすべて00であるnn次正方行列をAAとする。成分は非負であり、各行の和は11であり、p(A)=np(A)=nである。n≥2n\ge2であるから第22列の和は00であり、命題 1.3により置換行列の列和はすべて11であるから、AAは置換行列ではない。

次に、AAを置換行列でないnn次二重確率行列とする。命題 3.2によりp(A)≥np(A)\ge nであり、p(A)=np(A)=nならばAAは置換行列であるからp(A)≥n+1p(A)\ge n+1である。p(A)=n+1p(A)=n+1と仮定する。各行は少なくとも一つの正の成分をもつので、ある一つの行i0i_0はちょうど二つの正の成分をもち、他の各行i≠i0i\ne i_0はちょうど一つの正の成分aiτ(i)a_{i\tau(i)}をもつ。i≠i0i\ne i_0のとき、行和が11であるからaiτ(i)=1a_{i\tau(i)}=1である。相異なるi,i′≠i0i,i'\ne i_0についてτ(i)=τ(i′)\tau(i)=\tau(i')とすると第τ(i)\tau(i)列の和が22以上になるので、τ(i)≠τ(i′)\tau(i)\ne\tau(i')である。よって集合K={τ(i): i≠i0}K=\{\tau(i):\ i\ne i_0\}はn−1n-1個の列からなる。j=τ(i)∈Kj=\tau(i)\in Kについて第jj列の和は1=aij1=a_{ij}であり成分は非負であるから、ai0j=0a_{i_0j}=0である。したがって行i0i_0の正の成分はKKに属さない列にあり、そのような列はn−(n−1)=1n-(n-1)=1個しかない。これは行i0i_0が相異なる二つの列に正の成分をもつことに反する。よってp(A)≥n+2p(A)\ge n+2である。

等号の例として、a11=a12=a21=a22=1/2a_{11}=a_{12}=a_{21}=a_{22}=1/2、3≤i≤n3\le i\le nについてaii=1a_{ii}=1とし、他の成分を00とするnn次正方行列AAをとる。成分は非負であり、第11、22行と第11、22列の和は1/2+1/2=11/2+1/2=1、第ii行と第ii列(i≥3i\ge3)の和は11であるから、AAは二重確率行列である。正の成分は左上の四つとaiia_{ii}(3≤i≤n3\le i\le n)であるからp(A)=4+(n−2)=n+2p(A)=4+(n-2)=n+2である。

(5)を示す。C=(cij)C=(c_{ij})を成分が実数であるnn次正方行列とし、

γ′=max⁡σ ∑i=1nciσ(i)\gamma'=\max_{\sigma}\ \sum_{i=1}^{n}c_{i\sigma(i)}

と置く。ここで最大は置換σ\sigmaの全体をわたる。置換の個数はn!n!個で有限であるからγ′\gamma'は定まり、γ′\gamma'を与える置換σ♯\sigma^{\sharp}が存在する。定義 1.2によりPσP_\sigmaの第ii行で11に等しい成分は第σ(i)\sigma(i)列の成分だけであるから、任意の置換σ\sigmaについて

∑i=1n∑j=1ncij(Pσ)ij=∑i=1nciσ(i)\sum_{i=1}^{n}\sum_{j=1}^{n}c_{ij}(P_\sigma)_{ij}=\sum_{i=1}^{n}c_{i\sigma(i)}

が成り立つ。任意の二重確率行列AAをとる。定理 3.3により、置換σ1,…,σm\sigma_1,\dots,\sigma_mと正の実数λ1,…,λm\lambda_1,\dots,\lambda_mが存在してA=∑kλkPσkA=\sum_k\lambda_kP_{\sigma_k}かつ∑kλk=1\sum_k\lambda_k=1である。各成分についてaij=∑kλk(Pσk)ija_{ij}=\sum_k\lambda_k(P_{\sigma_k})_{ij}であり、和はすべて有限和であるから、加法の結合法則と交換法則により和の順序を入れ替えて

∑i,jcijaij=∑k=1mλk∑i,jcij(Pσk)ij=∑k=1mλk∑i=1nciσk(i)\sum_{i,j}c_{ij}a_{ij}=\sum_{k=1}^{m}\lambda_k\sum_{i,j}c_{ij}(P_{\sigma_k})_{ij}=\sum_{k=1}^{m}\lambda_k\sum_{i=1}^{n}c_{i\sigma_k(i)}

を得る。γ′\gamma'の定義により各kkについて∑iciσk(i)≤γ′\sum_ic_{i\sigma_k(i)}\le\gamma'であり、λk>0\lambda_k>0であるから

∑i,jcijaij ≤ ∑k=1mλkγ′=γ′∑k=1mλk=γ′\sum_{i,j}c_{ij}a_{ij}\ \le\ \sum_{k=1}^{m}\lambda_k\gamma'=\gamma'\sum_{k=1}^{m}\lambda_k=\gamma'

が成り立つ。さらに命題 1.3によりPσ♯P_{\sigma^{\sharp}}は二重確率行列であり、上の等式により∑i,jcij(Pσ♯)ij=γ′\sum_{i,j}c_{ij}(P_{\sigma^{\sharp}})_{ij}=\gamma'である。よって二重確率行列の全体における∑i,jcijaij\sum_{i,j}c_{ij}a_{ij}の最大値は存在してγ′\gamma'に等しく、置換行列で達成される。最小化の場合の証明と異なるのは、各項の評価∑iciσk(i)≤γ′\sum_ic_{i\sigma_k(i)}\le\gamma'の不等号の向きだけである。正の係数λk\lambda_kを掛けて足し合わせる段は、どちらの向きの不等号も保つ。▨

注意 6.2. 表示の一意性、二重確率行列全体が定める多面体の面の構造、および無限次への拡張は、本記事では扱っていない。

参考文献

  1. Richard A. Brualdi, Combinatorial Matrix Classes, Encyclopedia of Mathematics and its Applications 108, Cambridge University Press, Cambridge, 2006.二重確率行列の定義と、置換行列を逐次取り出す証明の構成を参考にした。
  2. Roger A. Horn and Charles R. Johnson, Matrix Analysis, 2nd ed., Cambridge University Press, Cambridge, 2013.Birkhoff の定理の主張と、凸結合表示の係数の扱いを参考にした。
  3. Alexander Schrijver, Combinatorial Optimization: Polyhedra and Efficiency, Algorithms and Combinatorics 24, vol. A, Springer, 2003.二重確率行列と二部グラフの完全マッチングの対応、および割当問題との関係を参考にした。

前提記事