1-237
subjects 193-634
^ ruby-math started
0001 [matz netlab.] ちゅーことで、ruby-math開設しました。
^ Why is '**' not abelian
0002 [toyofuku jui] ぐはぁ。
+ 0003 [matz netlab.] えーと、これはRubyの話題を逸脱しそうなんですけどぉ。
| + 0004 [toyofuku jui] まつもとさん
| | 0008 [matz netlab.] いや、あまり気にしないでください。
| + 0007 [toshirok yb3] 僕は、「数学的なモデルに綺麗にはまる仕組みを考える事が目的の一つである
+ 0006 [toshirok yb3] ペアノの公理(って実は良く知らないけど)は自然数全体の集合の集合論的
+ 0009 [gotoken math] str*str論者としてはこの豊福さんの疑問を再燃のきっかけにして
0012 [keiju Ration] 私流に解釈すると.
+ 0013 [matz netlab.] なんかすごく恐れおおいんですが :-)
+ 0014 [gotoken math] これだと、a でパラメトライズされた Sa という単項関数の定義で
+ 0021 [toyofuku jui] いっぱい反応したいですが、とっても余裕が
| 0026 [gotoken math] ======
+ 0029 [keiju Ration] それはそうです. でも,
^ coerce
0005 [toyofuku jui] しょっぱなから Ruby から遠い話題を出したおわびに
^ (summary) SingleFloat, DoubleFloat < Float
0010 [gotoken math] とりあえず、単精度に関するぼくとまつもとさんの昔のやりとりを
0020 [matz netlab.] だいぶ思い出しました。感謝。
0022 [gotoken math] さすがに一つのプログラムの中ではそれはないことになってます。
+ 0023 [matz netlab.] ふむふむ。理解が進みました。ということは SingleFloat のニー
| 0024 [matz netlab.] もしこれが正しいのだとすると、たとえば現状の Float にhookを
| 0025 [gotoken math] あってます。
| + 0028 [shigeo tinyf] BigFloatという名前でかってに公開した手前、無関心
| + 0030 [matz netlab.] んでは、Floatを抽象クラス化し、現在のFloat(将来では
| 0038 [gotoken math] おろろ?? そういうつもりです。「ほぼ同じ定義」というのがどこ
| 0045 [matz netlab.] 「もっと同じ」を考えています。だって
| + 0050 [masa koala.a] 私も NumPyについては仕様を調べただけなので、
| + 0118 [gotoken math] 返事が遅くなってすみません。
| + 0119 [matz netlab.] 構いません。私に付き合ってもらってるわけですから。
| | + 0128 [masa koala.a] これは、「aが float の配列のとき」という意味でしょうか?
| | | 0130 [matz netlab.] そういう意味です。
| | + 0148 [gotoken math] そう言ってもらえると気が楽ではあるんですが、ぼくはあんまりゆっ
| | 0162 [matz netlab.] [ruby-dev:8879]はそういう意味ではないかと。ああ、でも古いCの
| | + 0167 [eguchi shizu] [ruby-dev:8879] の中で参照されている
| | | 0183 [shudoh murao] 議論の本流じゃなくてごめんなさい。
| | | 0205 [eguchi shizu] 拝見させて頂きました。
| | + 0169 [gotoken math] そうかも知れません。下を試してみてはどうでしょう。
| | 0170 [matz netlab.] えぐちさんもそうおっしゃってますし、そうなんでしょう。
| | + 0171 [takashi oish] Ruby って数値計算にはうってつけの言語であると思うんだけど・・・
| | | 0172 [matz netlab.] そうなんですか。ソフトウェアはしばしば設計者の意図を越えて用
| | | 0173 [takashi oish] 特に iterator が強力。定義さえすれば、
| | | 0176 [matz netlab.] 感謝します。
| | + 0174 [horinout kur] これまでの議論を(力&時間不足で)把握しておらず、今更なにをといっ
| | | 0175 [masa koala.a] ruby-mathでは、そういう話はまだないのだと思います。
| | | 0177 [horinout kur] なるほど、目に止まらなかったわけですね ^^;;
| | | + 0181 [masa koala.a] 配列の型の方がスカラー(というかRubyの数)より例外なく強い
| | | | 0182 [horinout kur] Fortran90 の本を引っくり返してみましたが、見つけられませんでした。仕様
| | | + 0189 [matz netlab.] そーなんです。どちらにしても、誰かにとって「ちょっと..」な局
| | | | 0191 [takashi oish] るびきちです。
| | | + 0192 [gotoken math] これはまずいです。というのは、0.1 はdouble相当なので、内部で
| | | 0204 [masa koala.a] "0.1f" → (float)
| | | 0206 [matz netlab.] 私自身が理解してないので人の文章を借りるしかないのですが(し
| | | + 0208 [shudoh murao] 首藤です。議論を混乱させないことを祈りつつ…
| | | | 0209 [matz netlab.] もちろんそれは理解しています(つもりです)。Matrix(SingleFloat)
| | | | 0230 [gotoken math] # どこから返事したらいいんだか ^^;;;
| | | + 0210 [masa koala.a] 違う数値になり得ますが、精度の点では同じもの、
| | + 0178 [horinout kur] single と double の両方があるのが当たり前な言語環境で暮してきたせいか、
| | + 0179 [takashi oish] るびきちです。
| | + 0188 [matz netlab.] こっちは理解できます。ま、出自にかかわる問題ですし。
| + 0125 [shudoh murao] ruby-math の過去のメイルを入手する方法はあるのでしょうか。
| + 0126 [matz netlab.] ruby-math-ctl@netlab.co.jp に get 1-126 でどうでしょう。
| + 0152 [gotoken math] なかなか興味深いです。あとでじっくり読みます。
| + 0153 [takashi oish] るびきち(西本)@大石研です。
+ 0031 [masa koala.a] しかし、NumPyの array object は float も double も
0032 [gotoken math] うちでも num/NumArray というのを実装中です。問題は、そのよう
+ 0033 [masa koala.a] そうですか。同じことを考える人がいない方が不思議だとは思っていました。
| 0034 [gotoken math] BasicNumArray という一次元配列のクラスと、それに色々な機能を
+ 0035 [shigeo tinyf] 手違いでruby-math宛てが私に来ました。
^ target of coercing
0011 [gotoken math] 演算とは、ある集合上Aで定められた関数(数学で言うところの関数、
0015 [hisanori sit] スカラー倍ってどういう分野(?)でしたっけ? ベクトル空間?
0016 [gotoken math] そうそう線形代数です。
0017 [hisanori sit] なるほど。では辞典を探してくる事にします。
0018 [gotoken math] うーん、僕が二つに分類する気になれない理由は、
0019 [hisanori sit] 松尾です。3点。
^ domain method?
0027 [gotoken math] なんとなく分かりました。つまり、定義域を外から決めている数学
0037 [hisanori sit] # 精度に関心がある方が多いのかな?
^ Re: Precision
0036 [shigeo tinyf] 詳細な説明、本当にありがとうございます。
^ BigFloat
0039 [gotoken math] ちょっとよく分からないですが、その場合仮数部は何桁なんですか??
+ 0043 [shigeo tinyf] 仮数部は整数配列でダイナミックに割り当てますので何桁
+ 0062 [takashi oish] 今日顏を出すようになったるびきちです。
+ 0064 [hieida acty.] 日永田@学習院大学 というものです。
| + 0065 [takashi oish] だけどまだ未完成なのです。
| + 0066 [takashi oish] 興味もってくれてありがとう!!
+ 0069 [gotoken math] えーっと、勢いで書いてて可読性があまりに低いので、ちょっと手
0070 [takashi oish] お願いします!!
0071 [hieida acty.] 密行列の対角化なんかはいかがですか?
0073 [takashi oish] なるほど。とりあえずは卒論終わったあとの課題として。
+ 0074 [hieida acty.] BigFloat 関係の情報が得られるかな、と思って ruby-math-ML に入会させて
| 0082 [gotoken math] ごめんなさい、具体的な成果物はないです。ソース(コメント含む)
| 0083 [takashi oish] おもしろそうだな。
+ 0076 [hieida acty.] ruby-math の話題から外れつつありますが......
0078 [takashi oish] ↓ココ
^ NumArray (Re: )
0040 [masa koala.a] ありがとうございます。
+ 0041 [gotoken math] もちろんBasicNumArrayはCで実装された1次元配列です。doubleだっ
+ 0042 [horinout kur] ごとけんさんがたまに触れる「電脳組」のひとりです。
0044 [masa koala.a] こちらこそ。とても丁寧なご説明ありがとうございます。
^ NaN
0046 [shigeo tinyf] 以下の結果は正しいのでしょうか?
+ 0047 [shigeo tinyf] 自己レスです。
+ 0048 [gotoken math] おろ、VCではisnan()は float.h の _isnan() を使うんじゃなかっ
+ 0049 [shigeo tinyf] "_isnan" を grep したけど使用していないようです。
+ 0051 [eguchi shizu] ご> ごとけんです
0052 [shigeo tinyf] 一応、以下のようになります。
0053 [gotoken math] # 不必要にえぐちさんのお手を煩わせてしまってすみません __;
^ NaN again
0054 [shigeo tinyf] WindowsNT+VC++6.0(using _isnan())で以下のように
0055 [gotoken math] ごとけんです
+ 0056 [eguchi shizu] ご> ごとけんです
| 0059 [gotoken math] ですね。
| 0061 [eguchi shizu] ご> ごとけんです
| 0072 [gotoken math] その通りです __;;;
| 0085 [eguchi shizu] ご> ごとけんです
| 0089 [gotoken math] 64bitはきちんと定義してあるので大丈夫のはずです。その他の長
| + 0091 [matz netlab.] うーむ、APIは同じでIEEE754でないシステムとかはもう考えなくて
| | + 0092 [takashi oish] るびきちです。
| | + 0104 [eguchi shizu] VAX Float は alpha にまだ実装されていますが、
| + 0103 [eguchi shizu] ご> ごとけんです
| 0105 [gotoken math] 無限大はNaNと違って一意な存在だからなんでしょうね。こーゆー
| 0112 [eguchi shizu] ご> ごとけんです
+ 0057 [shigeo tinyf] ありゃ?
+ 0058 [gotoken math] そうですね。IEEE754では決められてませんし、NaNとの大小比較は
+ 0060 [eguchi shizu] 小林> 小林@会社です。
+ 0067 [shigeo tinyf] で、調べてみました。
^ こんにちは
0063 [takashi oish] 精度保証付き数値計算の研究をやっています。
^ Re: NaN again & + -0
0068 [shigeo tinyf] あと、生成方法も何かいいのがありませんか?
0077 [eguchi shizu] double mz = -0.0;
0079 [shigeo tinyf] って意味です。これは、見事にだめでした(VC)。
0080 [eguchi shizu] 小林> 小林です。
0081 [shigeo tinyf] はい。
0084 [eguchi shizu] 小林> 小林です。
^ BigFloat & LAPACK
0075 [takashi oish] るびきちです。
^ Ruby/LAPACK working group
0086 [gotoken math] なんですよねえ ^^;; どうせ1000個ちょっとしかないから、人手が
+ 0087 [hieida acty.] うーむ......るびきち☆ さん、ごとけん さんにちゃんと返事できなくちゃっ
+ 0088 [takashi oish] るびきちです。
^ math functions
0090 [takashi oish] 初等数学関数(sin, cos, ...)についてなんだけど、
+ 0093 [gotoken math] Mathの位置づけはlibmの拡張モジュールなので、むしろ num.sin
| 0094 [takashi oish] るびきちです。
| 0096 [gotoken math] あ、やっと分かった、提案のポイントは Math::sin(x) が引数のク
| 0100 [takashi oish] そういうこと。
| 0106 [gotoken math] Object#send の別名です。
| 0107 [takashi oish] なるほど。
+ 0095 [matz netlab.] Mathモジュールは(名前はともかく)、math.hで定義されるlibmの関
+ 0097 [takashi oish] なるほど。
+ 0098 [gotoken math] それもわかるんですけど、libmごとき(失礼)に Math というすごい
+ 0099 [takashi oish] それいえてる(>_<)
+ 0102 [matz netlab.] 肯定します。歴史的事情ってヤツですね。
+ 0114 [gotoken math] # 楽しい話題が色々出てるのに顔を出せない…
| 0121 [matz netlab.] この場合、Math.sinはMath::Libm.sinとまったく同じものなんです
| 0123 [takashi oish] るびきちです。
| 0147 [gotoken math] そうです。Math.sin は主に互換性と記述省略のためのデフォルト
| 0151 [matz netlab.] 大体理解できました。で、 Math.sin の override とかをどうやっ
| 0157 [gotoken math] オーバーライドを除くと、net/ と Net のような関係としてmath/
+ 0184 [kdm kobe-kos] # ruby-math では, "始めまして."
^ Ruby on supercomputers
0101 [matz netlab.] 誰かやるって言ってましたよね。
^ LA with Ruby
0108 [shudoh murao] ruby-list ML でのごとけんさんの
0109 [hieida acty.] これで少なくとも4人は Ruby/LAPACK に興味があるということになりますね。
0117 [gotoken math] 4人も手を挙げたんだから実際はもっといるでしょう :-)
+ 0120 [matz netlab.] LAPACKとそのRubyインタフェースについての知識がゼロなのではず
| 0146 [gotoken math] もちろん定義は別になります。ここでは単に名前を決めないで議論
| + 0150 [matz netlab.] そういう使い方をするんですか? LAPACKを知らないんで。
| | 0155 [gotoken math] 場合によりけりです。LAPACK自体は色々な行列を作るサブルーチン
| | 0161 [matz netlab.] まあ、そうですね。で、変数(式)に型がない言語でも、要素に型を
| + 0168 [masa koala.a] reluctantですけど納得できていないので僭越ながら...
+ 0122 [takashi oish] るびきちです。
^ Re: divmod()
0110 [shigeo tinyf] わかりました。では、あとは ruby-math ということで...
^ %
0111 [shigeo tinyf] 以下の計算をやってみました。
0116 [gotoken math] ふなばさんが同様の指摘をしていましたが、少なくとも型で違うの
^ precedence of **
0113 [matz netlab.] PerlでもPythonでも ** 演算子の結合強度は最強になってます。
0115 [gotoken math] ときどき、comp.lang.misc とかで話題になりますね。
^ Re: % & divmod() & remainder()
0124 [shigeo tinyf] そうですね。私も [ruby-list:16680] のふなばさんに一票いれます。
0129 [matz netlab.] うーむ、そうかも。
+ 0131 [shigeo tinyf] これは [ruby-list:20376] で提案したソース修正ですよね。
| 0135 [matz netlab.] [ruby-list:20376]はFloatを特別扱いしているのであまり好みませ
| 0145 [gotoken math] 僕も floor や ceil はプロトコルとして定義してあった方が良い
| 0149 [matz netlab.] Math関係ではみんな人頼み。
| 0154 [gotoken math] ぱっと出て来ませんが、たとえば四則演算と比較はNumericの機能
| + 0159 [takashi oish] えっ、数値計算用のlinuxディストリビューションってあるんですか?
| | 0164 [hieida acty.] 通常計算させてるマシンにして、今この返事を書いてるマシンが、
| | + 0165 [takashi oish] そういうディストリビューションあるんだ。知らなかった。
| | + 0166 [shudoh murao] うろ覚えですが、以前 web ページで読んだところによると
| + 0160 [matz netlab.] DirectedとUndirectedですか。ゆうべScalarとそれ以外って分類が
| + 0163 [shudoh murao] glibc 2.1.2 では、対象の型が違う floor のような関数がこれだけあります。
+ 0132 [masa koala.a] Cの fmod と remainder とは違うんですね、しくしく。
0133 [shigeo tinyf] ええっ!!
0134 [masa koala.a] あ、舌足らずでごめんなさい。
0136 [matz netlab.] Cのremainderってなんですか?
+ 0137 [shigeo tinyf] div,mod = a.divmod(b) として
| 0138 [matz netlab.] Floatに関してはね。divmodそのものをもうちょっとgenericな形に
| + 0139 [shigeo tinyf] ややゴミですが(というかゴミです)
| + 0140 [gotoken math] それはもっともな意見です。これらには正式な定義などないと思い
| + 0141 [gotoken math] この定義ダメダメなので無視して下さい。
| + 0144 [gotoken math] やっぱり、分かりにくいので、Pythonのに一票です。
+ 0142 [masa koala.a] え、そうなんですか。SunOS 4.1.4 と Solaris 2.6 と
0143 [shigeo tinyf] 何かと評判の悪いVCには remainder() はありません。 (^^;;
^ coerce0
0127 [takashi oish] coerce について考えてみました。
^ libm
0156 [gotoken math] ちゅーわけで、libm 関数を調べようと思うんですが、どうやると
0158 [takashi oish] るびきちです。
^ rubikitch@ruby-lang.org
0180 [takashi oish] るびきちです。
0194 [matz netlab.] まずは www-admin@ruby-lang.org というメーリングリストに参加
0195 [takashi oish] さっそく参加してみます。
0196 [matz netlab.] あ、www-adminは性質上自動登録ではありません。webmasterになり
0197 [takashi oish] さっそく送りました。
^ Polynomial of multi variable
0185 [kdm kobe-kos] ちょっと欲しくなって, この土日で
+ 0186 [takashi oish] Polynomial っていえば、僕もちょこっとしたものを作ってみたけど・・・
| 0187 [kdm kobe-kos] プログラミングして遊ぶのには適当な規模だから?
| 0190 [takashi oish] るびきちです。反応はやっ。
+ 0198 [sinara blade] すばらしい。先を越されてしまいました。
0199 [kdm kobe-kos] 言い出してみると, 結構居るんですね.
+ 0200 [kdm kobe-kos] 訂正.
+ 0201 [takashi oish] るびきちです。
0202 [kdm kobe-kos] ユ−クリッドの互除法アルゴリズムの多項式への拡張.
+ 0203 [takashi oish] るびきちです。
| 0215 [kdm kobe-kos] まあそうですが,
| + 0219 [rubikitch ru] なるほど。
| | + 0225 [kdm kobe-kos] いや元の式の rank が落ちている例だからでしょう.
| | + 0228 [sinara blade] 同値変形で最小個数の関係式を見つけ出すわけです。今回の場合は係数行列の階
| | 0229 [rubikitch ru] なるほど。勉強になります。
| + 0221 [sinara blade] 簡単にいうと「イデアルの基底の一種」ですね。
| + 0223 [rubikitch ru] そうですね。
| + 0224 [kdm kobe-kos] 了解.
| 0227 [sinara blade] ええ、PolynomialM("文字列") で十分なので String#to_poly を定義しないでお
| 0232 [kdm kobe-kos] なるほど, ちょっと, 書き換えも検討しようかな.
| 0233 [sinara blade] ふーむ。やっぱりプロ(?)は速度を気にするのですね。
| 0234 [kdm kobe-kos] 児玉 です. to_poly, to_polyM は廃止になりました.
| 0235 [toyofuku jui] String の話ではありませんが以前お遊び的な方法を
| 0237 [kdm kobe-kos] *** 内容1 _.x
+ 0212 [hieida acty.] あと、「数学のたのしみ」という「数学セミナー」と同じ出版社が出している、
0213 [rubikitch ru] 研究室に「数学のたのしみ」を見つけたが、
0214 [dimageki mai] みなさん、こんにちは。
+ 0216 [kdm kobe-kos] 扱える係数とか, 項の順序とかにそれぞれ制限があるんですよね.
+ 0231 [gotoken math] 有限体ってGF(n)のことですよね。四則演算だけならすぐですけど、
threads.html
top