I. Introduction
Reliable communication in the presence of noise has been a long-standing challenge. Numerous coding and modulation techniques have been invented over many decades to push the boundaries of communication; that is, to achieve higher data rates with smaller error probability under given resource constraints (bandwidth, power). Information storage and communication are two core technologies that underpin the information age, and the success of both hinges on error correction codes, such as Bose-Chaudhuri-Hocquenghem (BCH), Reed-Muller, convolution, turbo, low-density parity-check (LDPC), and polar codes. While these codes can approach the fundamental Shannon capacity limit over an additive white Gaussian noise (AWGN) channel in the large block length regime, there are many scenarios where we do not have practical codes that approach the fundamental theoretical boundaries.