From: keiju@... (=?ISO-2022-JP?B?GyRCQFBETTc9PHkbKEI=?=) Date: 2008-12-23T15:20:42+09:00 Subject: [ruby-dev:37567] Re: [Bug #913] mathn した場合、sqrt(NaN) が複素数になる けいじゅ@いしつかです. 下記了解です. Yuguiさんチェックインしていただけないでしょうか? In [ruby-dev :37550 ] the message: "[ruby-dev:37550] Re: [Bug #913] mathn した場合、sqrt(NaN) が複素数になる ", on Dec/22 21:38(JST) Tadayoshi Funaba writes: >> >たぶん、こんな感じだと思います。コミットしてよいですか? < 石塚さん >> >> 値が変だという意味では, 何らかの対処があるべきだと思います. が >> >> , baseとなっているComplexの振る舞いに基づいているので,まず, Complexに >> nanを食わせたときの振る舞いを明確にした方が良いのでは? > >あまり関係ないような気がします。matnn なしで、 > >Math.sqrt(NaN) #=> NaN > >となるということなので。 > >> irb(main):001:0> nan = 0.0/0 >> => NaN >> irb(main):002:0> Complex(nan,0) >> => (NaN+0i) >> irb(main):003:0> Complex(0,nan) >> => (0+NaN*i) >> >> これらの振る舞いはこれで良いんですかね? > >たとえば、r6rs で、+nan.0+0i や 0+nan.0i と書いた場合と同じで構わないと >思っています。python でも同じです。 > >基本的に Complex の要素は real であればいいという判断です。だから、 >BigDecimal やあるいは未知の実数の実装でも受け入れます。 > > __ ---------------------------------------------------->> 石塚 圭樹 <<--- ---------------------------------->> e-mail: keiju@ishitsuka.com <<---