http://q.hatena.ne.jp/1170676824

多変数の因数分解は次数の低い変数に注目して因数分解が基本です。

x^3-xy^2-x^2-y^2-x+1

次数の低いyに注目

y^2*(-x-1)+x^3-x^2-x+1

x^3-x^2-x+1 はx=1を代入すると0になるのでx-1で割り切れます。
組み立て除法で

x^2 -1
----------------
x-1)x^3-x^2-x+1
x^3-x^2
----------------
-x+1
-x+1
------
0

y^2*(-x-1)+x^3-x^2-x+1=y^2*(-x-1)+(x-1)(x^2-1)
=y^2*(-x-1)+(x-1)(x-1)(x+1)
=(x+1)((x-1)^2-y^2)
=(x+1)(x-1-y)(x-1+y)

Ans. (x+1)(x-1-y)(x-1+y)
~~~~~~~~~~~~~~~~~~~~~~~~~~