最短経路の数え上げと鏡像原理

同義語:最短経路の数え上げcounting lattice paths

概要

最短経路の数え上げと鏡像原理(lattice paths and the reflection principle)とは、格子点 $A$ から右へ $p$、上へ $q$ 離れた格子点 $B$ まで右と上だけに 1 ずつ進む経路は、右 $p$ 個と上 $q$ 個の並べ方として $\binom{p+q}{p}$ 通りあることと、整数 $c$ に対する直線 $y=x+c$ に触れる経路を、はじめて触れる点まで折り返して数える方法である。$A$、$B$ がともにその直線の下側にあれば、触れる経路の数は $A$ を折り返した点から $B$ への経路の数に等しい。これで $(0,0)$ から $(n,n)$ への経路で $y=x$ より上に出ないものは $\frac{1}{n+1}\binom{2n}{n}$ 通り(Catalan 数)になり、開票でつねに一方がリードする確率(投票定理)も求まる。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 二項係数, 同じものを含む順列と多項定理

高校での出発点:碁盤の目の道

東西と南北にまっすぐな道が碁盤の目のように通っている町を考える。交差点 O から、東へ 4 区画、北へ 3 区画離れた交差点 B まで、遠回りをせずに(いちばん短い道のりで)行く道順は何通りか。高校では、東へ 1 区画進むことを R、北へ 1 区画進むことを U と書き、R を 4 個、U を 3 個並べる方法を数えて
$$ \binom{7}{3}=35 $$
通りと求める。

2 区画 × 2 区画の道順

O$(0,0)$ から $(2,2)$ まで、右(R)と上(U)だけで進む道順を全部書くと
$$ RRUU,\quad RURU,\quad RUUR,\quad URRU,\quad URUR,\quad UURR $$
の 6 通りである。どれも R を 2 個、U を 2 個含む並べ方であり、その数は $\dbinom42=6$ と一致する。

足し算で数える

O$(0,0)$ から各交差点までの道順の数を、交差点に書き込んでいく(図 1)。点 $(x,y)$ に着く最後の 1 歩は、左の点 $(x-1,y)$ から右へ進むか、下の点 $(x,y-1)$ から上へ進むかのどちらかである。よって、点 $(x,y)$ の数は「左の数+下の数」になる。いちばん下の行といちばん左の列は、まっすぐ進むしかないので $1$ である。
たとえば $(1,1)$ は $1+1=2$、$(2,1)$ は $2+1=3$、$(2,2)$ は $3+3=6$ である。これを続けると、$(4,3)$ には $15+20=35$ が入る。

O(0, 0) から各交差点までの道順の数。どの数も左の数と下の数の和になっている。太線は B(4, 3) への道順の 1 つ RRURRUU、点線は x + y = 4 の点を結んだ線 O(0, 0) から各交差点までの道順の数。どの数も左の数と下の数の和になっている。太線は B(4, 3) への道順の 1 つ RRURRUU、点線は x + y = 4 の点を結んだ線
図 1 の数を斜めに読むと、パスカルの三角形が現れる。たとえば $x+y=4$ の点 $(0,4),(1,3),(2,2),(3,1),(4,0)$(図 1 の点線の上)に並ぶ数は $1,4,6,4,1$ である。
では、道順に「対角線より上に出てはいけない」という制限がつくとどうなるか。

対角線を越えない道順

O$(0,0)$ から $(3,3)$ まで行く道順は $\dbinom63=20$ 通りある。このうち、通る点がすべて $y\le x$ をみたす(対角線 $y=x$ より上に出ない)ものは
$$ RRRUUU,\quad RRURUU,\quad RRUURU,\quad RURRUU,\quad RURURU $$
の 5 通りである(図 3)。$20$ から何を引けば $5$ になるのか。これに答えるのが鏡像原理である(cor-lpr-diagonal)。

この記事で答える問いは次の 4 つである。

  1. 道順の数が二項係数になるのはなぜか。→ thm-lpr-count
  2. 「左の数+下の数」で数えられるのはなぜか。→ prop-lpr-recursion
  3. 対角線を越えない道順は何通りか。→ thm-lpr-reflection、cor-lpr-diagonal
  4. 開票の途中でずっと一方がリードしている確率は。→ thm-lpr-ballot
    高校の計算この記事の言葉大学の言葉
    R と U の並べ方を数える経路と文字列の 1 対 1 の対応全単射 による数え上げ
    左の数+下の数最後の 1 歩で分けるPascal の関係、漸化式
    通る点で掛け、通らない場合は引く積の法則と余事象和の法則・積の法則
    越える経路を折り返して数える鏡像原理鏡映による全単射、ランダムウォーク の鏡像原理
    越えない経路の数 $\dfrac{1}{n+1}\dbinom{2n}{n}$対角線を越えない経路Catalan数

最短経路を定義する

座標平面上で、$x$ 座標と $y$ 座標がどちらも整数である点を 格子点 という。

最短経路

格子点 $A=(a_1,a_2)$ から格子点 $B=(b_1,b_2)$ への 最短経路 とは、$A$ から出発して、右へ 1 進む($(x,y)$ から $(x+1,y)$ へ。これを R と書く)か、上へ 1 進む($(x,y)$ から $(x,y+1)$ へ。これを U と書く)かを何回かくり返して $B$ に着く道順のことである。最短経路は、R と U を並べた文字列で表す。最短経路が通る格子点を、出発点と到着点も含めて、その経路の 通る点 という。

$A$ から $B$ へ最短経路があるのは $b_1\ge a_1$ かつ $b_2\ge a_2$ のときで、そのとき R はちょうど $b_1-a_1$ 回、U はちょうど $b_2-a_2$ 回使う。R を 1 回使うと $x$ 座標が 1 増え、U を使っても $x$ 座標は変わらないからである($y$ 座標も同様)。
この道順が「最短」と呼ばれる理由を確かめておく。道に沿って 1 区画ずつ進むとき、1 歩は右・左・上・下のどれかである。

最短経路が最短である理由

$b_1\ge a_1$、$b_2\ge a_2$ とする。道に沿って $A$ から $B$ へ、右・左・上・下に 1 区画ずつ進む道のりは、少なくとも $(b_1-a_1)+(b_2-a_2)$ 区画である。ちょうどこの長さになるのは、右と上だけを使うとき、つまり最短経路のときに限る。

$x+y$ の増え方を見る

方針:点 $(x,y)$ に対して $x+y$ の値を見る。1 歩で $x+y$ がどれだけ変わるかを調べる。
段 1(1 歩の変化)。右・上へ 1 歩進むと $x+y$ は $1$ 増え、左・下へ 1 歩進むと $x+y$ は $1$ 減る。
段 2(必要な歩数)。$A$ では $x+y=a_1+a_2$、$B$ では $x+y=b_1+b_2$ なので、全体で $x+y$ は $d:=(b_1-a_1)+(b_2-a_2)$ 増える。右・上の歩数を $s$、左・下の歩数を $t$ とすると、段 1 により $s-t=d$ である。全体の歩数は $s+t=d+2t\ge d$ である。
段 3(等号の場合)。歩数がちょうど $d$ になるのは $t=0$、つまり左・下を 1 度も使わないときである。$\square$

遠回りの例

$(0,0)$ から $(1,1)$ へは、最短経路 RU と UR の 2 通りで、どちらも 2 区画である。右・左・上・下を使ってよいなら、たとえば「右、上、左、右」も $(1,1)$ に着くが、4 区画かかる。prf-lpr-shortest の記号では $d=2$、$t=1$ で、歩数は $d+2t=4$ である。

主定理 1:最短経路の数

最短経路の数

$b_1\ge a_1$、$b_2\ge a_2$ とし、$p:=b_1-a_1$、$q:=b_2-a_2$ とおく。格子点 $A=(a_1,a_2)$ から $B=(b_1,b_2)$ への最短経路は
$$ \binom{p+q}{p}=\frac{(p+q)!}{p!\,q!} $$
通りある。

高校数学で解く:$R$ と $U$ の並べ方

経路を文字列とみる

方針:最短経路と「R を $p$ 個、U を $q$ 個並べた文字列」が 1 対 1 に対応することを示し、文字列の個数を数える。
段 1(経路から文字列へ)。最短経路は、def-lpr-path により R と U を並べた文字列で表され、R は $p$ 個、U は $q$ 個である。
段 2(文字列から経路へ)。逆に、R を $p$ 個、U を $q$ 個並べた文字列を 1 つ決め、$A$ から文字列のとおりに進むと、$x$ 座標は $p$ 増え、$y$ 座標は $q$ 増えて、$B$ に着く。よって最短経路が 1 つ決まる。
段 3(対応が 1 対 1)。段 1 と段 2 の操作は互いに逆である。異なる経路は、はじめて違う方向に進む歩があるので、異なる文字列になる。よって、最短経路の数は文字列の数に等しい。
段 4(数える)。長さ $p+q$ の文字列で、R を置く $p$ か所を選べば、残りの $q$ か所は U で埋まる。選び方は $\dbinom{p+q}{p}$ 通りである(同じものを含む順列の数 $\dfrac{(p+q)!}{p!\,q!}$ としても求まる。同じものを含む順列と多項定理)。$\square$

もう 1 つの見方:足し算の表

ex-lpr-table の「左の数+下の数」は、次の漸化式である。

最後の 1 歩で分ける

$O=(0,0)$ から格子点 $(x,y)$($x,y\ge0$)への最短経路の数を $N(x,y)$ とする。このとき $N(x,0)=N(0,y)=1$ で、$x\ge1$、$y\ge1$ なら
$$ N(x,y)=N(x-1,y)+N(x,y-1) $$
である。

最後の 1 歩が R か U か

方針:$(x,y)$ への最短経路を、最後の 1 歩が R か U かで 2 組に分けて数える。
段 1(端)。$y=0$ のとき、U を 1 回も使えないので経路は $RR\cdots R$ の 1 通りである。$x=0$ のときも同様に $1$ 通りである。
段 2(分ける)。$x\ge1$、$y\ge1$ とする。最短経路の最後の 1 歩は R か U のどちらかであり、両方であることはない。
段 3(最後が R の組)。最後が R の経路から最後の R を取り除くと、$(x-1,y)$ への最短経路になる。逆に、$(x-1,y)$ への最短経路の後ろに R を付けると、最後が R の $(x,y)$ への経路になる。この 2 つの操作は互いに逆なので、この組の経路は $N(x-1,y)$ 個である。
段 4(最後が U の組)。同じようにして、最後が U の経路は $N(x,y-1)$ 個である。
段 5(足す)。和の法則により $N(x,y)=N(x-1,y)+N(x,y-1)$ である。$\square$

thm-lpr-count の $\dbinom{x+y}{x}$ がこの漸化式をみたすことは、二項定理と組合せの恒等式 の Pascal の関係 $\dbinom{n}{k}=\dbinom{n-1}{k-1}+\dbinom{n-1}{k}$ で $n=x+y$、$k=x$ とおいたものである。端の値も $\dbinom{x}{x}=\dbinom{y}{0}=1$ で一致する。漸化式と端の値から、表の数は $x+y$ の小さい順に 1 つずつ決まるので、2 つの数え方は同じ表を作る。同じ「最後の 1 歩で分ける」考え方は、同じものを含む順列と多項定理 の多項係数の漸化式でも使う。

通る点・通らない点

決まった点を通る道順

O$(0,0)$ から B$(4,3)$ への最短経路のうち、点 P$(2,1)$ を通るものを数える。P を通る経路は、「O から P への経路」のあとに「P から B への経路」を続けたものと 1 対 1 に対応する。thm-lpr-count により、O から P は $\dbinom{3}{2}=3$ 通り、P から B は $p=2$、$q=2$ で $\dbinom{4}{2}=6$ 通りなので、積の法則により $3\times6=18$ 通りである(積の法則・和の法則と、それらを使う数え方の全体像は 場合の数の数え方の体系 にまとめてある)。
P を通らない経路は、全体の $35$ 通りから引いて $35-18=17$ 通りである。

通行止めの道

O$(0,0)$ から B$(4,3)$ へ行くとき、$(2,1)$ と $(3,1)$ を結ぶ 1 区画が通行止めだとする。この区画を通る経路は、「O から $(2,1)$」「$(2,1)$ から $(3,1)$ へ R」「$(3,1)$ から B」をつないだもので、$\dbinom32\times1\times\dbinom{3}{1}=3\times3=9$ 通りある。よって通行止めを避ける経路は $35-9=26$ 通りである。

2 つの条件を同時に課すときは、集合の個数の計算になる。P を通る経路の集合を $X$、通行止めの区画を通る経路の集合を $Z$ とすると、P を通らず通行止めの区画も通らない経路は、全体から和集合 $X\cup Z$ を除いたものである。和集合の個数は $|X\cup Z|=|X|+|Z|-|X\cap Z|$ で求まる(集合の要素の個数と包除原理)。ここでは通行止めの区画を通る経路はすべて P$(2,1)$ を通るので $X\cap Z=Z$ で、$|X\cup Z|=18+9-9=18$、求める経路は $35-18=17$ 通りである。条件が 3 つ以上になれば 包除原理 を使う。
どの数も、35 通りの経路をすべて書き出して確かめた。

主定理 2:鏡像原理

直線での折り返し

ex-lpr-diagonal3 の問いに答えるために、直線で折り返す操作を使う。$c$ を整数とし、直線
$$ L_c:\ y=x+c $$
を考える。点 $(x,y)$ は、$y< x+c$ のとき $L_c$ の 下側、$y>x+c$ のとき 上側 にあるという。

直線 $L_c$ での折り返し

点 $P=(x,y)$ に対し、点
$$ \sigma_c(P):=(y-c,\ x+c) $$
を、$P$ を直線 $L_c$ で折り返した点という。

折り返した点を計算する

$c=1$(直線 $y=x+1$)のとき:
(1) $\sigma_1(0,0)=(0-1,\ 0+1)=(-1,1)$。
(2) $\sigma_1(3,1)=(1-1,\ 3+1)=(0,4)$。$(3,1)$ と $(0,4)$ の中点は $(1.5,\ 2.5)$ で、$2.5=1.5+1$ なので直線 $y=x+1$ の上にある。また 2 点を結ぶ向き $(0,4)-(3,1)=(-3,3)$ は、直線の向き $(1,1)$ と垂直である(内積 $-3+3=0$)。
(3) $\sigma_1(2,3)=(3-1,\ 2+1)=(2,3)$。点 $(2,3)$ は $3=2+1$ をみたし、直線の上にあるので動かない。
$c=0$ のときは $\sigma_0(x,y)=(y,x)$ で、直線 $y=x$ に関する対称移動($x$ 座標と $y$ 座標の入れ替え)である。

折り返しが線対称の移動であること

$\sigma_c$ が線対称の移動であることは、(2) と同じ計算で一般に確かめられる。$(x,y)$ と $(y-c,x+c)$ の中点は $\bigl(\frac{x+y-c}{2},\frac{x+y+c}{2}\bigr)$ で $L_c$ 上にあり、2 点を結ぶ向き $(y-c-x,\ x+c-y)$ は $(1,1)$ との内積が $0$ である。

鏡像原理で使う性質をまとめる。

折り返しの性質

$c$ を整数とする。
(1) $\sigma_c$ は格子点を格子点に移す。$L_c$ 上の点は動かさない。2 回行うと元に戻る:$\sigma_c(\sigma_c(P))=P$。
(2) $L_c$ の下側の点を上側に、上側の点を下側に移す。
(3) 1 歩の向きを入れ替える。$P$ から R で 1 歩進んだ点の折り返しは、$\sigma_c(P)$ から U で 1 歩進んだ点であり、$P$ から U で 1 歩進んだ点の折り返しは、$\sigma_c(P)$ から R で 1 歩進んだ点である。

座標で計算する

方針:def-lpr-reflection の式に代入して、3 つを順に確かめる。$P=(x,y)$ とする。
段 1((1))。$x,y,c$ が整数なら $y-c$、$x+c$ も整数である。$P$ が $L_c$ 上なら $y=x+c$ なので、$\sigma_c(P)=(x+c-c,\ x+c)=(x,y)=P$ である。また $\sigma_c(\sigma_c(P))=\sigma_c(y-c,\ x+c)=\bigl((x+c)-c,\ (y-c)+c\bigr)=(x,y)$ である。
段 2((2))。$\sigma_c(P)=(x',y')$ とおくと $x'=y-c$、$y'=x+c$ である。$\sigma_c(P)$ が上側にある条件 $y'>x'+c$ は、$x+c>y-c+c$、つまり $x+c>y$ と同じであり、これは $P$ が下側にある条件である。上側と下側を入れ替えても同じである。
段 3((3))。$P$ から R で進んだ点 $(x+1,y)$ の折り返しは $(y-c,\ x+1+c)$ で、これは $\sigma_c(P)=(y-c,\ x+c)$ から上へ 1 進んだ点である。$P$ から U で進んだ点 $(x,y+1)$ の折り返しは $(y+1-c,\ x+c)$ で、これは $\sigma_c(P)$ から右へ 1 進んだ点である。$\square$

  1. により、最短経路の一部を折り返すと、R と U を入れ替えた最短経路の一部になる。直線の傾きが $1$ であることがここで効いている(ex-lpr-vertical)。

鏡像原理

最短経路が直線 $L_c$ に 触れる とは、通る点のどれかが $L_c$ 上にあることをいう。

鏡像原理

$c$ を整数とし、格子点 $A$、$B$ はどちらも直線 $L_c:y=x+c$ の下側にあるとする。$A':=\sigma_c(A)$ とおく。このとき
$$ (A\text{ から }B\text{ への最短経路のうち、}L_c\text{ に触れるものの数})=(A'\text{ から }B\text{ への最短経路の数}) $$
である。

証明の考え方は図 2 のとおりである。$L_c$ に触れる経路について、はじめて $L_c$ に触れる点 $T$ までの部分だけを折り返すと、$A'$ から出発する経路になる。
A(0, 0) から B(4, 4) への経路(実線)は T(1, 2) ではじめて直線 y = x + 1 に触れる。A から T までを折り返すと A'(−1, 1) から T への経路(破線)になり、T から先はそのまま使う A(0, 0) から B(4, 4) への経路(実線)は T(1, 2) ではじめて直線 y = x + 1 に触れる。A から T までを折り返すと A'(−1, 1) から T への経路(破線)になり、T から先はそのまま使う

図 2 の経路を折り返す

$c=1$、$A=(0,0)$、$B=(4,4)$ とする。経路 $RUUURRUR$ の通る点は
$$ (0,0),\ (1,0),\ (1,1),\ (1,2),\ (1,3),\ (2,3),\ (3,3),\ (3,4),\ (4,4) $$
で、$y=x+1$ をはじめてみたすのは $T=(1,2)$(3 歩目のあと)である。はじめの 3 歩 $RUU$ を折り返すと、lem-lpr-reflection の (3) により R と U が入れ替わって $URR$ になり、$A'=\sigma_1(0,0)=(-1,1)$ から
$$ (-1,1),\ (-1,2),\ (0,2),\ (1,2) $$
と進んで $T$ に着く。残りの $URRUR$ をそのまま続けると、$A'$ から $B$ への経路 $URR\,URRUR$ になる。

はじめて触れる点までを折り返す

方針:「$A$ から $B$ への、$L_c$ に触れる経路」の集まりを $X$、「$A'$ から $B$ への経路」の集まりを $Y$ とする。$X$ から $Y$ への対応 $\Phi$ と、$Y$ から $X$ への対応 $\Psi$ を作り、互いに逆であることを示す。
段 0(道具:$L_c$ との上下は 1 歩で 1 ずつ変わる)。点 $(x,y)$ に対して $h(x,y):=y-x-c$ とおく。下側は $h<0$、$L_c$ 上は $h=0$、上側は $h>0$ である。R で 1 歩進むと $h$ は $1$ 減り、U で 1 歩進むと $h$ は $1$ 増える。
段 1($\Phi$ を作る)。$X$ の経路 $w$ を 1 つとる。$w$ は $L_c$ に触れるので、通る点のうち $L_c$ 上にある最初の点 $T$ がある。$w$ の $A$ から $T$ までの部分の通る点をすべて $\sigma_c$ で折り返す。lem-lpr-reflection の (3) により、折り返した点の列は $\sigma_c(A)=A'$ から R と U で進む経路になり、(1) により $\sigma_c(T)=T$ で終わる。これに $w$ の $T$ から $B$ までの部分をつなげたものを $\Phi(w)$ とする。$\Phi(w)$ は $A'$ から $B$ への最短経路なので、$Y$ に入る。
段 2($Y$ の経路はどれも $L_c$ に触れる)。$Y$ の経路 $v$ をとる。$A$ は下側なので、lem-lpr-reflection の (2) により $A'$ は上側にあり、$h(A')>0$ である。$B$ は下側なので $h(B)<0$ である。段 0 により、$v$ に沿って $h$ は 1 歩ごとに $1$ ずつしか変わらないので、正の値から負の値に移る途中で必ず $0$ を通る。よって $v$ は $L_c$ に触れる。
段 3($\Psi$ を作る)。$Y$ の経路 $v$ について、段 2 により $L_c$ 上にある最初の通る点 $T'$ がある。$v$ の $A'$ から $T'$ までの部分を $\sigma_c$ で折り返し、$T'$ から $B$ までの部分をつなげたものを $\Psi(v)$ とする。段 1 と同じ理由で、これは $A$ から $B$ への最短経路で、$T'$ を通るので $L_c$ に触れる。よって $\Psi(v)$ は $X$ に入る。
段 4(最初に触れる点は折り返しても変わらない)。段 1 の $w$ で、$T$ より前の通る点はどれも $L_c$ 上にない。それらの折り返しも、(1)・(2) により $L_c$ 上にない($L_c$ 上の点は $L_c$ 上の点の折り返しでしか得られない。$\sigma_c$ を 2 回行うと元に戻るからである)。よって $\Phi(w)$ で $L_c$ 上にある最初の通る点も $T$ である。同じように、$\Psi(v)$ で $L_c$ 上にある最初の通る点も $T'$ である。
段 5(互いに逆)。$\Psi(\Phi(w))$ を考える。段 4 により $\Phi(w)$ の最初に触れる点は $T$ なので、$\Psi$ は $\Phi(w)$ の $A'$ から $T$ までを折り返す。この部分は $w$ の $A$ から $T$ までを折り返したものなので、もう一度折り返すと (1) により元の $w$ の部分に戻る。$T$ から先は変えていない。よって $\Psi(\Phi(w))=w$ である。同じように $\Phi(\Psi(v))=v$ である。
段 6(結論)。$\Phi$ と $\Psi$ は互いに逆の対応なので、$X$ と $Y$ の経路は 1 対 1 に対応し、個数が等しい。$\square$

$Y$ の個数は thm-lpr-count で計算できる。つまり、「触れる経路」という数えにくいものが、「出発点を折り返した点からの経路全体」という数えやすいものに置きかわる。

対角線を越えない経路

対角線を越えない経路の数

$n\ge1$ とする。$(0,0)$ から $(n,n)$ への最短経路のうち、通る点がすべて $y\le x$ をみたすものの数は
$$ \binom{2n}{n}-\binom{2n}{n-1}=\frac{1}{n+1}\binom{2n}{n} $$
である。

越える経路は $y=x+1$ に触れる

方針:「$y\le x$ をみたさない点を通る」ことを「直線 $y=x+1$ に触れる」ことに言いかえ、thm-lpr-reflection を $c=1$ で使う。
段 1(言いかえ)。通る点に $y>x$ となる点があるとする。格子点なので $y\ge x+1$、つまり $h=y-x-1\ge0$ である。出発点 $(0,0)$ では $h=-1<0$ であり、段 0(prf-lpr-reflection)により $h$ は 1 歩ごとに $1$ ずつしか変わらないので、その点までのどこかで $h=0$、つまり $y=x+1$ となる点を通る。逆に $y=x+1$ となる点を通れば、その点で $y>x$ である。よって、「$y\le x$ をみたさない点を通る経路」と「$L_1$ に触れる経路」は同じものである。
段 2(鏡像原理)。$A=(0,0)$ は $0<0+1$、$B=(n,n)$ は $n< n+1$ をみたすので、どちらも $L_1$ の下側にある。$A'=\sigma_1(0,0)=(-1,1)$ である。thm-lpr-reflection により、$L_1$ に触れる経路の数は $(-1,1)$ から $(n,n)$ への経路の数に等しい。この経路は R を $n-(-1)=n+1$ 個、U を $n-1$ 個使うので、thm-lpr-count により $\dbinom{2n}{n+1}=\dbinom{2n}{n-1}$ 通りである。
段 3(引く)。全体は $\dbinom{2n}{n}$ 通りなので、$y\le x$ をみたす経路は $\dbinom{2n}{n}-\dbinom{2n}{n-1}$ 通りである。
段 4(式変形)。$\dbinom{2n}{n-1}=\dfrac{(2n)!}{(n-1)!\,(n+1)!}$ である。$n!=n\cdot(n-1)!$、$(n+1)!=(n+1)\cdot n!$ を使って分母をそろえると
$$ \binom{2n}{n}-\binom{2n}{n-1}=\frac{(2n)!\,(n+1)}{n!\,(n+1)!}-\frac{(2n)!\,n}{n!\,(n+1)!}=\frac{(2n)!}{n!\,(n+1)!}=\frac{1}{n+1}\cdot\frac{(2n)!}{n!\,n!} $$
となる。最後の式は $\dfrac{1}{n+1}\dbinom{2n}{n}$ である。$\square$

(0, 0) から (3, 3) への最短経路のうち、対角線 y = x(破線)より上に出ない 5 通り (0, 0) から (3, 3) への最短経路のうち、対角線 y = x(破線)より上に出ない 5 通り

対角線を越えない経路の数
  1. $n=3$:$\dbinom63-\dbinom62=20-15=5$ で、ex-lpr-diagonal3 の 5 通り(図 3)と一致する。越える 15 通りは、$(-1,1)$ から $(3,3)$ への経路(R を 4 個、U を 2 個)と 1 対 1 に対応する。
  2. $n=2$:$\dbinom42-\dbinom41=6-4=2$。$RRUU$ と $RURU$ の 2 通りである。
  3. $n=1,2,3,4,5,6$ で、$1,2,5,14,42,132$ である。全部の経路を書き出して数えても一致する。

この数 $\dfrac{1}{n+1}\dbinom{2n}{n}$ は Catalan 数 と呼ばれ、括弧の正しい並べ方や多角形の三角形分割の数としても現れる。それらが同じ数になる理由は Catalan数(高校数学) で扱う。

長方形の場合

$m\ge n\ge1$ とし、$(0,0)$ から $(m,n)$ への最短経路のうち、通る点がすべて $y\le x$ をみたすものを数える。prf-lpr-diagonal と同じく、$B=(m,n)$ は $n< m+1$ なので $L_1$ の下側にあり、越える経路は $(-1,1)$ から $(m,n)$ への経路(R を $m+1$ 個、U を $n-1$ 個)と 1 対 1 に対応する。よって求める数は
$$ \binom{m+n}{n}-\binom{m+n}{n-1} $$
である。$m=4$、$n=2$ なら $\dbinom62-\dbinom61=15-6=9$ 通り、$m=5$、$n=3$ なら $\dbinom83-\dbinom82=56-28=28$ 通りである。どちらも全部の経路を書き出して確かめた。

投票定理:開票でずっとリードする確率

鏡像原理は、確率の問題にも使える。

開票の順番を経路とみる

候補者 A が 3 票、B が 2 票を得た選挙で、5 票を 1 票ずつ開票する。開票の順番(A と B の並び)は $\dbinom52=10$ 通りある。A の票を R、B の票を U とすると、開票の順番は $(0,0)$ から $(3,2)$ への最短経路になる。途中の点 $(x,y)$ は「$x+y$ 票を開けた時点で A が $x$ 票、B が $y$ 票」を表す。
「最初の 1 票から最後まで、A がずっと B より多い」順番は
$$ AAABB,\qquad AABAB $$
の 2 通りだけである。$AABBA$ は 4 票目で 2 対 2 に並ぶので入らない。10 通りが同じ確からしさで起こるとすると、確率は $\dfrac{2}{10}=\dfrac15$ である。これは $\dfrac{3-2}{3+2}$ に等しい。

投票定理

$a>b\ge0$ を整数とする。A が $a$ 票、B が $b$ 票を得て、票を 1 票ずつ開票する。開票の順番 $\dbinom{a+b}{a}$ 通りがすべて同じ確からしさで起こるとき、最初の 1 票から最後まで A の票数がつねに B の票数より多い確率は
$$ \frac{a-b}{a+b} $$
である。

1 歩目のあとで鏡像原理を使う

方針:開票の順番を $(0,0)$ から $(a,b)$ への最短経路とみる。「A がつねに多い」を「1 歩目が R で、そのあと直線 $y=x$ に触れない」に言いかえ、thm-lpr-reflection を $c=0$ で使う。
段 1(言いかえ)。A がつねに多いとは、出発点以外のすべての通る点で $x>y$、つまり $y< x$ となることである。1 歩目が U なら点 $(0,1)$ で $x< y$ となるので、1 歩目は R でなければならない。よって、求める経路は「1 歩目が R で、$(1,0)$ から $(a,b)$ までの部分が直線 $L_0:y=x$ に触れない経路」であり、その個数は「$(1,0)$ から $(a,b)$ への経路で $L_0$ に触れないもの」の個数に等しい。逆に、1 歩目が R で、$(1,0)$ から先が $L_0$ に触れない経路では、$(1,0)$ で $y-x=-1<0$ であり、prf-lpr-reflection の段 0 により $y-x$ は 1 歩ごとに $1$ ずつしか変わらないので、$0$ にならない限り負のままである。よって $(1,0)$ から先のすべての通る点で $y-x<0$、つまり $y< x$ となり、A がつねに多い。
段 2(全体)。$(1,0)$ から $(a,b)$ への経路は、R を $a-1$ 個、U を $b$ 個使うので、thm-lpr-count により $\dbinom{a+b-1}{a-1}$ 通りある。
段 3(触れる経路)。$(1,0)$ は $0<1$、$(a,b)$ は $b< a$ をみたすので、どちらも $L_0$ の下側にある。$\sigma_0(1,0)=(0,1)$ である。thm-lpr-reflection により、$L_0$ に触れる経路は $(0,1)$ から $(a,b)$ への経路と同じ数だけある。この経路は R を $a$ 個、U を $b-1$ 個使うので $\dbinom{a+b-1}{a}$ 通りである($b=0$ のときは経路がなく、$\dbinom{a-1}{a}=0$ と約束すれば式もそのまま使える)。
段 4(引いて整理する)。求める経路の数は
$$ \binom{a+b-1}{a-1}-\binom{a+b-1}{a}=\frac{(a+b-1)!}{(a-1)!\,b!}-\frac{(a+b-1)!}{a!\,(b-1)!} $$
である。$a!=a\cdot(a-1)!$、$b!=b\cdot(b-1)!$ を使って分母を $a!\,b!$ にそろえると
$$ \frac{(a+b-1)!\,a}{a!\,b!}-\frac{(a+b-1)!\,b}{a!\,b!}=\frac{(a+b-1)!\,(a-b)}{a!\,b!}=\frac{a-b}{a+b}\cdot\frac{(a+b)!}{a!\,b!} $$
となる(最後は $(a+b)!=(a+b)\cdot(a+b-1)!$ を使った。$b=0$ のときも第 2 項は $0$ で、同じ式になる)。
段 5(確率)。全体は $\dbinom{a+b}{a}=\dfrac{(a+b)!}{a!\,b!}$ 通りで、どれも同じ確からしさなので、確率は段 4 の数をこれで割った $\dfrac{a-b}{a+b}$ である。$\square$

投票定理の数値
  1. $a=4$、$b=2$:開票の順番は $\dbinom62=15$ 通りで、A がつねに多いのは
    $$ AAAABB,\quad AAABAB,\quad AAABBA,\quad AABAAB,\quad AABABA $$
    の 5 通り。確率 $\dfrac{5}{15}=\dfrac13=\dfrac{4-2}{4+2}$ である。
  2. $a=5$、$b=3$:$\dbinom83=56$ 通りのうち $14$ 通りで、確率 $\dfrac{14}{56}=\dfrac14=\dfrac{5-3}{5+3}$ である。
  3. $a=3$、$b=1$:$4$ 通りのうち $AAAB$、$AABA$ の $2$ 通りで、確率 $\dfrac12=\dfrac{3-1}{3+1}$ である。
    どれも全部の順番を書き出して確かめた。

例と反例

外した仮定崩れる主張ボックス
右と上だけで進む(最短)経路は $\dbinom{p+q}{p}$ 通りex-lpr-four-directions
$B$ も $L_c$ の下側にある触れる経路の数は $A'$ からの経路の数に等しいex-lpr-opposite
折り返す直線の傾きが $1$折り返すと R と U が入れ替わるex-lpr-vertical
「上に出ない」(直線 $y=x$ に触れてよい)越える経路は $y=x+1$ に触れる経路ex-lpr-strict
反例:4 方向に進んでよいとき

$(0,0)$ から $(1,1)$ へ、右・左・上・下に 1 歩ずつ、ちょうど 4 歩で行く道順は $24$ 通りある(全部書き出して数えた)。最短経路の数 $\dbinom21=2$ とは違う。歩数を決めなければ、行って戻るをくり返せるので道順は無限にある。thm-lpr-count は、R と U だけを使う(prop-lpr-shortest により、最短の道のりで進む)ときの数である。

反例:$B$ が直線の上側にあるとき

$c=1$、$A=(0,0)$、$B=(0,2)$ とする。$B$ は $2>0+1$ なので $L_1$ の上側にある。$A$ から $B$ への経路は $UU$ の 1 通りで、点 $(0,1)$ で $L_1$ に触れる。一方、$A'=(-1,1)$ から $B$ への経路は $RU$ と $UR$ の 2 通りある。$1\ne2$ なので、thm-lpr-reflection の等式は成り立たない。証明の段 2($A'$ から $B$ への経路は必ず $L_c$ に触れる)で $h(B)<0$ を使っており、$B$ が上側にあるとこれが成り立たない。実際、$UR$ は $(-1,2)$、$(0,2)$ と進み、$L_1$ に触れない。

反例:傾きが 1 でない直線で折り返す

直線 $x=1$ で折り返す移動は $(x,y)\mapsto(2-x,\ y)$ である。点 $(0,0)$ から R で進んだ $(1,0)$ は $(1,0)$ に、$(0,0)$ 自身は $(2,0)$ に移るので、折り返した 1 歩は $(2,0)$ から $(1,0)$ への「左へ 1 歩」になる。これは R でも U でもないので、折り返した部分は最短経路にならない。lem-lpr-reflection の (3) は、傾き $1$ の直線 $y=x+c$ で折り返すときにだけ成り立つ。

反例:「上に出ない」と「触れない」を取り違える

$(0,0)$ から $(3,3)$ への経路で、出発点と到着点以外の通る点がすべて $y< x$ をみたす(直線 $y=x$ より真に下にある)ものは、$RRRUUU$ と $RRURUU$ の 2 通りである。$y\le x$(触れてよい)の 5 通り(ex-lpr-diagonal3)とは違う。「$y\le x$ をみたさない点を通る」は「$y=x+1$ に触れる」と同じである(prf-lpr-diagonal の段 1)。一方、1 歩目が R の経路については、出発点と到着点を除いた通る点に「$y< x$ をみたさない点がある」ことは「途中で $y=x$ に触れる」ことと同じである。1 歩目が U なら、その時点で $y>x$ になり、$UUURRR$ のように途中で $y=x$ に触れずに到着点まで行けるので、この言いかえは成り立たない。どちらの直線で折り返すかは、条件に等号が入るかどうかで決まる。投票定理(thm-lpr-ballot)は、等号を許さない場合の計算であり、その証明の段 1 で 1 歩目を R に固定しているのは、まさにこのためである。

大学数学で見る

コイン投げとランダムウォーク

コインを投げて、表なら $+1$、裏なら $-1$ だけ数直線上を動く点を考える。$k$ 回投げたあとの位置を $S_k$ とする。表の回数を $x$、裏の回数を $y$ とすると $S_k=x-y$ であり、コイン投げの結果の列は、R(表)と U(裏)からなる最短経路と 1 対 1 に対応する。直線 $y=x+c$ に触れることは、位置 $S_k$ が $-c$ に達することにあたる。このように動く点を 単純ランダムウォーク といい(ランダムウォーク)、thm-lpr-reflection はその鏡像原理と呼ばれる。
投票定理は、この言葉では次のようになる。表が $a$ 回、裏が $b$ 回($a>b$)出たと分かっているとき、途中の位置 $S_1,S_2,\dots,S_{a+b}$ がすべて正である条件付き確率は $\dfrac{a-b}{a+b}$ である。表の出る確率が $\frac12$ でなくても、表 $a$ 回・裏 $b$ 回の列はどれも同じ確率 $p^a(1-p)^b$ で起こるので、この条件付き確率は変わらない(確率の定義と条件付き確率)。
一方、位置 $S_k$ がどの値にある確率かを 1 回投げるごとに漸化式で追っていく見方は、確率漸化式と定常分布 で扱う。

折り返しは対称移動

$c=0$ の折り返し $\sigma_0(x,y)=(y,x)$ は、行列 $\begin{pmatrix}0&1\\ 1&0\end{pmatrix}$ で表される直線 $y=x$ に関する鏡映である(回転・鏡映と行列の群)。一般の $\sigma_c$ は、平行移動 $(x,y)\mapsto(x,\ y-c)$ で $L_c$ を $L_0$ に移し、鏡映してから戻したものである。鏡像原理の証明の要点は、この鏡映が「格子点を格子点に、R を U に」移すこと、つまり数えたい図形の構造を保つことにある。円順列とじゅず順列 の裏返しも、鏡映が並べ方の集合に働く例である。

さらに先へ

  • $(0,0)$ から $(n,n)$ への、対角線を越えない経路の数 $\dfrac{1}{n+1}\dbinom{2n}{n}$ は Catalan数 である。漸化式や、括弧の列・三角形分割との対応は Catalan数(高校数学) で扱う。格子上の経路の数え方と、対角線を越える経路を折り返して Catalan 数を求める方法は、KT17 §2.5 の Example 2.27・2.28(pp. 26–29)と Bog17 §1.3.1 の Problem 47–51(pp. 20–22)にある。ただし KT17 は、最初に対角線を越えた点より後ろの部分を入れ替える形で数えており、本記事の「はじめて触れる点までを折り返す」形は Bog17 の Problem 51 と同じである。
  • ランダムウォークの鏡像原理は、ある時刻までに一定の位置に達する確率の計算に使われ、連続時間の Brown運動 にも同じ形の鏡像原理がある。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する