[Math] the difference between a linear $[n,k]$-code and a linear $[n,k,d]$-code

coding-theorylinear algebra

In my lecture notes on coding theory, I have the following 2 definitions:

Definition 1:
nk

Definition 2:
nkd

Where:

  • $n$ is the number of symbols in each codeword
  • $k$ is the dimension of the vector space formed by the codewords in the linear code $C$
  • $d$ is the minimum hamming distance between any 2 codewords in the code $C$.

Why is it that in the first definition, the value of $d$ does not need to be specified? Is it because the value of $d$ is entirely dependent on the values of $n$ and $k$? If this is the case, why do we specify the value of $d$ under the second definition?

Best Answer

It is not true that $d$ depends solely on $n$ and $k$. For instance, let us take $n$ arbitrary and $k=1$, over the field $\mathbb{F}_2$. Then our code consists of simply two code words, $(0,\dots,0)$ and another codeword $c$. Note that if $c=(1,1,\dots,1)$, then the minimum distance is $n$. But if $c$ is, for instance, $(1,0,\dots,0)$, then the minimum distance is only $1$!

Using the terminology of an $[n,k,d]$ code gives you more information than you will usually have with just using an $[n,k]$ code. But occasionally if, for instance you do not know the minimum distance, then you can simply refer to it as a $[n,k]$ code.

Related Question