2012年4月28日23:21 KISHIMOTO, Makoto <ksmakoto / dd.iij4u.or.jp>:
> このように b/a の結果が b*a.inverse ではなく a.inverse*b ないし
> b*a.transpose.inverse と同じになります。わかっていれば特に問題
> ありませんが、直感的でないような気もします。
>
> マニュアルにある通り、b/a の実装は、逆行列を求めたりはせず、
> a.lu.solve(b) と同等になるとのことなので、a.lu.solve(b) が元々
> そのような仕様で、a.lu.solve(b) の略記法として b/a のようにも書ける、
> としたためそうなったなのか、それとも何か深い理由があるのか、
> どういったものでしょうか?

特に深い意味はなく、ご明察の通りです。
octave では a\b と書けますが、ruby ではバックスラッシュを演算子として使えないので、
直感的ではありませんが試験的に b/a を a.lu.solve(b) に割り当てました。

田中昌宏