`fctr', `sqfr'
--------------

fctr(POLY)
     :: POLY $B$r4{Ls0x;R$KJ,2r$9$k(B.

sqfr(POLY)
     :: POLY $B$rL5J?J}J,2r$9$k(B.

RETURN
     $B%j%9%H(B

POLY
     $BM-M}?t78?t$NB?9`<0(B

   * $BM-M}?t78?t$NB?9`<0(B POLY $B$r0x?tJ,2r$9$k(B. `fctr()' $B$O4{Ls0x;RJ,2r(B,
     `sqfr()' $B$OL5J?J}0x;RJ,2r(B.

   * $B7k2L$O(B [[$B?t78?t(B,1],[$B0x;R(B,$B=EJ#EY(B],...] $B$J$k%j%9%H(B.

   * $B?t78?t(B $B$H(B $BA4$F$N(B $B0x;R(B^$B=EJ#EY(B $B$N@Q$,(B POLY $B$HEy$7$$(B.

   * $B?t78?t(B $B$O(B, (POLY/$B?t78?t(B) $B$,(B, $B@0?t78?t$G(B, $B78?t$N(B GCD $B$,(B 1 $B$H$J$k(B
     $B$h$&$JB?9`<0$K$J$k$h$&$KA*$P$l$F$$$k(B. (`ptozp()' $B;2>H(B)

     [0] fctr(x^10-1);
     [[1,1],[x-1,1],[x+1,1],[x^4+x^3+x^2+x+1,1],[x^4-x^3+x^2-x+1,1]]
     [1] fctr(x^3+y^3+(z/3)^3-x*y*z);
     [[1/27,1],[9*x^2+(-9*y-3*z)*x+9*y^2-3*z*y+z^2,1],[3*x+3*y+z,1]]
     [2] A=(a+b+c+d)^2;
     a^2+(2*b+2*c+2*d)*a+b^2+(2*c+2*d)*b+c^2+2*d*c+d^2
     [3] fctr(A);
     [[1,1],[a+b+c+d,2]]
     [4] A=(x+1)*(x^2-y^2)^2;
     x^5+x^4-2*y^2*x^3-2*y^2*x^2+y^4*x+y^4
     [5] sqfr(A);
     [[1,1],[x+1,1],[-x^2+y^2,2]]
     [6] fctr(A);
     [[1,1],[x+1,1],[-x-y,2],[x-y,2]]

$B;2>H(B
     *Note `ufctrhint': ufctrhint.

