解答読んだんですけどわかりません・・
f(x)=a[m]x^m + a[m-1]x^(m-1) + ・・・ +a[1]x+a[0]
g(y)=b[n]y^m + b[n-1]y^(n-1) + ・・・ +b[1]y+b[0]とおく
     ↑ガウス記号じゃなくて数列に使われるやつです
ただしa[0],・・・a[m],b[0],・・・,b[n]は整数で、a[m]≠0 b[n]≠0であり、←なぜここで≠0なのかわかりません
m≧n≧0とする。                   ←なぜこのように定義するのかわかりません
xy=1より0でない任意のxでy=1/x
f(x)g(1/x)=(a[m]x^m + a[m-1]x^(m-1) + ・・・ +a[1]x+a[0])*(b[n]/x^[n] + b[n-1]/x^(n-1) + ・・・ +b[1]/x+b[0])

f(x)*g(1/x)=1であるから、両辺にx^nをかけると
(a[m]x^m + a[m-1]x^(m-1) + ・・・ +a[1]x+a[0])*(b[n] + b[n-1]x + ・・・ +b[1]x^(n-1)+b[0]x^n)=x^n

m>nとすると、左辺の次数は右辺の次数を越えるので適さない ←なぜここでこうなるのかわかりません
したがってm=n
また、b[n-1],b[n-2],・・・,b[1],b[0]の中で0でないものがあるとき
左辺の次数は右辺の次数を越えるので適さない     ←なぜここでこうなるのかわかりません
したがってb[n-1] = b[n-2] = ・・・ = b[1] =b[0]
これよりb[n]{a[n]x^n + a[n-1]x^(n-1) + ・・・ +a[1]x + a[0]}
b[n]≠0より
   a[n]b[n]=1, a[n-1] = ・・・ = a[1] = a[0] = 0    ←なぜここでこうなるのかわかりません
したがって0以上の整数m,nに対して
 f(x)=a[n]x^n, g(y)=b[n]y^n かつ a[n]b[n] = 1
となる。
a[n],b[n]は整数になるからa[n]=b[n]=±1(複号同順)
ゆえに f(x) = x^n g(y) =y^n

または f(x) = -x^n g(y) =-y^n

となるのですが、矢印で書いた部分がわかりません・・
非常に長文失礼ですがお願いします・・