Algebraiczne aspekty kodowania i kryptografii Lista zadań nr 3, 5

Transkrypt

Algebraiczne aspekty kodowania i kryptografii Lista zadań nr 3, 5
Algebraiczne aspekty kodowania i kryptografii
Lista zadań nr 3, 5 listopada 2012
Zad. 1. Przyjrzyj się macierzom generującym kody R(1, m) i porównaj je z macierzami kontrolnymi kodów Hamminga. Po obejrzeniu tych macierzy scharakteryzuj
kody R(m − 2, m).
Zad. 2. Spróbuj w bardziej zwykły sposób wyliczyć minimalną odległość słów kodu
R(r, m). W tym celu pokaż, że
1) jeżeli wielomian nie zawiera zmiennej x0 , to wyznacza on zbiór X taki, że
(0, a1 , . . . , am−1 ) ∈ X ⇔ (1, a1 , . . . , am−1 ) ∈ X
i analogiczna własność zachodzi dla pozostałych zmiennych,
2) każdy zbiór X ∈ R(r, m) ma przynajmniej 2m−r elementów. Tę ostatnią własność powinno dać się dowieść przez indukcję ze względu na liczbę zmiennych
występujących w wielomianie definiującym X.
Zad. 3. Weźmy kod R(r, m) i usuńmy z każdego słowa kodowego ostatni znak.
Pokaż, że w ten sposób otrzymujemy kod liniowy. Zbadaj minimalną odległość
słów tego kodu i możliwości korygowania przez niego błędów.
Zad. 4. Pokaż, że 11100001 6∈ R(1, 3). Czy z tego przykładu wynika coś ciekawego?
Zad. 5. Dla kodu R(1, 3) mamy bardzo prosty algorytm korygujący 1 błąd, polegający na przedstawieniu danego słowa w postaci wielomianu i obejrzenia otrzymanego wyrażenia. Podaj algorytm korygujący błąd, działający zgodnie z tą ideą.
Zad. 6. Znajdowanie wielomianu opisującego daną funkcję z punktu widzenia algebry liniowej polega na przedstawieniu w jakiejś bazie wektora danego w innej
(wektor dany w bazie standardowej chcemy przedstawić w bazie złożonej z jednomianów). Zadanie to zwykle rozwiązuje się znajdując macierz przejścia od jednej
bazy do drugiej, a więc macierz M taką, że mając współrzędne ~x wektora w jednej bazie i obliczając iloczyn M~x znajdujemy współrzędne tego wektora w drugiej
bazie. Znajdź macierze przejścia między bazą standardową i bazą złożoną z jednomianów dla przestrzeni Z28 .
Zad. 7. Podaj kilka sposobów kodowania informacji za pomocą kodu R(1, 3), a
więc funkcji liniowych f : Z24 → R(1, 3). Wiemy, że kodowanie za pomocą kodu
liniowego może polegać na dopisywaniu sum kontrolnych. Przedstaw w szczególności w ten sposób kodowanie za pomocą kodu R(1, 3). Spróbuj zrobić to samo dla
bardziej skomplikowanych kodów Reeda - Mullera.
1