証明.主張 (1)を示す。DG′の弧の形から、sを始点とする弧は(s,v−)(v∈W、{s,v}∈E)だけであり、v−を始点とする弧は(v−,v+)だけであり、v+を始点とする弧は(v+,u−)({v,u}∈E、u∈W)または(v+,t)({v,t}∈E)だけである。tを始点とする弧は無い。よってsからtへの有向道は、sからv1−へ移り、以後vi−からvi+へ、vi+からvi+1−へ移ることを繰り返し、最後にvr+からtへ至る形をとる。有向道の頂点は相異なるからv1,…,vrは相異なり、構成から{s,v1}、{vi,vi+1}、{vr,t}はいずれもEに属する。よってs,v1,…,vr,tはGのs-t道である。逆にGのs-t道s,v1,…,vr,tをとると、sとtが隣接しないのでr≥1であり、上の形の頂点の列がDG′の有向道を与える。頂点弧についての主張は構成から明らかである。
主張 (2)を示す。まず、s-t頂点切断Tが与えられたとする。頂点弧(v−,v+)(v∈T)をすべて取り除いた有向グラフにおいてsから到達可能なDG′の頂点全体をSと置く。s∈Sである。t∈Sであると仮定すると、取り除いた弧を用いないsからtへの有向道が存在し、主張 (1)によりそれはGのs-t道s,v1,…,vr,tに対応し、頂点弧(vi−,vi+)をすべて用いる。取り除いた弧を用いないことからvi∈/T(1≤i≤r)であり、この道はG−Tのs-t道である。これはTがs-t頂点切断であることに反する。よってt∈/Sであり、Sはs-tカットである。δ+(S)の弧aをとると、aが取り除いた弧でないならばaの終点はsから到達可能となりSに属するので、a∈δ+(S)に反する。よってδ+(S)は取り除いた弧の集合に含まれ、容量がすべて1であるからc(S)≤∣T∣である。
逆に、s-tカットSが与えられたとする。δ+(S)の各弧aに対し、Wの頂点ψ(a)を次のように定める。a=(v−,v+)のときψ(a)=v、a=(s,v−)のときψ(a)=v、a=(u+,v−)のときψ(a)=v、a=(v+,t)のときψ(a)=vとする。T={ψ(a): a∈δ+(S)}と置くとT⊆Wであり、∣T∣≤∣δ+(S)∣=c(S)である。Tがs-t頂点切断であることを示す。Gのs-t道s,v1,…,vr,tをとり、主張 (1)により得られるDG′の有向道を考える。この有向道はs∈Sから出発しt∈/Sで終わるので、始点がSに属し終点がSに属さない弧aを少なくとも一つ含む。a∈δ+(S)であり、四つの場合のいずれにおいてもψ(a)はv1,…,vrのいずれかである。よってこの道はTの頂点を通り、G−Tの道ではない。Gの任意のs-t道についてこれが成り立つので、G−Tにs-t道は存在せず、Tはs-t頂点切断である。
以上より、s-tカットの容量の最小値とs-t頂点切断の濃度の最小値は互いに他以下であり、等しい。▨
解答.
(1)を、kについての数学的帰納法で示す。k=0のときは0本の道からなる空の族が主張を満たす。k≥1とし、値がk−1である整数値のフローについて主張が成り立つとする。Af={a∈A: f(a)≥1}と置く。fは整数値をとり、容量制約によりf≥0であるから、a∈/Afであることとf(a)=0であることは同値である。
Vを頂点集合としAfを弧集合とする有向グラフにおいて、sから到達可能な頂点全体をSと置く。長さ0の有向道によりs∈Sである。t∈/Sと仮定すると、Sはs-tカットである。弧a=(x,y)∈δ+(S)がAfに属すると仮定する。x∈SであるからsからxへのAfの有向道Rが存在し、yがRに現れるならばRのyまでの部分が、現れないならばRの末尾にyを付け加えた列が、sからyへのAfの有向道になる。いずれの場合もy∈Sとなってa∈δ+(S)に反するので、a∈/Af、すなわちf(a)=0である。§E16.12 命題 2.2の等式とf≥0により
k=val(f)=a∈δ+(S)∑f(a)−a∈δ−(S)∑f(a)=−a∈δ−(S)∑f(a)≤0となり、k≥1に反する。よってt∈Sであり、Afの弧だけを用いるsからtへの有向道Pが存在する。
Pに現れる弧の集合をA(P)とし、a∈A(P)ではf′(a)=f(a)−1、a∈/A(P)ではf′(a)=f(a)と定める。A(P)⊆Afであるから0≤f′≤f≤cであり、f′は容量制約を満たし整数値をとる。Pの頂点は相異なるので、s,t以外の頂点vがPに現れるならばvを終点とするPの弧とvを始点とするPの弧はちょうど一本ずつであり、vへ入る流量とvから出る流量がともに1減る。vがPに現れないならば流量は変わらない。よってf′は保存則を満たし、フローである。Pはsを始点とする弧をちょうど一本含み、sを終点とする弧を含まないのでval(f′)=k−1である。帰納法の仮定により、sからtへの有向道P1,…,Pk−1であって、各弧aを用いる道の本数がf′(a)以下であるものが存在する。Pk=Pと置くと、a∈A(P)を用いる道の本数はf′(a)+1=f(a)以下であり、a∈/A(P)を用いる道の本数はf′(a)=f(a)以下である。よってP1,…,Pkは主張を満たす。
最後に、この主張から補題 2.2を導く。単位容量ネットワークでは、容量制約と整数性により各弧でf(a)∈{0,1}である。前段のP1,…,Pkについて、f(a)=0である弧はどの道にも用いられないので、各道はAf={a: f(a)=1}の弧だけを用いる。f(a)=1である弧は高々一本の道にしか用いられないので、どの二本の道も共通の弧をもたない。これは補題 2.2の結論である。
(2)を示す。V={s,u,v,t}、E={{s,u},{s,v},{u,t},{v,t},{u,v}}とし、辺版のネットワークDGを考える。fを、六つの弧(s,u)、(u,v)、(v,t)、(s,v)、(v,u)、(u,t)で値1、残りの四つの弧(u,s)、(v,s)、(t,u)、(t,v)で値0をとる写像とする。fは整数値をとり、容量制約を満たす。uを終点とする弧(s,u)、(v,u)、(t,u)の流量の和は2、uを始点とする弧(u,s)、(u,v)、(u,t)の流量の和は2である。vを終点とする弧(s,v)、(u,v)、(t,v)の流量の和は2、vを始点とする弧(v,s)、(v,u)、(v,t)の流量の和は2である。よってfはフローであり、val(f)=f(s,u)+f(s,v)−f(u,s)−f(v,s)=2である。s-tカット{s}についてはδ+({s})={(s,u),(s,v)}であるからc({s})=2であり、§E16.12 命題 2.2により任意のフローの値は2以下である。よってfは整数値の最大フローであり、辺{u,v}が生む二つの弧でともに値1をとる。有向道Q1: s,u,v,tとQ2: s,v,u,tは値1をとる弧だけを用い、Q1の弧(s,u),(u,v),(v,t)とQ2の弧(s,v),(v,u),(u,t)は共通の弧をもたない。ところが対応するs-t道s,u,v,tとs,v,u,tは辺{u,v}を共有する。
次に、fをDGの任意のフローとする。辺e={u,v}∈Eについてme=min{f(u,v),f(v,u)}と置く。DGの各弧(x,y)はただ一つの辺{x,y}から生じるので、g(u,v)=f(u,v)−me、g(v,u)=f(v,u)−meによってg:AG→Rが矛盾なく定まる。me≤f(u,v)、me≤f(v,u)かつme≥0であるから、各弧で0≤g≤f≤1であり、gは容量制約を満たす。またg(u,v)とg(v,u)の一方は0である。頂点wについて、wを終点とする弧はwを含む各辺e={x,w}が生む(x,w)であり、wを始点とする弧は同じ辺が生む(w,x)である。この二つの弧の値はともにmeだけ減り、wを含まない辺が生む弧はwに接しない。したがって
a∈δ+(w)∑g(a)−a∈δ−(w)∑g(a)=a∈δ+(w)∑f(a)−a∈δ−(w)∑f(a)がすべての頂点wで成り立つ。w∈V∖{s,t}では右辺は0であるからgは保存則を満たし、w=sとするとval(g)=val(f)を得る。fが整数値をとるときはmeも整数であり、gも整数値をとる。上の例のfではm{u,v}=1であり、gは(s,u),(u,t),(s,v),(v,t)で値1をとって、辺素なs-t道s,u,tとs,v,tを与える。
(3)を示す。まず、任意のs-tカットSについてTがs-t頂点切断であることを確かめる。ψの値はWに属するのでT⊆W=V∖{s,t}である。Gのs-t道s,v1,…,vr,tをとると、補題 4.2 (1)によりDG′の有向道s,v1−,v1+,…,vr−,vr+,tが得られる。この有向道はs∈Sから出発しt∈/Sで終わるので、δ+(S)に属する弧aを含む。aは(s,v1−)、(vi−,vi+)、(vi+,vi+1−)、(vr+,t)のいずれかであり、ψ(a)はそれぞれv1、vi、vi+1、vrである。よって道はTの頂点を通り、G−Tの道ではない。ゆえにG−Tにs-t道は存在せず、Tはs-t頂点切断である。
s-t頂点切断の最小濃度をλVとし、Sを最小カットとする。補題 4.2 (2)によりc(S)=λVであり、容量はすべて1であるから∣δ+(S)∣=λVである。Tはs-t頂点切断であるから∣T∣≥λVであり、Tはψの像であるから∣T∣≤∣δ+(S)∣=λVである。よって∣T∣=λVであり、Tは濃度が最小のs-t頂点切断である。ψは有限集合δ+(S)から同じ要素数の有限集合Tへの全射であるから単射である。
ψが単射でない例を作る。V={s,t,u,v}、E={{s,u},{s,v},{u,v},{u,t},{v,t}}とすると、sとtは隣接せず、W={u,v}である。DG′の弧は、頂点弧(u−,u+)、(v−,v+)、辺{u,v}が生む(u+,v−)、(v+,u−)、および(s,u−)、(s,v−)、(u+,t)、(v+,t)の八本である。S={s,u−,u+}はs-tカットであり、始点がSに属する弧のうち終点がSに属さないものを数えると
δ+(S)={(s,v−), (u+,v−), (u+,t)}である。ψ(s,v−)=v、ψ(u+,v−)=v、ψ(u+,t)=uであるからψは単射でなく、T={u,v}について∣T∣=2<3=c(S)である。このグラフではs,u,tとs,v,tが内点素であり、{u,v}が頂点切断であるから、定理 4.3の両辺はともに2であり、Sは最小カットでない。
(4)を示す。Gは単純グラフであるから、G′ではsとtは隣接しない。まず、Gのs-t道s=v0,v1,…,vk=tが辺{s,t}を用いるならばk=1であることを示す。あるiについて{vi−1,vi}={s,t}とすると、道の頂点は相異なりs=v0、t=vkであるから、{i−1,i}={0,k}であり、i−1<iよりi−1=0、i=kとなってk=1である。したがって、長さ2以上のGのs-t道はG′のs-t道であり、逆にG′のs-t道は長さ2以上のGのs-t道である。長さ1のs-t道はs,tだけであり、内点をもたない。
Gの内点素なs-t道の族の本数が有界であることを確かめる。族のうち内点をもたない道はs,tだけであるから高々一本であり、他の道の内点の集合はV∖{s,t}の互いに交わらない空でない部分集合であるから、他の道は∣V∣−2本以下である。よってGにおける最大本数κが定まる。G′における内点素なs-t道の最大本数をκ′、s-t頂点切断の最小濃度をλ′とすると、G′でsとtは隣接しないので、定理 4.3によりκ′=λ′である。
κ≥κ′+1を示す。G′の内点素なs-t道P1,…,Pκ′をとる。これらは長さ2以上のGの道であり、道s,tとは異なる。s,tは内点をもたないので、P1,…,Pκ′にs,tを加えたκ′+1本はGの内点素なs-t道である。κ≤κ′+1を示す。Gの内点素なs-t道κ本をとる。そのうちs,tに等しいものは高々一本であり、それを除いたκ−1本以上の道は長さ2以上であるからG′の道であり、内点素である。よってκ′≥κ−1である。以上によりκ=κ′+1=λ′+1である。
(5)を示す。取り替えた容量をc′と書く。c′は頂点弧で1、他の三種類の弧で∣V∣をとる。命題 1.3 (2)によりs-t頂点切断が存在するので、その最小濃度をλVと書く。DG′の頂点は有限個であるからs-tカットは有限個であり、c′に関する最小カットが存在する。
まず、任意のs-t頂点切断Tに対してc′(S)≤∣T∣を満たすs-tカットSが存在することを示す。補題 4.2 (2)の証明の前半と同じく、頂点弧(v−,v+)(v∈T)をすべて取り除いた有向グラフにおいて、sから到達可能なDG′の頂点全体をSと置く。同じ証明の議論は弧の容量を用いずに、Sがs-tカットであることと、δ+(S)が取り除いた頂点弧の集合に含まれることを示している。頂点弧の容量は1のままであるから
c′(S)=a∈δ+(S)∑c′(a)=∣δ+(S)∣≤∣T∣である。Tとして濃度λVの頂点切断をとると、c′に関する最小カットの容量はλV以下である。
次に、最小カットが頂点弧だけからなることを示す。S0={s}∪{v−: v∈W}と置く。s∈S0かつt∈/S0であるから、S0はs-tカットである。S0の頂点を始点とする弧は、sを始点とする弧(s,v−)と、v−を始点とする頂点弧(v−,v+)だけである。前者の終点v−はS0に属し、後者の終点v+はS0に属さない。よってδ+(S0)は頂点弧の全体であり、
c′(S0)=∣W∣=∣V∣−2である。s-tカットSについて、δ+(S)が頂点弧でない弧を一本でも含むならば、その弧の容量は∣V∣であり、容量はすべて非負であるからc′(S)≥∣V∣>c′(S0)となる。このときSは最小カットではない。したがって、c′に関する最小カットS∗についてδ+(S∗)は頂点弧だけからなり、c′(S∗)=∣δ+(S∗)∣である。
最後に、S∗から頂点切断を作る。T∗={v∈W: (v−,v+)∈δ+(S∗)}と置く。相異なる頂点の頂点弧は相異なるので、∣T∗∣=∣δ+(S∗)∣=c′(S∗)である。T∗がs-t頂点切断であることを示す。Gのs-t道s,v1,…,vr,tをとり、補題 4.2 (1)により得られるDG′の有向道を考える。この有向道はs∈S∗から出発しt∈/S∗で終わるので、始点がS∗に属し終点がS∗に属さない弧を少なくとも一つ含む。その弧はδ+(S∗)に属するので頂点弧である。補題 4.2 (1)により有向道が用いる頂点弧は(vi−,vi+)(1≤i≤r)であるから、あるiについてvi∈T∗である。よってこの道はG−T∗の道ではない。Gの任意のs-t道がG−T∗の道ではないので、T∗はs-t頂点切断であり、λV≤∣T∗∣=c′(S∗)である。以上より、c′に関する最小カットの容量はλV以下かつλV以上であるから、λVに等しい。よって取り替えの後でも補題 4.2 (2)が成り立つ。▨