In a transmitter of all modern wireless communication links, an output sequence of bits from an error correcting code can be mapped onto a sequence of complex modulation symbols. These symbols can be then used to create a waveform suitable for transmission across a wireless channel. Particularly as data rates increase, decoding performance on the receiver side can be a limiting factor to achievable data rates.