Skip to main content

Linear Block Codes

  • Chapter
  • First Online:
Forward Error Correction via Channel Coding
  • 675 Accesses

Abstract

In this chapter, we will explain the construction of linear block codes. Since linear block codes are vector subspaces, we advise to the reader to study Chap. 1 before proceeding to Chap. 2. Without the knowledge of basic concepts of linear algebra, such as groups, fields, vector spaces, and subspaces, it is difficult to comprehend the philosophy behind the concept of linear block codes. We advise the reader to study the section related to the philosophy of channel encoding before studying the sections related to the encoding and decoding operations. We explain the purpose of channel encoding in Sect. 2.5. After introducing the construction of linear block codes, we explain the encoding operation and give some fundamental definitions such as minimum distance, generator matrix, and parity check matrix. In sequel, we explain equivalent codes, error detection and correction capability of linear block codes, and Hamming spheres.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Orhan Gazi .

Problems

Problems

  1. 1.

    What is a vector space? State the properties of a vector space.

  2. 2.

    What is a subspace? How do we determine whether a vector space is a subspace or not?

  3. 3.

    What is a linear block code? Is it a subspace or an ordinary vector set?

  4. 4.

    The prime field F3 is defined as

    $$ {F}_3=\left\{0,1,2\right\} $$
$$ +\to \mathrm{Mod}-3\ \mathrm{addition} $$
$$ \ast \to \mathrm{Mod}-3\ \mathrm{multiplication}. $$
  • Assume that, using the field elements, we construct a vector space with dimension 4, and v1 and v2 are two vectors chosen from this vector space. We calculate the subtraction of these two vectors as

$$ {\boldsymbol{v}}_1-{\boldsymbol{v}}_3. $$
(P2.1)
  • Is Eq. (P2.1) a meaningful operation?

  1. 5.

    A linear block code should always include all-zero code-word as one of its code-words. Is this statement correct or not? If it is correct, then why it is correct, and explain it. If it is not correct, then explain why it is not correct.

  2. 6.

    Using the binary field elements, construct a vector space with dimension 4, and from this vector space, find a subspace with dimension 3.

  3. 7.

    Write the standard basis elements of a vector space with dimension 5, and using the standard basis, generate three different bases of this vector space.

  4. 8.

    What is encoding? Explain it very briefly without mentioning any formula.

  5. 9.

    What is decoding? Explain it very briefly without mentioning any formula.

  6. 10.

    Why do we do encoding and decoding operations? Explain the reasoning behind them.

  7. 11.

    Assume that we have two binary linear block codes with the same dimension and length, i.e., code-words include the same number of bits and the number of code-words in both codes is the same. Which one do you choose? And which criteria is important in your choice?

  8. 12.

    The generator matrix of a binary linear block code is given as

    $$ \boldsymbol{G}=\left[\begin{array}{c}101001\\ {}110110\\ {}101101\end{array}\right]. $$
  • Determine all the code-words for this code, and calculate the Hamming weight of each code-word. What is the minimum distance of this code?

  1. 13.

    The generator matrix of a binary linear block code is given as

    $$ \boldsymbol{G}=\left[\begin{array}{c}1001001\\ {}1110010\\ {}1010100\\ {}1001001\end{array}\right]. $$
  • Find the systematic form of this matrix and determine the parity check matrix of this code.

  1. 14.

    A binary subspace with dimension 2 is given as

    $$ \boldsymbol{B}=\left\{\mathrm{10010,01010,00110,10001}\right\}. $$
  • Find a dual space of this subspace.

  1. 15.

    The parity check matrix of a code is the generator matrix of its dual code. Is this statement correct or not?

  2. 16.

    The parity check matrix of a code is given as

    $$ \boldsymbol{H}=\left[\begin{array}{c}1001100\\ {}0110100\\ {}1011010\\ {}1011001\end{array}\right]. $$
  • Find the generator matrix of this code.

  1. 17.

    The generator matrix of a code is given as

    $$ \boldsymbol{G}=\left[\begin{array}{c}1001001\\ {}1110010\\ {}1010110\end{array}\right]. $$
    1. (a)

      How many data-words can be encoded using this generator matrix?

    2. (b)

      What is the dimension of the vector space from which this code is constructed?

    3. (c)

      What is the dimension of code?

    4. (d)

      How many vectors are available in the vector space from which this code is generated?

    5. (e)

      How many code-words are available in this code?

  2. 18.

    The parity check matrix of a binary linear block code is given as

    $$ \boldsymbol{H}=\left[\begin{array}{c}1001100\\ {}1100111\\ {}1011100\end{array}\right]. $$

Find the minimum distance of this code.

  1. 19.

    If I sum two code-words belonging to a linear block code, I obtain another code-word. Explain the reasoning behind this statement.

  2. 20.

    The minimum distance of a linear block code is given as

    $$ {d}_{\mathrm{min}}=7. $$
    1. (a)

      How many errors can this code detect?

    2. (b)

      How many errors can this code correct?

  3. 21.

    The error correction capability of a linear block code is tc = 5. What can be the minimum distance of this code?

  4. 22.

    We are informed that a linear block code can correct tc = 3 bit errors. Does this mean that four errors can never be corrected? Explain your reasoning behind your answer.

  5. 23.

    Consider a vector space with dimension 5. Write all the vectors of this vector space. Locate all the vectors of this vector space on Hamming spheres with different radiuses, and at the center of the innermost Hamming sphere, we have the all-zero vector.

  6. 24.

    The minimum distance of a linear block code C(n = 15, k = 7) is given as dmin = 10. Comment on the correctness of this minimum distance using the singleton bound.

  7. 25.

    What is maximum distance separable code? Explain it.

  8. 26.

    Write the Hamming bound formula.

  9. 27.

    Using the Hamming bound formula for the code C(n = 16, k) for which the minimum distance is given as dmin = 6, determine the largest possible value of k.

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Gazi, O. (2020). Linear Block Codes. In: Forward Error Correction via Channel Coding. Springer, Cham. https://doi.org/10.1007/978-3-030-33380-5_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-33380-5_2

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-33379-9

  • Online ISBN: 978-3-030-33380-5

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics