正木です。

In message "[ruby-math:00913] Re: Rational 	公開しました。"
    on 03/08/08,matz / ruby-lang.org (Yukihiro Matsumoto) writes:

|それぞれ個別に議論しましょう。目的、名前、実装それぞれについ
|て私を説得してください。

目的については、"[ruby-math:00914] New methods of Integer" で原さん
にまとめていただいた通りです。iroot はなくてもいいという点について
も同意します。

|gcdはインタフェース、bitsize, isqrt, irootは名前の点で引っか
|かってます。

Math.gcd(a, b) というのは、a, b が整数に限られるということを考え
ると、現在の Float 中心の Math にはなじまない気がします。
Integer.gcd(a, b) でも良いですが、Integer#gcd でまづいという理由が
良く分かりません。

名前に関しては、ほかの言語や数学ソフトでどうなっているか、一寸
調べてみました。

bitsize: Mathematica では BitLength[n]
すこし長いですが bitlength は如何でしょうか?

isqrt: Common Lisp では
 (isqrt x) ==  (values (floor (sqrt x))) 
Maple でも isqrt 。

iroot: Maple で iroot 。

|また、正木さんのgcdって結果がfixnumに収まらない
|場合にはどうなるんでしょう。

y が 0 になった時点で bignum を返します。