Linear Codes
Ron M. Roth
Abstract
Ron M. Roth
Abstract
In this chapter, we consider block codes with a certain structure, which are defined over alphabets that are fields. Specifically, these codes, which we call linear codes, form linear spaces over their alphabets. We associate two objects with these codes: a generator matrix and a parity-check matrix. The first matrix is used as a compact representation of the code and also as a means for efficient encoding. The parity-check matrix will be used as a tool for analyzing the code (e.g., for computing its minimum distance) and will also be part of the general framework that we develop for the decoding of linear codes. As examples of linear codes, we will mention the repetition code, the parity code, and the Hamming code with its extensions. Owing to their structure, linear codes are by far the predominant block codes in practical usage, and virtually all codes that will be considered in subsequent chapters are linear. Definition Denote by GF( q ) a finite ( Galois ) field of size q . For example, if q is a prime, the field GF( q ) coincides with the ring of integer residues modulo q , also denoted by ℤ q . We will see more constructions of finite fields in Chapter 3. An ( n, M, d ) code C over a field F = GF( q ) is called linear if C is a linear subspace of F n over F ; namely, for every two codewords c 1 , c 2 ∈ C and two scalars a 1 , a 2 ∈ F we have a 1 c 1 + a 2 c 2 ∈ C .
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
In this chapter, we consider block codes with a certain structure, which are defined over alphabets that are fields. Specifically, these codes, which we call linear codes, form linear spaces over their alphabets. We associate two objects with these codes: a generator matrix and a parity-check matrix. The first matrix is used as a compact representation of the code and also as a means for efficient encoding. The parity-check matrix will be used as a tool for analyzing the code (e.g., for computing its minimum distance) and will also be part of the general framework that we develop for the decoding of linear codes. As examples of linear codes, we will mention the repetition code, the parity code, and the Hamming code with its extensions. Owing to their structure, linear codes are by far the predominant block codes in practical usage, and virtually all codes that will be considered in subsequent chapters are linear. Definition Denote by GF( q ) a finite ( Galois ) field of size q . For example, if q is a prime, the field GF( q ) coincides with the ring of integer residues modulo q , also denoted by ℤ q . We will see more constructions of finite fields in Chapter 3. An ( n, M, d ) code C over a field F = GF( q ) is called linear if C is a linear subspace of F n over F ; namely, for every two codewords c 1 , c 2 ∈ C and two scalars a 1 , a 2 ∈ F we have a 1 c 1 + a 2 c 2 ∈ C .
Key concepts: Parity-check matrix, Generator matrix, Linear code, Block code, Raptor code, Low-density parity-check code, Concatenated error correction code, Computer science