Ayuda con código Java!

Hola a todos!

Quisiera saber si hay algun método o clase en java que despeje una incognita en una ecuación por ejemplo: x^2+5.x+4 = P, donde tendria que despejar el valor de x en función de P, ya que el valor de P puedo asignarselo según el despeje de la ecuación.

Como en otros lenguajes de programación existe el método solve y quedaría solve(x^2+5.x+4=P, x)!.

O sea, el asunto es asi! tengo una curva de cualquier orden n! que es la función costo de un generador! y esta tengo que derivarla e igualarla a una lambda que es el multiplicador de Lagrange! he hecho una aplicación en la que me encuentra las raices de un polinomio de orden n! por eso lado no tendria problema.

Pero por ejemplo si tuviera una curva de costo de tercer orden esta se deriva y queda de segundo orden por ejemplo: x^2-3x+5 = P
y para esto tengo que encontrar las raices y despejar toda esta ecuación en función de x.

Porfavor les agradeceria eternamente por su ayuda!