From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?= ) Date: 1998-04-09T16:19:41+09:00 Subject: [ruby-dev:2207] Re: infinity in IEEE (Re: Re: infinity) けいじゅ@日本ラショナルソフトウェアです. In [ruby-dev :2205 ] the message: "[ruby-dev:2205] Re: infinity in IEEE (Re: Re: infinity) ", on Apr/09 01:09(JST) sinara@blade.nagaokaut.ac.jp writes: >原です。 >∞ + ∞ も ∞ ですね。もういいかげん止めたいけど、ここまで我慢し >たなら矛盾を起こさない限りもひとつ我慢しても大差無いさ、、、と私 >は解釈しました。 (^^;;; >あれ?浮動小数点の 0.0 って本当に0だと思っていましたが、違うん >ですか?(^^; 「演算の結果が -ε < x < ε の時は 0.0 に丸められ >てしまう。0.0 でない x は計算機上に存在しない」、そして0.0 はた >だの0であると理解していたんだけど、、、 確かに計算機上には存在しません(^^;;; でも, Math.exp(-1000) * ∞ = 0 Math.exp(-1000) * Math.exp(1000) = 0 というのも変でしょ? 私は, 存在しないから0.0は0であるという話しにはならないとおもっています. 0.0は0に近い状態を表しているだけだと解釈しています. 実数から浮動小数点 数への自然な写像をpとします. p: Real -> Float 当然ですが, p(x) = 0 となる xは0に限りませんものね. {x | p(x) = 0} を 0.0と定義しているとい う感じですか... ただ, 原さんのように解釈するのもそれほどおかしくないかもとは思っていま す. 特に, rubyでは 0 == 0.0 -> trueですから. smalltalkはこの辺が厳密で, 0 == 0.0 --> false 0.0 == 0 --> true でした. 前式は 0から見ると0.0は違うじゃんって感じですね. 後式は 0.0か ら見ると0も誤差の範囲ないですからtrueなんですね. __ ................................石塚 圭樹@日本ラショナルソフトェア... ----------------------------------->> e-mail: keiju@rational.com <<---