first we will find what f(0) is.

substituting x=0 and y=0 we get

`f(0)f(0) - 0*0 = 0*f(0) + 0*f(0) - 0^2 - 0^2 + 1`

Giving us

`f(0)^2 = 1`

`f(0) = +-1`

Now we can substitute y=0 into the equation

`f(x)*f(0) - x*0 = x*f(x) + 0*f(0) - x^2 - 0^2 + 1`

This gives

`f(x)*f(0) = x*f(x) - x^2 + 1`

Solving for f(x) we get

`(f(0)-x)f(x) = 1 - x^2`

Dividing by f(0)-x we get

`f(x) = (1-x^2)/(f(0)-x) = ((1-x)(1+x))/(f(0)-x)`

Now substituting `f(0) = +- 1`

We get

`f(x) = (1-x^2)/(1-x)=1+x` if `x!=1`

or `f(x)=(1-x^2)/(-1-x)=-1(1-x)=x-1` `x!=-1`

So our answer is

`f(x)=1+x` ` x!=1` or `f(x)=x-1` ` x!=-1`

We can substitute into our original equation

`(1+x)(1+y) - xy = x(1+x) + y(1+y) - x^2 - y^2 + 1`

`1 + x + y + xy - xy = x + x^2 + y + y^2 + y - x^2 - y^2 + 1`

`1 + x + y = x + y + 1` which is an identity

Try the other

`(x-1)(y-1) - xy = x(x - 1) + y(y-1) - x^2 - y^2 + 1`

`xy - x - y + 1 - xy = x^2 - x + y^2 - y - x^2 - y^2 + 1`

Simplifying we get

`-x - y + 1 = -x - y + 1` which is an identity.

The solution are

`f(x) = x + 1` if `x!=1` and `f(x) = x - 1` if `x!=-1`

You should consider y = 0 such that:

`f(x)*f(0)=x*f(x) + 1 - x^2`

You should consider x=-1 and x=1 in relation above such that:

`f(1)*f(0)=f(1) + 1-1 =gt f(1)*f(0)=f(1)` (1)

`f(-1)*f(0)=-f(-1) ` (2)

Considering x = 0 yields: `f^2(0)=1 =gt f(0) = +-1` (3)

You should consider x=1 and y=-1 and substitute in relation `f(x)*f(y)-xy=x*f(x)+y*f(y)-x^2-y^2+1` such that:

`f(1)*f(-1) + 1= f(1) - f(-1) - 1 - 1 + 1`

`f(1)*f(-1) + 2= f(1) - f(-1)` (4)

Considering f(0) = 1 in (2) yields: `f(-1) =- f(-1) =gt 2f(-1)=0 =gt f(-1)=0.`

Substituting f(-1)=0 in (4) yields f(1)=2, hence `f(x)*f(0)=x*f(x) + 1 - x^2 =gt f(x) = x*f(x) + 1-x^2` `f(x)(1-x) = (1-x)(1+x) =gt f(x) = x+1`

Considering f(0) = -1 in (2) yields: f(1) =0 => f(-1)=2

**Hence, considering `f(0)=+-1` yields: the functions that accomplish `f(x)*f(y)-xy=x*f(x)+y*f(y)-x^2-y^2+1are f(x) = x-1; f(x) = x+1` .**