W teorii kodowania „jak dobry jest kod” oznacza liczbę błędów kanału, które można poprawić lub, mówiąc lepiej, maksymalny poziom szumu, z którym kod może sobie poradzić.
Aby uzyskać lepsze kody, kody są zaprojektowane przy użyciu dużego alfabetu (zamiast binarnego). A potem kod jest dobry, jeśli może poradzić sobie z dużą liczbą błędnych „symboli”.
Dlaczego nie uważa się za oszukiwanie? Czy nie powinno nas obchodzić tylko to, co się stanie, kiedy „przetłumaczymy” każdy symbol na ciąg binarny? „Szybkość błędu bitowego” różni się od częstości „błędu symbolu”. Na przykład częstość błędów bitowych nie może przekroczyć 1/2, natomiast (jeśli dobrze to rozumiem), przy wystarczająco dużym alfabecie, błąd symbolu może wzrosnąć do . Czy dzieje się tak, ponieważ sztucznie ograniczamy kanał do zmiany tylko „symboli”, a nie bitów, czy może dlatego, że kod jest rzeczywiście lepszy?
Odpowiedzi:
Wiele powszechnie używanych kodów dla danych binarnych jest połączonymi kodami, które składają się z dwóch kodów korygujących błędy. Kod wewnętrzny jest na alfabet binarnej, a kod zewnętrzny jest na alfabet których symbole odpowiadają kodowych kodu wewnętrznego. Pozwala to wykorzystać wyższą moc większych rozmiarów alfabetu do kodowania wiadomości binarnych bez „oszukiwania”.
Standardowa definicja minimalnej odległości jest naturalna do zastosowania przy rozważaniu kodów połączonych, a także w teorii kodów o dużych rozmiarach alfabetu. Byłoby to „oszustwem”, gdybyś użył tych liczb do porównania kodu binarnego z kodem dużej litery, który koduje dane binarne bez użycia kodu wewnętrznego; teoretycy kodowania są na tyle sprytni, aby tego nie robić (i uważam, że odkąd wymyślono skonkatenowane kody, często używano kodów z dużymi alfabetami wraz z kodem wewnętrznym, ale kody z dużymi alfabetami są również bardzo dobre do korygowania błędów w kanałach bursty, takich jak jako płyty CD, ponieważ duża liczba kolejnych błędów bitowych wpłynie tylko na kilka „symboli”).
źródło