In other words, to guarantee a small error we need not to be too large (one can show it is always at least 1), and for to be small. When is not large, we say A is well conditioned. If is large, we say A is ill conditioned. (The exact definition of these terms depends on the context, but their use is widespread.) depends only on the matrix A, not the algorithm we use; we will describe cheap ways to estimate it below.
The other property we need to guarantee a small error bound, being small, is called numerical stability, and is a property of the algorithm. A well designed algorithm will be numerically stable, and a poor algorithm will not be. More formally, we say an algorithm to solve Ax=b is numerically stable if the solution it computes satisfies (or equivalently ), where is close to the machine precision . Recall from Chapter CA
that the machine precision measures the roundoff error in individual floating point operations. In IEEE standard single precision floating point arithmetic, which has 23 bits to store the significant bits of a floating point number, . In IEEE standard double precision floating point arithmetic, which has 52 bits to store the significant bits of a floating point number, .