  Existing literature on source coding with side information (SCSI) mostly uses
the state-of-the-art channel codes namely LDPC codes, turbo codes, and their
variants and assume classical unique decoding. In this paper, we present an
algebraic approach to SCSI based on the list decoding of the underlying channel
codes. We show that the theoretical limit of SCSI can be achieved in the
proposed list decoding based framework when the correlation between the source
and side information is $q$-ary symmetric. We argue that, as opposed to channel
coding, the correct sequence from the list produced by the list decoder can
effectively be recovered in case of SCSI with a few CRC symbols. The CRC
symbols, which allow the decoder to identify the correct sequence, incur
negligible overhead for large block lengths. More importantly, these CRC
symbols are not subject to noise since we are dealing with a virtual noisy
channel rather than a real noisy channel. Finally, we present a guideline for
designing constructive SCSI schemes for non-binary and binary sources using
Reed Solomon codes and BCH codes, respectively. This guideline allows us to
design a SCSI scheme for any arbitrary $q$-ary symmetric correlation without
resorting to simulation.
