Hammingův odhad koule, objem koule perfektní kód perfektní kódy triviální, Hammingův, Golayův váhový polynom výpočet Hammingův kód H 3 Golayův kód G 23 obecně příklad ternární kód
Tvrzení: Dán binární kód C délky n s distancí d = C 2t + 1 Pak pro každé slovo z F n 2 existuje nejvýše jedno x C ve vzdálenosti d x, z t. Definice Definujeme (kombinatorické) koule se středem x a poloměrem t : B x, t = z F 2 n ; d x, z t pro různá x C Kolik slov obsahuje koule B x, t?
Tvrzení: Počet slov ve vzdálenosti t od středu x koule B x, t je právě n t. neuspořádané t-tice souřadnic, ve kterých změníme x Definice: Definujeme objem koule B x, t : t n V n, t = B x, t = i=0 i nezávisí na středu x závisí na délce kódu n
Věta: Pro binární kód o minimální vzdálenosti alespoň 2t + 1 platí: C 2n V n,t množina F 2 n má 2 n prvků, tj. C disjunktních koulí každá koule má objem V n, t Definice: Binární kód je perfektní, pokud pro něj platí rovnost v Hammingově odhadu tj. binární kód má právě C = 2n V n,t slov
Příklady: Triviální perfektní kódy: totální kód F 2 n n, n, 1 -kód» všechna slova délky n nad abecedou F 2 = 0,1 opakovací kód liché délky n, 1, n -kód» všechna slova tvaru xxx x liché délky n jednoprvkový kód x kde x F 2 n
Příklady: Další perfektní kódy: Hammingovy kódy H r s parametry 2 r 1, 2 r r 1,3» V n, t = V 2 r 1,1 = 1 i=0 2 r 1 i» C = 2n = 2n = V n,t 2 r 2n r = 2 2r r 1» tj. dimenze k = 2 r r 1 = 1 + 2 r 1 = 2 r
Příklady: Další perfektní kódy: Golayovy kódy G 23 a G 11» jediný netriviální perfektní binární kód s distancí d 5 G 23 s parametry 23,12,7 G 11 s parametry 11,6,5 Tvrzení: Golayův kód G 23 je perfektní kód 23 0 + 23 1 + 23 2 + 23 3 = 2048 = 223 12
definice: Váhový polynom P C x libovolného kódu C určuje pro každé i = 0,1,, n, kolik kódových slov má váhu i. tj. P C x = x c c C kde c je váha kódového slova koeficient u členu x i určuje počet slov váhy i v kombinatorice váhový polynom P C x označen jako vytvořující funkce lineární kódy platí zajímavý vztah mezi P C x a P C x věta MacWilliamsové» binární kódy (zde) i obecný případ
věta (MacWilliamsová) Pro binární kód délky n platí: P C x = 1 C 1 + x n P C 1 x 1+x pro libovolné a C definujme g a = 1 a b x b b F 2 n» kde a b je skalární součin» b je váha slova b a kde 1 a b x b n = 1 a i b i x b i i=1 tj. g a = 1 a 1 b 1 x b 1 1 a n b n x b n b F 2 n
g a = 1 a 1 b 1 x b 1 1 a n b n x b n b F 2 n g a = 1 a 1x b1 1 a nx b n b F 2 n g a = 1 + 1 a 1x 1 + 1 a nx g a = 1 x a 1 + x n a = 1 + x n 1 x 1+x a tedy a C g a = 1 + x n 1 x P c 1+x slovo b F n 2 je ortogonální na všechna slova a C» tj. a b = 0, pak b C slovo b F 2 n je ortogonální na přesně polovinu slov a C a proto» tj. a b = 1 a tedy a C a b = 0 a + a b = 1» pak b C a členy v součtu g a a C mají opačná znaménka a C g a = a C +1 x b = C P C x b C a
věta (MacWilliamsová) Pro lineární kód nad tělesem F q (q je prvočíslo) platí: P C x = 1 C 1 + q 1 x P C pro libovolné a C 1 x 1+ q 1 x definujme g a = ω a b x b b F q n 2πi» kde ω = e q je komplexní q-tá odmocnina z jedné» b je váha slova b použijeme ω j q 1 j=0 = 0»
Tvrzení: Pokud C je perfektní n, k, d -kód obsahující nulové slovo, potom lze z čísel n a d bezezbytku určit jeho váhový polynom obecný princip viz jednotlivé příklady perfektních kódů
Věta (pro H 3 ): Binární 7,4,3 -kód C obsahující nulové slovo má váhový polynom P C x = 1 + 7x 3 + 7x 4 + x 7 víme, že P C x = 7 i=0 A i x i, kde A 0 = 1, A 1 = A 2 = 0 uvažujme kouli B z, 1 kódového slova z C váhy m slova v kouli mají váhu od m 1 do m + 1 celkem m slov váhy m 1» liší se od slova z nulou místo jedné jedničky, slovo z jich má m tj. B z, 1 obsahuje m 1 7 m slov váhy m 1 m m + 1
uvažujme množinu J všech slov v F 2 n dané váhy j rozklad J tvoří průniky J B z, 1» kde z C je perfektní kód tedy J B z, 1 = j + 1 1 pokud 7 j + 1 z = j + 1 z = j z = j 1 protože J = 7 j dostaneme 7 j = 8 j A j 1 + A j + j + 1 A j+1» kde j = 1,, 6 víme: A 0 = 1, A 1 = A 2 = 0» tj. pro j = 2,, 6 spočteme A 3 = 7, A 4 = 7, A 5 = A 6 = 0, A 7 = 1» např. pro j = 2 spočteme 21 = 7 2 = 6 A 1 + A 2 + 3 A 3
Věta (pro G 23 ): Binární 23,12,7 -kód C obsahující nulové slovo má váhový polynom P C x = 1 + 253x 7 + 506x 8 + 1288x 11 + 1288x 12 + 506x 15 + 253x 16 + x 23 víme, že P C x = 23 i=0 A i x i, kde A 0 = 1, A 1 = = A?? = 0 uvažujme kouli B z, 3 kódového slova z C váhy m slova v kouli mají váhu od m 3 do m + 3 obecně: min j, t m+j 2 B z, t obsahuje q 1 k m n m k=0 j k slov váhy j k» kde slovo z F n q dané váhy m» a m t j m + t
příklad: Ternární 11,6,5 -kód C obsahující nulové slovo Určete váhový polynom P C x víme, že P C x = 11 i=0 A i x i, kde A 0 = 1, A 1 = = A?? = 0 uvažujme kouli B z, 2 kódového slova z C váhy m slova v kouli mají váhu od m 2 do m + 2 obecně: min j, t m+j 2 B z, t obsahuje q 1 k m n m k=0 j k slov váhy j k» kde slovo z F n q dané váhy m» a m t j m + t
Věta (Tietäväinen a van Lint): Netriviální perfektní kód nad libovolným tělesem je buď Golayův kód, nebo má stejné parametry n, k, d jako některý Hammingův kód existují nelineární perfektní kódy s parametry Hammingových kódů např. H r pro r 4