Subspace techniques