1. A computer-implemented method for detecting a symbol encoded in one or more received signals, wherein the detected symbol corresponds to a combination of values of n components, the method comprising: (a) for each of a plurality of different combinations of values of the n components, where n>1, the computer generating a set of two or more sub-metric values based on the one or more received signals, wherein: each sub-metric value is a function of one or more of the n components; and at least one sub-metric value is a function of fewer than all of the n components; and (b) the computer detecting the symbol based on the sets of two or more sub-metric values.