  We derive sharp bounds for the accuracy of approximate eigenvectors (Ritz
vectors) obtained by the Rayleigh-Ritz process for symmetric eigenvalue
problems. Using information that is available or easy to estimate, our bounds
improve the classical Davis-Kahan $\sin\theta$ theorem by a factor that can be
arbitrarily large, and can give nontrivial information even when the
$\sin\theta$ theorem suggests that a Ritz vector might have no accuracy at all.
We also present extensions in three directions, deriving error bounds for
invariant subspaces, singular vectors and subspaces computed by a
(Petrov-Galerkin) projection SVD method, and eigenvectors of self-adjoint
operators on a Hilbert space.
