In de coderingstheorie wordt gewerkt met verschillende codes. Om te bepalen welke codes bruikbaar zijn in de praktijk, worden voor iedere code de volgende twee hoofdvragen beantwoord:
Voorbeeld Stel dat je van iemand een briefje ontvangt met het woord $\texttt{olifand}$ erop. Je zult dan direct herkennen dat er een fout is gemaakt. Sterker nog, je zult deze fout snel herstellen naar het juiste codewoord $\texttt{olifant}$. Maar wat nu als je een briefje met het woord $\texttt{sqehuifb}$ ontvangt? Je herkent wel dat er een fout gemaakt is, maar je kunt deze niet herstellen. En wat nu als je een briefje met het woord $\texttt{tank}$ ontvangt? Waarschijnlijk zul je geen fout herkennen, maar misschien had er wel $\texttt{bank}$ of $\texttt{tang}$ moeten staan. Dit voorbeeld laat zien dat het belangrijk is om vooraf te weten welke fouten een code kan herkennen en herstellen.
Conclusie: Hoe groter het foutherkennend en foutherstellend vermogen van de code, des te beter is de code bruikbaar in de praktijk.
- welke fouten kan de code herkennen?
- welke fouten kan de code herstellen?
Voorbeeld Stel dat je van iemand een briefje ontvangt met het woord $\texttt{olifand}$ erop. Je zult dan direct herkennen dat er een fout is gemaakt. Sterker nog, je zult deze fout snel herstellen naar het juiste codewoord $\texttt{olifant}$. Maar wat nu als je een briefje met het woord $\texttt{sqehuifb}$ ontvangt? Je herkent wel dat er een fout gemaakt is, maar je kunt deze niet herstellen. En wat nu als je een briefje met het woord $\texttt{tank}$ ontvangt? Waarschijnlijk zul je geen fout herkennen, maar misschien had er wel $\texttt{bank}$ of $\texttt{tang}$ moeten staan. Dit voorbeeld laat zien dat het belangrijk is om vooraf te weten welke fouten een code kan herkennen en herstellen.
Conclusie: Hoe groter het foutherkennend en foutherstellend vermogen van de code, des te beter is de code bruikbaar in de praktijk.