Specialization IB - Question 3 (Coding theory) Flashcards
Co je kodovani, druhy/typy kodovaci teorie
Total function (mapping): z S do T.
druhy:
Noisy coding theory
Noiseless coding theory
Co je kanal (channel)
Kanal je fyzicke medium
Jake typy kanalu
Diskretni
* Discrete Shannon stochastic channel: trojice (∑, Ω, Pr) - ∑=vstupni abeced, Ω=vystupni abeceda, Pr= pravdepodobnostni funkce, ze se element ze vstupni abecedy mapuje na element z vystupni abecedy
* Hamming adversarial (worst-case) noise model
kontuniualni (nepretrzity)
Co je cilem kodovani?
Metody upravy/transformace kodu, aby kod sedel vice ucelu. Napr. pri kompresi chceme kodovat caste znaky do kratsich posloupnosti, chceme detekovat chyby pri prenosu po siti. Zaroven chceme jednoznacnost pri dekodovani atp.
Co je hammingova vzdalenost
Pocet symbolu, ve kterych se dve slova lisi.
Minimalni vzdalenost
Nejmensi Hammingova vzdalenost v kodu C - mezi dvemi slovy kodu C
Error-correction theorem
pro detekci ‘s’ chyb h(C) ≥ s + 1 (proof: s by bylo dalsi slovo v C)
pro opravu ‘t’ chyb h(C) ≥ 2t + 1
Zapis/definice code C, idealni hodnoty
(n, M, d)-code C
n = delka slov v kodu C
M = pocet slov v kodu C
d = minimalni vzdalenost kodu C
ideal = kratke n, velke M, velke d
Code rate of code C- (n, M, d) (rovnice, co to je)
(log_q (M))/n
pomer potrebnych pocet vstupnich symbolu k poslani kodu
Shannon noisless theorem
pro prenos n hodnot informace X potrebujem pouzit: n * S(X) bitu.
napr.
bit 1 = p=1/4
bit 0 = p=3/4
pro 4-bit block -> 3.245 bitu
Entropie
Mira chaosu (nejistoty) - cim nizsi entropie, tim vetsi predvidatelnost (nulova entropie - vime presne, co bude vystupem)
I(x)= -log_2 { P(x) } // Mira informace ve zprave x
S(X) = - sum (𝑃 ( 𝑥_𝑖) · 𝐼(𝑥_𝑖)) // Entropie
Generování skutečně náhodných sekvencí - vlastnosti + jake jsou idealni, dobre, prijatelne zdroje
TRNG (True random generators) - byvaji pomale, maji nedeterministicke chovani= jejich kvalita zalezi na zdroji nahodnosti:
* Idealni zdroj: Pouzije fakt nahodny prvek - radioaktivni rozpad, kosmicka radiace, atmosfericky sum
* Excelentni: HW-based (zabudovany cip), pridavne kart
* Dobry: Mikrofon, kamera, I/O HW, pohyb mysi
* Prijatelny: SW-based (procesy, sitova komunikace)
Generování pseudonáhodných sekvencí
Deterministicky konecny automat:
- ma vnitrni stav
- stav se meni
Ze stavu se deterministicky da zjistit cela posloupnost generovanych dat
Priklad algoritmu pseudonahodnych sekvenci
- LFSR - Linear Feedback Shift Register
- RSA PRNG (slow)
- BBS PRNG (slow)
- ANSI X9.17
- Yarrow
- Fortuna
Jak funguje Linear Feedback Shift Register
Vybere se startovaci stav (nesmi mit same nuly)
Pri vyberu vhodne stavu mame 2^n - 1 kombinaci (pri delce stavu 128+ nemozne zkusit vsechny)
XOR 2 bitu ze dvou vybranych pozicich ve slove, nasledne shift a umisteni vysledku XORu na prvni/posledni pozici (v zavislosti na smeru shiftu)
napr. XOR bitu na poslednich dvou pozicich, shift 1»_space;, novy bit umisten na prvni pozici
1. 1001 (output: 1)
2. 1100 (output: 0)
3. 0110 (output: 1)
…
x-1. 0010 (output: 1)
x<=>1. 1001 (pocatecni stav)