Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december B1118 Diskret matematik Elfte föreläsningen Felrättande koder
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Felrättande koder 4 När information skall överföras genom en brusig kanal behövs felrättande koder. – Vad är information? – Vad är en brusig kanal?
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Informationsteori 4 Shannon definierade en matematisk teori för information En informationskälla har en viss entropi – informationsinneh ₢ ll – som räknas i bitar. 4 Det finns ocks ₢ redundans – överflödig information.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Tal 4 Det talade spr ₢ ket har mycket stor redundans. 4 Ett telefonmeddelande p ₢ en minut svarar mot över bitar.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Skrift 4 Det talade spr ₢ ket kodas med en skriftlig kod. 4 Vi har ett alfabet drygt 30 tecken. 4 Ett skrivet telefonmeddelande p ₢ en minut är ca 1000 bokstäver, dvs ca 5000 bitar.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Brus 4 När vi överför information finns nästan alltid brus. 4 Matematiskt kan vi se brus som en slumpmässig informationskälla. 4 Ju större entropi bruset har desto mer stört blir meddelandet.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Originaltext 4 Det är förbjudet för stora killar att skriva dagbok. Det är bara tjejer som gör det. De har dagböcker som är skära med röda hjärtan. Min dagbok är bl ₢. För säkerhets skull har jag ritat en läskig dödskalle p ₢ framsidan.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december % brus 4 Det är fö}bjvdet för swora killar'atK skriva dagbok. Det/är baraKjejemsom gr det. De har dagböcker/som är skära med röda hjärtam. Min dagboT är bm ₢. Fö? säkerhets skull har jag ritaten läskig dödskalle p ₢ framsidan.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december % brus 4 Ket är y₫?bjudet för stora killar att sk?iva dagbok.!Det är bara?tjejer so? g₫r det. Df har!dafböcker som ä?ßsk₤ra bed röda hjärtan. Mii d~gbok äM bl?. För päkeroets skulm har jag?i?at en läskg döeskallep ₢ framsidan.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december % brus 4 Dzt äs frjudeK ?össtosa knllar ` t shrivn dagbhk. De{ ?r_cara_tjejer shm hör get. De Wbr#?agböckeq!lom ₧r skä}a ?ed röda?ijäruao.!Min#dadbhk ₢ r ]l ₢ / För s₧ke?wets s?ulc_ha? ag r?tat'Zm lskig dö[sk~sld p ₢ 'framsigan.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Koder 4 En kod behövs för att information skall kunna överföras. 4 V ₢ rt talade spr ₢ k är en kod. 4 V ₢ rt skrivna sp ₢ k är en annan kod.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Binära koder 4 En binär kod best ₢ r av en mängd med binära kodord. 4 Ett binärt kodord är en ändlig följd av ettor och nollor. 4 Ex. C={000,011,110,101} är en kod som best ₢ r av alla kodord av längd 3 med jämn paritet.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Att upptäcka fel 4 En kod C kan upptäcka e fel om – det g ₢ r att se att ett mottaget ord inte är ett kodord om minst en men högst e bitar ändrats. 4 Ex. Koden C={000,011,110,101} upptäcker ett fel.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Att rätta fel 4 En kod C kan rätta e fel om – det g ₢ r att se vilket kodord som skickats om högst e bitar ändrats. 4 Ex. Koden C={000,111} rättar ett fel.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Avst ₢ nd mellan ord 4 Vi kan mäta avst ₢ nd mellan binära ord genom – (a,b)=antal bitar som skiljer a fr ₢ n b. Ex. ( , )=2. – Ett ord a har vikt w(a)=n om (a,0)=n, dvs om a inneh ₢ ller n ettor.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Minimalt avst ₢ nd Det minimala avst ₢ ndet, C, i en kod C är det minsta avst ₢ ndet mellan tv ₢ olika kodord, dvs – C =min { (a,b) | a,b C och a b}
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Villkor för att upptäcka e fel Sats. En kod C upptäcker e fel om och endast om C e+1. – Bevis: Om vi ändrar högst e bitar kan vi inte komma till ett annat kodord. 4 Ex. {00...0, } som best ₢ r av tv ₢ kodord av längd n upptäcker n-1 fel.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Villkor för att rätta e fel Sats. En kod C rättar e fel om och endast om C 2e+1. – Bevis: Om vi ändrar högst e bitar i tv ₢ olika kodord kan vi inte komma till samma ord. 4 Ex. {00...0, } som best ₢ r av tv ₢ kodord av längd 2n+1 rättar n fel.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Sfärpackningssatsen 4 Sats. Om en kod C av längd n rättar e fel m ₢ ste gälla att
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Linjära koder 4 För att lättare kunna analysera och använda koder är det bra om de har ytterligare struktur. 4 En linjär kod är en binär kod som är sluten under addition modulo tv ₢, dvs a C och b C medför att a+b C.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Minimalt avst ₢ nd i linjära koder Det minimala avst ₢ ndet, C, är lättare att bestämma i en linjär kod eftersom (a,b) = (a+b,0) vilket ger – C = min { (a,0) | a C och a 0} = min {w(a) | a C och a 0}
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Dimension av en linjär kod 4 En linjär kod inneh ₢ ller 2 k kodord för n ₢ got heltal k. 4 Detta heltal kallas kodens dimension. 4 Ex. Koden C={000,110,101,011} är linjär och har dimension tv ₢.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Paritetskontroll 4 Det enklaste sättet att f ₢ en kod av längd n som upptäcker ett fel är genom en paritetskontroll. 4 Koden ges d ₢ av alla kodord av längd n med jämn paritet, dvs ett jämnt antal ettor.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Enkel paritetskontroll 4 En paritetskontroll av ordet (x 1 x 2...x n ) kan skrivas som x 1 +x x n 0 (mod 2) eller som x 1 +x x n =0 om vi utg ₢ r fr ₢ n att vi räknar i Z 2.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Andra paritetskontroller 4 Om i 1,i 2,...,i k är ett antal positioner kan vi göra en paritetskontroll av ordet (x 1 x 2...x n ) genom
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Linjära ekvationer 4 En s ₢ dan paritetskontroll kan skrivas som en linjär ekvation där a 1,a 2,...,a n är element i Z 2. 4 Vi kan använda flera paritetskontroller samtidigt, och därmed flera linjära ekvationer.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Paritetskontrollmatriser 4 För att h ₢ lla reda p ₢ flera linjära ekvationer samtidigt bildar vi en matris
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Matrismultiplikation 4 Vi skriver Hx=0 i stället för
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Att rätta fel i linjär kod 4 Om vi f ₢ r meddelandet x' i stället för x där x' =x+e, f ₢ r vi – Hx'=Hx + He = 0 + He 4 Om e bara inneh ₢ ller en etta kommer He att vara lika med en kolonn i H. 4 Ex.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Villkor p ₢ paritetskontrollmatris 4 Sats. För en linjär kod C med paritets- kontrollmatris H gäller att – C upptäcker ett fel om ingen kolonn i H är noll. – C rättar ett fel om alla kolonner i H dessutom är olika.
Institutionen för matematik, KTH Mats Boij 5B1118 Diskret matematik 4 december 2001 Hammingkoder 4 Om vi l ₢ ter H best ₢ av alla kolonner av längd k som inte är helt noll f ₢ r vi en Hammingkod av längd 2 k -1. – En Hammingkod är en perfekt kod, dvs olikheten i sfärpackningssatsen är en likhet.