長さ1mの棒に50cmの棒を継ぎ足す。次は、それに25cmの棒を継ぎ足す。その次は .. というように次々に半分にした棒を継ぎ足していったらその長さはどうなるだろうかという問題。
まず、次々に半分になっていく棒を作る。 Prelude> take 5 $ iterate (*0.5) 1 [1.0,0.5,0.25,0.125,6.25e-2] それを継ぎ合わせる。 Prelude> sum $ take 5 $ iterate (*0.5) 1 1.9375 本数を増やす。 Prelude> sum $ take 10 $ iterate (*0.5) 1 1.998046875 もっと増やす。 Prelude> sum $ take 1000 $ iterate (*0.5) 1 2.0 実際、S = 1 + r + r^2 + r^3 + ... とすると、rS = r + r^2 + r^3 + r^4 + ... となるので、 S - rS = (1 - r)S = 1 つまり、S = 1 / (1 - r) だから、アタリマエのことだが、無限に足しても無限に大きくはならないというのは不思議な感じがする。 アキレスと亀の場合もそうだ、どんなにわずかな時間でもアキレスが亀に追いつくまでには亀はさらに先に行っている。したがってアキレスは永遠に亀に追いつくことはできないというのはもっともな推論のように見えるが、それは単にアキレスと亀の位置の観測点を無限に刻んでいっただけで、その総和が無限になるわけではない。無限に足しても有限の値にしかならないということを知っていると、アキレスが「永遠に」亀においつけないという議論が間違いであることが分かる。「永遠に」観測したわけではないからだ。 身の回りの素朴な疑問や錯覚を Haskell で気楽に調べてみる事ができるのは楽しい。
by tnomura9
| 2011-10-28 06:50
| Haskell
|
Comments(0)
|
カテゴリ
新型コロナウイルス 主インデックス Haskell 記事リスト 圏論記事リスト 考えるということのリスト 考えるということ ラッセルのパラドックス Haskell Prelude Ocaml ボーカロイド 圏論 jQuery デモ HTML Python ツールボックス XAMPP Ruby ubuntu WordPress 脳の話 話のネタ リンク 幸福論 キリスト教 心の話 メモ 電子カルテ Dojo JavaScript C# NetWalker ed と sed HTML Raspberry Pi C 言語 命題論理 以前の記事
最新のトラックバック
最新のコメント
ファン
記事ランキング
ブログジャンル
画像一覧
|
ファン申請 |
||