A method for operating a receiving device, the method comprising: determining, by the receiving device, reliability ratings for undecoded data streams in a received transmission; sorting, by the receiving device, the undecoded data streams in accordance with respective reliability factors; selecting, by the receiving device, an undecoded data stream in the received transmission in accordance with the determined reliability ratings, thereby producing a selected data stream; decoding, by the receiving device, the selected data stream with a decoding trellis, thereby producing a data symbol; performing, by the receiving device, a check to determine if the selected stream was successfully decoded; if the selected stream was successfully decoded, updating, by the receiving device, the decoding trellis in accordance with the data symbol with an outcome of the decoding of the selected stream involving pruning of some of trellis states of the decoding trellis, so that some of the states of stages of the decoding trellis involving the outcome of the decoding of the selected stream are pruned and the pruning of the decoding trellis reduces a number of possible states in the stages and thereby reduces decoding uncertainty; then performing, by the receiving device, a check to determine if there are any more undecoded streams, and if there are no more undecoded streams, operating terminates, and if there are more undecoded streams, returning, by the receiving device, to selecting an undecoded stream in accordance with the reliability factor and repeating, by the receiving device, the selecting, the decoding, and the updating for remaining undecoded data streams in the received transmission, and if the decoding of the selected stream was unsuccessful, requesting, by the receiving device, retransmission of the selected stream that was unsuccessfully decoded and then continuing with the above-defined step of decoding, by the receiving device, the retransmission of the selected stream as the selected stream, wherein the data streams are interleaved to help improve decoding performance so that the data streams are partitioned into portions and the portions are interleaved with each other to help improve decoding performance. determining, by the receiving device, reliability ratings for undecoded data streams in a received transmission; sorting, by the receiving device, the undecoded data streams in accordance with respective reliability factors; selecting, by the receiving device, an undecoded data stream in the received transmission in accordance with the determined reliability ratings, thereby producing a selected data stream; decoding, by the receiving device, the selected data stream with a decoding trellis, thereby producing a data symbol; performing, by the receiving device, a check to determine if the selected stream was successfully decoded; if the selected stream was successfully decoded, updating, by the receiving device, the decoding trellis in accordance with the data symbol with an outcome of the decoding of the selected stream involving pruning of some of trellis states of the decoding trellis, so that some of the states of stages of the decoding trellis involving the outcome of the decoding of the selected stream are pruned and the pruning of the decoding trellis reduces a number of possible states in the stages and thereby reduces decoding uncertainty; then performing, by the receiving device, a check to determine if there are any more undecoded streams, and if there are no more undecoded streams, operating terminates, and if there are more undecoded streams, returning, by the receiving device, to selecting an undecoded stream in accordance with the reliability factor and repeating, by the receiving device, the selecting, the decoding, and the updating for remaining undecoded data streams in the received transmission, and if the decoding of the selected stream was unsuccessful, requesting, by the receiving device, retransmission of the selected stream that was unsuccessfully decoded and then continuing with the above-defined step of decoding, by the receiving device, the retransmission of the selected stream as the selected stream, wherein the data streams are interleaved to help improve decoding performance so that the data streams are partitioned into portions and the portions are interleaved with each other to help improve decoding performance.