Quasi-newton methods