原です。

In message "[ruby-math:00215] Re: Polynomial of multi variable"
    on 00/02/02, "K.Kodama" <kdm / kobe-kosen.ac.jp> writes:
|
|児玉 です. 

|> > ユ−クリッドの互除法アルゴリズムの多項式への拡張.
|> 
|> 最大公約数みたいなものですかね。
|
|まあそうですが,

簡単にいうと「イデアルの基底の一種」ですね。

|#!/usr/local/bin/ruby 
|require "polynomialm"
|#  式の設定
|f1="x+y+2z-2".to_polyM; f2="2x+3y+6z-5".to_polyM; f3="3x+2y+4z-5".to_polyM
|#  Groebner base を求める
|gb=GBase.getGBase([f1,f2,f3])
|printf "%s, %s, %s\n",f1,f2,f3
|printf "Groebner basis: %s\n",gb.join(", ")
|-------結果---------
|x+y+2z-2, 2x+3y+6z-5, 3x+2y+4z-5
|Groebner basis: x-1, y+2z-1
|--------ここまで--------

すばらしい!遊んでみたくてコードを取ってきました。コードの量が半端じゃな
くて圧倒されました。(^^;

ちょっとサマツな点についてコメントを。polynomial.rb のコメントにある
String.to_poly は、String#to_poly と書くのが一般的です。String.to_poly 
だとクラスメソッドになってしまう。それから、String クラスは、非常に一般
的なクラスでいわばボスキャラみたいなものなんで、そこに to_poly を定義し
てしまうのは、なんとなく抵抗があります。まあ、どうでもいいような事なんで
すが。(^^;