{'fraction_non_alphanumeric': 0.03275705186533212, 'fraction_numerical': 0.0, 'mean_word_length': 5.214689265536723, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Constrained iterative decoding: performance and convergence analysis

We introduce a modification to the standard iterative decoding (message passing) algorithm that yields improved performance at the cost of higher complexity. This modification is to run multiple iterative decoders, each with a different constraint on a system variable (e.g., input value, state value etc.). This constrained iterative decoding (CID) implements optimal MAP decoding for systems represented by single-cycle graphs (e.g., tail-biting convolutional codes). For more complex graphical models, the CID is suboptimal, but outperforms the standard decoding algorithm because it negates the effects of some cycles in the model. We show that the CID outperforms the standard ID for a serially concatenated convolutional code (SCCC) system and low-density-parity-check (LDPC) code system, especially when the interleaver size is small. Density evolution analysis is used to show how CID improves the convergence relative to that of standard ID by showing that the threshold of the CID is lower than that of the standard ID.