in the BFGS or SR1 method we are trying to find out the approximate inverse hessian which itself contain the distance between two points of the function (x_k+1 -x_k). so if we already know the X_K+1 then we are doing those complex things??
BFGS is an iterative algorithm (which stop after certain condition is met).
Thus, at iteration 'k' the algorithm finds x_{k+1} ... (which is next candidate for best solution point).
However, in order to move (to go) from x_{k+1} to x_{k+2} the algorithm must know the corresponding Hessian for iteration 'k+1', which is (must be) updated according to the current state of available relevant information.