Any book on the solution of nsingular systems of equations is bound to start with Ax= J, but here, A is assumed to be symmetric. These systems arise frequently in scientific computing, for example, from the discretization by finite differences or by finite elements of partial differential equations. Usually, the resulting coefficient matrix A is large, but sparse. In many cases, the need to store the matrix factors rules out the application of direct solvers, such as Gaussian elimination in which case the only alternative is to use iterative methods. A natural way to exploit the sparsity structure of A is to design iterative schemes that involve the coefficient matrix only in the form of matrix-vector products. To achieve this goal, most iterative methods generate iterates Xn by the simple rule Xn = Xo + Qn-l(A)ro, where ro = f-Axo detes the initial residual and Qn-l is some polymial of degree n - 1. The idea behind such polymial based iteration methods is to choose Qn-l such that the scheme converges as fast as possible.