Question: Determining f,g such that f(x)*g(y)= H(x,y)

Does Maple have build-in function, which when given an expression that depends on x and y, will separate it to a product of two functions, one that depedns on x only and the other that depends on y only?

The input mathematical expression is known to be seperable.

For example, If the input is

((3*y + y^2)*3*x)/(x + sin(x))

Then I'd the Maple function to take the above and return list or set of two parts  {(3*y + y^2)   ,     3*x/(x + sin(x) } (if it can't separate it, it can return null).

The API can be something as  

 f,g = find_product_functions(expression,[x,y])

Something like this is used on determining for example if RHS of first order ODE is separable in order to solve it more easily.  collect() does not really work for this. So Maple allready does this internally in its ODE solver when it checks if ODE is separable or not. But is the function available for users?

 

Please Wait...