ゴムロープの上のアリ

ゴムロープの上のアリ（ゴムロープのうえのアリ、英: ant on a rubber rope）は数学パズルの一つ。その解答は一見すると直観に反したパラドックス的なものにも見える。アリがイモムシやシャクトリムシに、ゴムロープがゴム紐になっている場合もある。 細かい内容にはばらつきがあるが、典型的には次のような問題である： 1匹のアリがピンと張った長さ 1km のゴムロープの上をロープに対し毎秒 1cm の速度で這い始めた。同時に、ロープ自体も毎秒 1km の速度で伸び始めた（よって1秒後には全長が 2km 、2秒後には 3km になっている）。アリはロープの端まで到達できるだろうか。 見たところ、アリは永遠に端に辿り着けないようにも思えるが、実は辿り着ける（この例では 8.9×1043421 年ほどかかる）。ロープの長さ、アリの相対速度、ロープの伸びる速度がいくらであっても（速度が一定であるならば）、アリは十分な時間をかければ必ずロープの端に到達できる。アリが這うのと同時にロープはアリの前方と後方に伸びるが、その伸長によってアリが既に歩いた距離とロープの全長との比は変わらないから、アリは継続的に前進することができる。この話はアキレスと亀とも似たところがある。 上述した問題にはいくつかの前提を付け加えなければならない。それらをきちんと述べると次のようになる。 細くて無限に伸びるゴムロープが x {\displaystyle x} -軸上にピンと張られている。目標地点の位置を x = c ( > 0 ) {\displaystyle x=c(>0)} と表す。 時刻 t = 0 {\displaystyle t=0} で、ロープは端点 x = 0 {\displaystyle x=0} が固定されたまま全体が一様に伸び始め、目標地点は一定速度 v > 0 {\displaystyle v>0} で端点 x = 0 {\displaystyle x=0} から離れていく。 小さなアリは時刻 t = 0 {\displaystyle t=0} で端点 x = 0 {\displaystyle x=0} を出発し、ロープに対する一定の相対速度 α > 0 {\displaystyle \alpha >0} で目標地点へ向かって進んでいく。 アリは目標地点に到達することができるか。 もし目標地点の遠ざかる速度がアリよりも遅ければ、到達できるのは明らかに見える（アリがロープに乗っていることを考慮してもそれは到達を早めるだけである）。 しかしながら、これは一見して明らかなことではないが、アリとロープの速度がいくらであろうともアリは常に目標地点に到達するのである。これは次のように考えると分かる。 アリが最初の1秒で、例えばロープの 1/1000 だけ進むものとする。その次の1秒間でもアリは同じ距離を進むのだが、その間ロープも伸びているので相対的には進んだ区間は狭まり、例えばロープの 1/2000 であるとする。これが長い間続き、各1秒間にアリが進んだ区間のロープに対する比は逓減してゆく。しかし、これらの分数を全て足しあげたものは調和級数の部分和となり、これは発散する級数である。従って最終的にはアリは端まで到達することになる。 この問題を解くには解析学的な手法が要るように見えるが、ロープが（連続的にではなく）1秒ごとに瞬間的に伸びるような問題の変種を考えることで、実は離散的な議論が通用する。実際、以下の議論はマーティン・ガードナーがサイエンティフィック・アメリカン誌上で元々行い、後に再版されたものを一般化したものである。 問題を若干修正して、各単位時間（1秒）の開始の瞬間にロープが伸びるものとする。よって、時刻 t = 0 {\displaystyle t=0} で目標地点は x = c {\displaystyle x=c} から x = c + v {\displaystyle x=c+v} にジャンプし、時刻 t = 1 {\displaystyle t=1} で目標地点は x = c + v {\displaystyle x=c+v} から x = c + 2 v {\displaystyle x=c+2v} にジャンプする、といった具合である。問題の変種では各単位時間（1秒）の終了の瞬間にロープが伸びると仮定されることが多いが、もしこのような条件（開始時刻に伸びる）でアリが目標地点に到達することが分かったなら、元々の問題のロープが時間連続的に伸びる設定であっても、ロープが終了の瞬間に伸びる設定であっても到達すると結論できる。 θ ( t ) {\displaystyle \theta (t)} を原点から目標地点までのうち、アリが進んだ部分の割合とする（ t {\displaystyle t} は時刻）。よって θ ( 0 ) = 0 {\displaystyle \theta (0)=0} である。最初の1秒でアリは α {\displaystyle \alpha } だけ進み、これは原点から目標地点（最初の1秒の間、ずっと位置 c + v {\displaystyle c+v} にある）までの距離の α c + v {\displaystyle {\frac {\alpha }{c+v}}} である。ロープが瞬間的に伸びると、アリも一緒になって動くから θ ( t ) {\displaystyle \theta (t)} は変わらない。よって θ ( 1 ) = α c + v {\displaystyle \theta (1)={\frac {\alpha }{c+v}}} 。次の1秒間にアリは再び α {\displaystyle \alpha } だけ進み、これは原点から目標地点までの α c + 2 v {\displaystyle {\frac {\alpha }{c+2v}}} である。よって θ ( 2 ) = α c + v + α c + 2 v {\displaystyle \theta (2)={\frac {\alpha }{c+v}}+{\frac {\alpha }{c+2v}}} 。同様にして任意の n ∈ N {\displaystyle n\in \mathbb {N} } に対し θ ( n ) = α c + v + α c + 2 v + ⋯ + α c + n v {\displaystyle \theta (n)={\frac {\alpha }{c+v}}+{\frac {\alpha }{c+2v}}+\cdots +{\frac {\alpha }{c+nv}}} が得られる。 任意の k ∈ N {\displaystyle k\in \mathbb {N} } について α c + k v ≥ α k c + k v = ( α c + v ) ( 1 k ) {\displaystyle {\frac {\alpha }{c+kv}}\geq {\frac {\alpha }{kc+kv}}=\left({\frac {\alpha }{c+v}}\right)\left({\frac {1}{k}}\right)} であることに注意すると、 θ ( n ) ≥ ( α c + v ) ( 1 + 1 2 + ⋯ + 1 n ) {\displaystyle \theta (n)\geq \left({\frac {\alpha }{c+v}}\right)\left(1+{\frac {1}{2}}+\cdots +{\frac {1}{n}}\right)} 因子 ( 1 + 1 2 + ⋯ + 1 n ) {\displaystyle \left(1+{\frac {1}{2}}+\cdots +{\frac {1}{n}}\right)} は調和級数の部分和なので、発散する。よって 1 + 1 2 + ⋯ + 1 N ≥ c + v α {\displaystyle 1+{\frac {1}{2}}+\cdots +{\frac {1}{N}}\geq {\frac {c+v}{\alpha }}} となるような N ∈ N {\displaystyle N\in \mathbb {N} } をとることができ、これは θ ( N ) ≥ 1 {\displaystyle \theta (N)\geq 1} 、つまり十分な時間を経た後には、アリは目標地点までの旅を完遂することを意味する。この解法では所要時間の上限も同時に得られるが、正確な時間までは分からない。 任意の時刻 t > 0 {\displaystyle t>0} でのアリの位置を y ( t ) {\displaystyle y(t)} とする。また、ロープの伸長速度、アリのロープに対する相対速度は時間に依存してもよいこととし、それらを α ( t ) {\displaystyle \alpha (t)} , v ( t ) {\displaystyle v(t)} とおく。ロープが時刻0から伸びた距離は L ( t ) := ∫ 0 t v ( s ) d s {\displaystyle L(t):=\int _{0}^{t}v(s)\,ds} である。位置 x = X {\displaystyle x=X} におけるロープ自体の伸長速度は、原点からの距離に比例するため v ( t ) X c + L ( t ) {\displaystyle {\frac {v(t)X}{c+L(t)}}} と表せる。 以上の設定で、次の微分方程式が成り立つ。 y ′ ( t ) = α ( t ) + v ( t ) y ( t ) c + L ( t ) {\displaystyle y'(t)=\alpha (t)+{\frac {v(t)\,y(t)}{c+L(t)}}} 元のパズルでは α {\displaystyle \alpha } , v {\displaystyle v} が一定値だから、 y ′ ( t ) = α + v y ( t ) c + v t {\displaystyle y'(t)=\alpha +{\frac {v\,y(t)}{c+vt}}} これは1階線形微分方程式なので、標準的な解法がある（特解（この場合は例えば y 0 ( t ) = α v ( c + v t ) ln ⁡ ( c + v t ) {\displaystyle y_{0}(t)={\frac {\alpha }{v}}(c+vt)\ln(c+vt)} ）を見つけ、定数項を0とした斉次方程式の一般解を変数分離法で求めればよい。詳しくは微分方程式の項を参照）。 しかしそれよりずっと簡単なのは、アリの位置を原点から目標地点までの距離との比として考えることである。 ロープに貼りついて一緒に伸びるような座標（系） ψ {\displaystyle \psi } を考えよう。原点と目標地点をそれぞれ ψ = 0 {\displaystyle \psi =0} , ψ = 1 {\displaystyle \psi =1} とする。この座標で測ると、ロープ上の任意の点の位置は時間が経っても一定値のままである。 時刻 t ≥ 0 {\displaystyle t\geq 0} において元の座標系での点 x = X {\displaystyle x=X} は新しい座標系では ψ = X c + v t {\displaystyle \psi ={\frac {X}{c+vt}}} になり、元の座標系でのロープに対する相対速度 α {\displaystyle \alpha } は新しい座標系では α c + v t {\displaystyle {\frac {\alpha }{c+vt}}} になる。 よってアリの位置の座標を ϕ ( t ) {\displaystyle \phi (t)} と書けば、次の微分方程式が得られる（これは数学的に見れば変数変換 ϕ ( t ) := y ( t ) c + v t {\displaystyle \phi (t):={\frac {y(t)}{c+vt}}} である）： ϕ ′ ( t ) = α c + v t {\displaystyle \phi '(t)={\frac {\alpha }{c+vt}}} ∴ ϕ ( t ) = ∫ 0 t α c + v s d s = α v ln ⁡ ( c + v t c ) {\displaystyle \therefore \phi (t)=\int _{0}^{t}{\frac {\alpha }{c+vs}}\,ds={\frac {\alpha }{v}}\ln {\left({\frac {c+vt}{c}}\right)}} アリが時刻 t = T {\displaystyle t=T} で目標地点に到達するとすれば ϕ ( T ) = 1 {\displaystyle \phi (T)=1} だから、 α v ln ⁡ ( c + v T c ) = 1 {\displaystyle {\frac {\alpha }{v}}\ln {\left({\frac {c+vT}{c}}\right)}=1} ∴ T = c v ( e v / α − 1 ) {\displaystyle \therefore T={\frac {c}{v}}\left(e^{v/\alpha }-1\right)} （単純なケース v = 0 {\displaystyle v=0} に対しても、極限 lim v → 0 T ( v ) {\displaystyle \lim _{v\rightarrow 0}T(v)} をとれば解 T = c α {\displaystyle T={\tfrac {c}{\alpha }}} が得られる）。任意の c {\displaystyle c} , v {\displaystyle v} , α {\displaystyle \alpha } （ v > 0 {\displaystyle v>0} , α > 0 {\displaystyle \alpha >0} ） に対し T {\displaystyle T} は有限値だから、アリが目標地点までの行程を完遂できること、及びその所要時間が分かったことになる。 最初に掲げた問題では c = 1 k m {\displaystyle c=1\,\mathrm {km} } , v = 1 k m / s {\displaystyle v=1\,\mathrm {km} /\mathrm {s} } , α = 1 c m / s {\displaystyle \alpha =1\,\mathrm {cm} /\mathrm {s} } であったので T = ( e 100 , 000 − 1 ) s ≈ 2.8 × 10 43 , 429 s {\displaystyle T=(e^{100,000}-1)\,\mathrm {s} \,\!\approx 2.8\times 10^{43,429}\,\mathrm {s} } となり、これは宇宙の年齢（とはいえ約 4×1017s に過ぎないが）にも匹敵する長大な時間で、またロープも同じように途轍もない長さになっている。アリが端に辿り着けるというのは、あくまで数学的な意味でである。 一方、ロープやアリの速度が一定でない場合は結論が変わってくる。例えば α ( t ) {\displaystyle \alpha (t)} を正の定数、 v ( t ) = 2 a t {\displaystyle v(t)=2at} （ a > 0 {\displaystyle a>0} は定数）とすると、微分方程式及びその解は次のようになる。 ϕ ′ ( t ) = α c + a t 2 {\displaystyle \phi '(t)={\frac {\alpha }{c+at^{2}}}} ∴ ϕ ( t ) = ∫ 0 t α c + a s 2 d s = α a c arctan ⁡ ( a c t ) {\displaystyle \therefore \phi (t)=\int _{0}^{t}{\frac {\alpha }{c+as^{2}}}\,ds={\frac {\alpha }{\sqrt {ac}}}\arctan \left({\sqrt {\frac {a}{c}}}t\right)} ϕ ( t ) → π α 2 a c ( t → ∞ ) {\displaystyle \phi (t)\to {\frac {\pi \alpha }{2{\sqrt {ac}}}}\quad (t\to \infty )} これより、 a < π 2 α 2 4 c {\displaystyle a<{\frac {{\pi }^{2}{\alpha }^{2}}{4c}}} であればアリはロープの端に到達できるが、 a ≥ π 2 α 2 4 c {\displaystyle a\geq {\frac {{\pi }^{2}{\alpha }^{2}}{4c}}} のときは永遠に到達できないことがわかる。