永遠にあと半分の距離を走る

Share

あなたはゴールに近づいている。あと半分。あとその半分。あとそのまた半分。残り距離は限りなくゼロに近づく。けれどゼロにはならない。永遠に、あと少し。2500年前のギリシャ人がこの構造に気づいたとき、彼はたぶん笑っていたと思う。あなたの人生が、亀を追いかけるアキレスとまったく同じ構造をしているのだと。

紀元前5世紀、エレアのゼノンは運動が不可能であることを論証しようとした。論証は失敗した。しかしその失敗が2500年間、哲学者と数学者の喉に刺さった小骨のように残り続けている。成功よりも長持ちする失敗というものがある。

亀はまだ先にいる

もっとも有名なのは「アキレスと亀」だ。俊足のアキレスが、先にスタートした鈍足の亀を追いかける。アキレスが亀のいた地点に到達すると、亀はわずかに前進している。その新しい地点にアキレスが到達すると、亀はまたわずかに前進している。追いかけっこは無限に続く。論理的には、アキレスは永遠に亀に追いつけない。

現実のアキレスは10秒もあれば亀を追い越す。しかしゼノンの問いは「追いつけるか」ではない。「無限に分割された距離を、有限の時間でどうやって通過するのか」だ。

この構造は「二分法(ディコトミー)」と呼ばれる別のパラドックスとまったく同じだ。ゴールに到達するには、まず半分の地点に到達しなければならない。半分の地点に到達するには、その半分に到達しなければならない。その半分にも、さらに半分がある。出発すること自体が不可能になる。アキレスと亀は、この二分法を追いかけっこの形に書き換えたものにすぎない。

ゼノンにはもうひとつ、「飛ぶ矢」のパラドックスがある。飛んでいる矢は、ある瞬間にはある位置を占めている。ある位置を占めているとき、矢は静止している。すべての瞬間で矢が静止しているなら、矢はいつ動いているのか。無限分割の問題が、ここでは「運動の瞬間」という別の角度から姿を見せる。運動とは、静止の無限の集積なのか。もしそうなら、静止をいくら積み重ねても運動にはならないのではないか。

映画は24枚の静止画を1秒間に映し出すことで「動き」を生み出す。私たちの目は個々のフレームを運動として知覚する。飛ぶ矢のパラドックスの現代版は、あなたのスマートフォンの中で毎秒60回繰り返されている。静止画が並んでいるだけだ。どこにも運動はない。しかし、あなたには動いて見える。

正解は出ている

数学的には、ゼノンのパラドックスは解決済みだ。

アキレスが亀に追いつくまでの距離は無限等比級数として表現できる。亀との初期距離が10メートルで、アキレスが亀の10倍の速さで走るとすれば、アキレスが通過する追加距離は 1 + 0.1 + 0.01 + ... であり、この無限級数は有限の値に収束する。時間についても同様で、追いつくまでの時間も有限だ。100メートル走で50メートル地点まで行き、次に75メートル、次に87.5メートル。ゴールには永遠に着かないはずなのに、実際にはおよそ10秒で着く。無限等比級数 1/2 + 1/4 + 1/8 + ... の和は、きっかり1だ。

無限個のステップがあっても、その合計は有限になりうる。17世紀以降の微積分学と、その後の解析学の厳密化が、この点を数学的に確立した。ゼノンの問題は解かれた。教科書を閉じてよい。

閉じてよいはずなのに、何かが残る。

「合計が有限になる」ことと、「無限個のステップを実際に完了する」こととの間に、言葉にしにくいギャップがある。数式の上では 1/2 + 1/4 + 1/8 + ... = 1 だ。正しい。しかし「無限個の操作をひとつ残らず終わらせた」とはどういう状態なのか。最後のステップはどれなのか。最後のステップがないなら、完了とは何を指しているのか。

1954年、哲学者ジェイムズ・F・トムソンはこの不安を「トムソンのランプ」という思考実験で鮮明にした。スイッチのあるランプがある。1分後にスイッチを押してランプを点ける。その30秒後に消す。その15秒後にまた点ける。前回の半分の時間ごとにスイッチを切り替え続ける。2分後には、この操作は無限回完了しているはずだ。ではランプは点いているのか、消えているのか。

数学はこの問いに答えない。無限級数の収束は「極限値が存在する」ことを保証するが、「最終状態が何であるか」は指定しない。トムソンのランプの2分後は、数学の外側にある。物理学は「スイッチを無限回切り替えることは物理的に不可能だ」と言って退ける。正しい。しかし、問いを追い払ったことと、問いに答えたこととは違う。

あと少しの永遠

数学の話をいったん離れて、ゼノンのパラドックスを現実の問題に置き換えてみるとしよう。

目標に向かって走っている。半分まで来た。残りの半分の、そのまた半分まで来た。あと少し。あともう少し。「あと少し」が無限に積み重なって、ゴールラインがいつまでも指先の向こう側にある。この構造は、完璧主義者が原稿を「もうちょっとだけ」と手直しし続けて永遠に提出しない心理構造と、不気味なほど重なる。

ソフトウェア開発には「90-90ルール」と呼ばれる経験則がある。仕事の最初の90%は時間の90%を消費し、残りの10%がさらに時間の90%を消費する。残りの残りが、また。プロジェクトの完成は、アキレスにとっての亀だ。近づけば近づくほど、残りの精度が高くなって、いっそう遠く感じる。

永遠の素振りで触れたように、練習が上達のための手段であるはずなのに、いつしか練習すること自体が目的になる。本番は永遠に来ない。アキレスが亀を追いかけ続けるように、準備は完了に近づき続けるが、決して完了しない。手段が目的を呑み込む。ゼノンのパラドックスの実存版かもしれない。

「いつか」は来ないという問題もここに接続する。「いつかやる」の「いつか」は、無限に分割された未来のどこかに浮遊している。今日の半分先。明日の半分先。来週の半分先。到達地点のない非同期のレースを、人は日常的に走っている。走っていることにすら気づかないまま。

切り刻まれた時間の先に

ゼノンのパラドックスの根底には、もっと深い問いが横たわっている。時間と空間は連続的なのか、離散的なのか。

アリストテレスは『自然学』でゼノンに最初の体系的な反論を試みた。アリストテレスが引いた区別は「可能無限」と「実無限」だ。距離は無限に分割できるが、無限に分割されているわけではない。分割は潜在的な可能性であって、実際に完了した事実ではない。だから、無限個のステップを「完了する」必要はそもそもない。

この反論は巧みだが、問いを先送りしているようにも見える。「分割できるが分割されていない」の、その差を支えているものは何なのか。終わらない議論の果てに立つということで見たように、前提を掘り下げればその下にまた前提がある。アリストテレスの反論の足元にも、また別の問いが口を開けている。

ベルクソンは別の角度から切り込んだ。ゼノンの誤りは運動を「空間上の位置の系列」として捉えたことにある、とベルクソンは主張した。運動を空間に投影した瞬間、運動は消える。地図は領土ではない。時計の文字盤は時間ではない。ベルクソンの言う「純粋持続」は、空間化されない生の時間経験だ。時間を数直線に並べた瞬間に、時間は時間でなくなる。しかし、空間化しなければ時間について語ることすらできないのだとしたら、ベルクソンの批判もまた、自分自身の足場を掘り崩しているのかもしれない。

現代物理学は、この問いに別の示唆を与えている。プランク長(約 1.6 × 10⁻³⁵ メートル)とプランク時間(約 5.4 × 10⁻⁴⁴ 秒)は、物理的に意味のある最小のスケールだとされる。このスケールより小さな分割は、現在の物理学の枠組みでは意味をなさない。もし時空が本質的に離散的であるなら、ゼノンの無限分割はそもそも成立しない。パラドックスは蒸発する。

しかし、プランクスケールが「最小単位」であるかどうかは、まだ確定していない。量子重力理論は未完成だ。時計が止まっても何も変わらないで問うたように、時間の本性は依然として開かれた問題であり続けている。永久主義(エターナリズム)が正しいなら、アキレスの走りも亀の這いも、時空のブロックの中にすでに配置されている。追いつくも追いつかないもない。すべてはすでに「ある」。その場合、ゼノンのパラドックスは、私たちが時間を「経験する」という事実そのものの謎へと姿を変える。

到達という幻想

何も確かではないのだとしたら、到達したかどうかも確かではない。ゴールテープを切った瞬間に「本当にゴールしたのか」と問うことは、馬鹿げているようでいて、ゼノンが2500年前にやったこととまったく同じだ。

線はどこにもなかったで見たように、境界は引こうとした瞬間に溶ける。「到達」と「未到達」の境界も、例外ではないのかもしれない。アキレスが亀に追いついた瞬間は、無限に分割された時間のどこにあるのか。その「瞬間」に幅はあるのか。幅のない瞬間に、何かが「起きる」ことは可能なのか。

ゼノンは運動が不可能であることを示そうとして、たぶん、代わりに別のことを示してしまった。到達という概念そのものが、私たちが信じているほど自明ではない、ということを。

あなたは走っている。ゴールは見えている。あと半分。あとその半分。あとそのまた半分。数学は「あなたは到達する」と言う。物理学は「あなたはすでに到達している」と言う。哲学は何も言わない。ただ、あなたが走り続けているという事実を、黙って見ている。

Read more

Dependabotの対応が面倒なのでRenovateを導入する

Dependabotくんはある程度の依存関係の更新を通知してくれるが、山のようにprojectを抱えているとなんとも痒いところに手が届かない。 ということで、Renovateを使ってみる。 Build software better, togetherGitHub is where people build software. More than 150 million people use GitHub to discover, fork, and contribute to over 420 million projects.GitHub ここからGitHub Appを入れる。 あとは、指示に従ってポチポチするだけで、超かんたんだった。 感想 自動化最高。

By Sakashita Yasunobu

nodejsのバグを見つけたのでPRを投げてみた

概要 要するに、node --testで特定のバイナリを標準出力に書くと、テストランナーが固まったり、異常終了したりするバグです。 バグ自体は既知のものだったようで、修正がされていました。 test_runner: infinite loop in FileTest#drainRawBuffer when child stdout contains FF 0F followed by large size bytes · Issue #62693 · nodejs/nodeVersion v25.9.0 (also reproduced on v24.14.1 LTS, v22.21.0 LTS, v23.4.0) Platform Darwin 25.

By Sakashita Yasunobu
青空文庫のParser

青空文庫のParser

青空文庫のParserを作ってます。 GitHub - P4suta/aozora: Pure-functional Rust parser for 青空文庫記法 (Aozora Bunko notation): ルビ, 傍点, 縦中横, 外字, 返り点, indent containers, page breaks.Pure-functional Rust parser for 青空文庫記法 (Aozora Bunko notation): ルビ, 傍点, 縦中横, 外字, 返り点, indent containers, page breaks. - P4suta/aozoraGitHubP4suta Rustで作ってますが、配布物はcargoのほかにnpm/pypiでも入手できます Documentation * Playground — try it in

By Sakashita Yasunobu