[#16732] sharing sub-regexp — Tanaka Akira <akr@...17n.org>

Oniguruma についてひとつ要望があります。

51 messages 2002/04/03
[#16744] Re: sharing sub-regexp — "K.Kosako" <kosako@...> 2002/04/04

Tanaka Akiraさんの<hvopu1hxfyd.fsf@coulee.a02.aist.go.jp>から

[#16746] Re: sharing sub-regexp — matz@... (Yukihiro Matsumoto) 2002/04/04

まつもと ゆきひろです

[#16753] Re: sharing sub-regexp — Tanaka Akira <akr@...17n.org> 2002/04/04

In article <1017890618.302241.17865.nullmailer@ev.netlab.jp>,

[#16755] Re: sharing sub-regexp — "K.Kosako" <kosako@...> 2002/04/05

Tanaka Akiraさんの<hvo7knn93ug.fsf@coulee.a02.aist.go.jp>から

[#16756] Re: sharing sub-regexp — Tanaka Akira <akr@...17n.org> 2002/04/05

In article <20020405044506.D4784349@helium.ruby-lang.org>,

[#16822] Re: sharing sub-regexp — "K.Kosako" <kosako@...> 2002/04/10

Tanaka Akiraさんの<hvopu1e4omy.fsf@coulee.a02.aist.go.jp>から

[#16831] Re: sharing sub-regexp — Tanaka Akira <akr@...17n.org> 2002/04/10

In article <20020410025054.C8DF0915@helium.ruby-lang.org>,

[#16863] Re: sharing sub-regexp — Tanaka Akira <akr@...17n.org> 2002/04/11

In article <hvor8lnchak.fsf@coulee.a02.aist.go.jp>,

[#16877] Re: sharing sub-regexp — Shugo Maeda <shugo@...> 2002/04/12

前田です。

[#16887] Re: sharing sub-regexp — Tanaka Akira <akr@...17n.org> 2002/04/12

In article <87pu15z80q.wl@studly.priv.netlab.jp>,

[#16909] Regexp#to_s — Shugo Maeda <shugo@...> 2002/04/15

前田です。

[#16912] Re: Regexp#to_s — Tanaka Akira <akr@...17n.org> 2002/04/15

In article <87g01x1e6m.wl@studly.priv.netlab.jp>,

[#16931] Re: Regexp#to_s — Kazuhiro NISHIYAMA <zn@...> 2002/04/16

西山和広です。

[#16934] Re: Regexp#to_s — Tanaka Akira <akr@...17n.org> 2002/04/16

In article <20020416180631.988E.ZN@mbf.nifty.com>,

[#16938] Re: Regexp#to_s — Shugo Maeda <shugo@...> 2002/04/17

前田です。

[#16939] Re: Regexp#to_s — Tanaka Akira <akr@...17n.org> 2002/04/17

In article <87u1qaj0xe.wl@studly.priv.netlab.jp>,

[#16947] Re: Regexp#to_s — Shugo Maeda <shugo@...> 2002/04/18

前田です。

[#16950] Re: Regexp#to_s — matz@... (Yukihiro Matsumoto) 2002/04/18

まつもと ゆきひろです

[#16951] Re: Regexp#to_s — Tanaka Akira <akr@...17n.org> 2002/04/18

In article <1019116103.420173.12691.nullmailer@picachu.netlab.jp>,

[#16960] Re: Regexp#to_s — nobu.nakada@... 2002/04/18

なかだです。

[#16761] StringIO — tadf@...

ふなばです。

43 messages 2002/04/05
[#16786] Re: StringIO — nobu.nakada@... 2002/04/08

なかだです。

[#16802] Re: StringIO — tadf@... 2002/04/09

ふなばです。

[#16803] Re: StringIO — nobu.nakada@... 2002/04/09

なかだです。

[#16804] Re: StringIO — tadf@... 2002/04/09

ふなばです。

[#17221] Re: StringIO — Wakou Aoyama <wakou@...> 2002/05/30

青山です。

[#17230] Re: StringIO — matz@... (Yukihiro Matsumoto) 2002/05/30

まつもと ゆきひろです

[#17231] Re: StringIO — Tanaka Akira <akr@...17n.org> 2002/05/30

In article <1022740594.117106.6073.nullmailer@picachu.netlab.jp>,

[#17233] IO#size — Shugo Maeda <shugo@...> 2002/05/30

前田です。

[#17239] Re: IO#size — Tanaka Akira <akr@...17n.org> 2002/05/31

In article <874rgqdt3x.wl@studly.priv.netlab.jp>,

[#17253] Re: IO#size — Wakou Aoyama <wakou@...> 2002/05/31

青山です。

[#16790] Ruby Shim — "Akinori MUSHA" <knu@...>

 1.7 early access kit という仮称で提案した構想ですが、先ほど

27 messages 2002/04/08
[#16796] Re: Ruby Shim — Koji Arai <JCA02266@...> 2002/04/08

新井です。

[#16833] math.c 1.10 — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

23 messages 2002/04/11
[#16834] Re: math.c 1.10 — matz@... (Yukihiro Matsumoto) 2002/04/11

まつもと ゆきひろです

[#16869] Makefiles dependency — nobu.nakada@...

なかだです。

17 messages 2002/04/12

[ruby-dev:16828] Re: if Re: BigFloat

From: Shin-ichiro HARA <sinara@...>
Date: 2002-04-10 08:10:56 UTC
List: ruby-dev #16828
原(信)です。

>小林です。

>だから、BigDecimalもBignumも同じような存在。
>違うのは小数点の位置だけ(って言い過ぎ?)。

なーるほど!やっと BigDecimal が分かりました。すんません。(^^;

>   1.数値自体の問題(誤差)と演算とは別けて考える。

うむ。確かにデータの精度と演算(変数?Rubyでいうとデータの入れ物
としてのオブジェクト?)の精度は分けて考えないといけないですね。

で、BigDecimal はその変数の精度を自由に決めようとしているわけで、
データの精度は問題にしない、、、と。

例えば「有効数字1桁の1」と「有効数字1桁の10**(-20)」を足すと
BigDecimal では有効数字が一気に20桁になってしまう。こういう「象の
上に蚤が載るだけで体重の精度が何万倍も上がってしまう」現象は、計測
の分野からは受け入れられないかもしれません。

でも今言った「精度」という言葉はデータの精度であって、BigDecimal の
精度とは違うんですね。確かに、さしあたってでかい入れ物で計算しておい
て、データの精度の評価は後で考える方針にすれば、それなりに使えますね。

一方 Mathematica などは、「有効数字1桁の0.1と有効数字1桁の10**(-20)
の和」は「有効数字1桁の0.1」に等しくなる方式で、計算結果の全ての数
字が信頼できるものになります。つまり Mathmatica は、数値の演算のみ
ならず、最終的な結果に対する誤差の評価までするわけです。

つまり 0.1 + 0.1000000000001 を 0.2000000000001 と計算しても小数部
分の 000000000001 は明らかに不用なんで、0.2 で必要十分です。という
か、0.2 の方が情報が残っていて、0.2000000000001の方が「情報落ち」し
てると考えられますね。Mathematica 方式は実務的な技術計算上は合理的
で効率もいいと思います。(もちろん 0.1000000000000 + 0.1000000000001
は 0.2000000000001 です。)

BigDecimal も Mathematica 方式を取れれば、より便利になると思う
のですが、そうすると別物かあ。

> 2.Float op Rational -> (Float、Rational) 共に 2進
>   10進の相互変換で「元の誤差+循環小数の打
>   ち切り」という新たな「変換誤差」を持ち込んでし
>   まう。従って(共に不完全であるが故に)
>    Float op Rational -> Float は納得。

あれ、Floatって有理数への変換は分母が2べきの有理数になるので
「変換誤差」はありませんよね。そういう意味では BigDecimalと一
緒では。誤差があるのは、Float のリテラル表現と、内部表現の間の
誤差、いわば Float -> Float の問題ですよね。これは BigDecimal 
にはない。しかし、表記の問題は数システムの問題とは別ではないか
な。

> 3.しかし、BigDecimal op Rational -> Rationalでは循
>   環小数は生じない。なのに、わざわざ生じさせる
>        BigDecimal op Rational -> BigDecimal は疑問。

これに対しての違和感は前のメールでいった通りです。やっぱり
小数はデータの誤差の情報を含んでいるように「見える」事と、
有理数は理論的な値を表現する習慣であること、有理数はかなり
「重い」オブジェクトなので、自動的な有理数への変換には抵抗
があること、が主な理由です。これを美的センスの問題とは言い
たくない(が、そうかもしれない)。

さあて、どうするのがいいですかね。

#今回初めて Cygwin 上で BigFloat をコンパイル、インストール
#してみたのですが、Windows 上で拡張モジュールを作ったのが初
#めてで(いつもは eban 氏任せ)、あまりに簡単に出来たんで感
#動しました。

In This Thread