% based on jonathan shewchuk paper
function alpha=approximate_line_search(A,At,AtA,b,p,lambda,sigma,xn,s)
    gradxn = gradF(A,At,b,p,lambda,sigma,xn);
	Hessxn = hessianF(A,At,b,p,lambda,sigma,xn);

    alpha = -dot(gradxn,s)/(dot(s,Hessxn*s));
end
