n = 2 iterations (n being the order of the system). Convergence properties The conjugate gradient method can theoretically be viewed as a direct method, as in the absence of round-off error it produces the exact solution after a finite number of iterations, which is not larger than the size of the matrix. In practice, the exact solution is never obtained since the conjugate gradient method is unstable with respect to even small perturbations, e.g., most directions are not in practice conjugate, due to a degenerative nature of generating the Krylov subspaces. As an iterative method, the conjugate gradient method monotonically (in the energy norm) improves approximations to the exact solution and may reach the required tolerance after a relatively small (compared to the problem size) number of iterations. The improvement is typically linear and its speed is determined by the condition number of the system matrix : the larger is, the slower the improvement. If is large, preconditioning is commonly used to replace the original system with such that is smaller than , see below. Convergence theorem Define a subset of polynomials as where is the set of polynomials of maximal degree . Let be the iterative approximations of the exact solution , and define the errors as . Now, the rate of convergence can be approximated as where denotes the spectrum, and denotes the condition number. Note, the important limit when tends to This limit shows a faster convergence rate compared to the iterative methods of Jacobi or Gauss–Seidel which scale as . No round-off error is assumed in the convergence theorem, but the convergence bound is commonly valid in practice as theoretically explained by Anne Greenbaum. Practical convergence If initialized randomly, the first stage of iterations is often the fastest, as the error is eliminated within the Krylov subspace that initially reflects a smaller effective condition number. The second stage of convergence is typically well defined by the theoretical convergence bound with , but may be super-linear, depending on a distribution of the spectrum of the matrix and the spectral distribution of the error. In the last stage, the smallest attainable accuracy is reached and the convergence stalls or the method may even start diverging. In typical scientific computing applications in double-precision floating-point format for matrices of large sizes, the conjugate gradient method uses a stopping criteria with a tolerance that terminates the iterations during the first