Finding error patterns from a syndrome

2.1k Views Asked by At

I have a parity-check matrix
$$ H= \left[ \begin{matrix} 1 & 1 & 1 & 0 & 1 & 0 & 0 & 0\\ 0 & 1 & 1 & 1 & 0 & 1 & 0 & 0\\ 1 & 0 & 1 & 1 & 0 & 0 & 1 & 0\\ 1 & 1 & 0 & 1 & 0 & 0 & 0 & 1\\ \end{matrix} \right] $$ and a received codeword $r = (01110110)$
I computed the syndrome $s = (0010)$, which tells that the error pattern should be $e = (00000010)$.
Now my problem is, can I find other error patterns from this syndrome?
To be general, do we get syndromes that isn't a vector of the generator matirx? If yes, then how do we find out the error patterns?

2

There are 2 best solutions below

0
On BEST ANSWER

If syndrome $s$ corresponds to an error pattern $e$, then the set $\mathcal B$ of all vectors that have the same syndrome $s$ is given by $$\mathcal B = \{e + c\colon c \in \mathcal C\}$$ where $\mathcal C$ is the set of all codewords. No codeword can have a nonzero syndrome (alternatively, if a vector has syndrome $\mathbf 0$, then that vector is a codeword in $\mathcal C$). If you compute the difference between two vectors that have a particular syndrome, that difference is a codeword.

1
On

Given that the weight of the error pattern should be minimal, you have the only correct error pattern for this syndrome in this code.

You could find $(01011000)$ as error pattern from this syndrome, but that pattern obviously has more weight, and less chance of being the correct error pattern. It would also result in a diffent decoded word.

I'm not sure what the minimum distance of the original code was, probably 4, in that case when 2 errors would occur, you would find multiple error patterns for the same syndrome.

In that case we would say the code is 1 error correcting and 2 error detecting. (A second error could be detected but not corrected)