* @brief Root-finding method for a continuous function given two values with * opposite signs * @param x_left Lower endpoint value of the interval * @param x_right Upper endpoint value of the interval * @param tolerance Error threshold * @returns `root of the function` if bisection method succeed within the * maximum number of iterations * @returns `-1` if bisection method fails */