Fix the newtons_method_minimum() to converge to the correct value. It seems as if the update from x_n to x_n+1 is not correct. Note that Newton's method for minimum finding aims to find the roots of the gradient of a function, where as the traditional Newton's method simply seeks to find the roots of the given function. Please use the grad() function to compute derivatives when necessary.
