written 8.4 years ago by |
- In some applications we do not want coding technique based on the content of file rather we would like the technique to “adapt” to the characteristics of the source.
Developed by Jacob Zio and Abraham Lempell. Hence known as LZ techniques
1) LZ 77 Approach
2) LZ 78 Approach
$e.g \ sequence = { a_1 \ a_1 \ a_2 \ a_1 \ a_3 }$
iv. Solution:
Step 1: Initialization (n=0)
Char X | Probability P (x) | CDF F(x) |
---|---|---|
$a_1$ | 0.6 | 0.6 |
$a_2$ | 0.2 | 0.8 |
$a_3$ | 0.2 | 1 |
$L (0) =0$
$U (0) = 1$
Step 2: $1^{st}$ Symbol in sequence = $a_1$ = X (n=1)
$L (1) = L (0) + [U (0) – L (0)] F (0) = 0 + [1-0] [0] =0$
$U (1) = L (0) + [U (0) – L (0)] F (a_1) = 0 + [1-0] [0.6] =0.6$
$[0, 0.6]$
Step 3: $2^{nd}$ Symbol in sequence = $a_1$ = X (n=2)
$L (2) = L (1) + [U (1) - L (1)] F (a) = 0 + [0.6-0] [0] =0$
$U (2) = L(1) + [U (1) –L (1)] F (a_1) =0 + [0.6-0] [0.6] =0.36$
$[0, 0.36]$
Step 4: $3^{rd}$ Symbol in sequence = $a_2$=X (n=3)
$L (3) = L (2) + [U (2) -L(2)] F (a_1) = 0 +[ 0.36 -0] 0.6 =0.216$
$U (3) = L (3) + [U (2)- L (2)] F (a_2) = 0+ [0.36 -0] 0.8 = 0.288$
$[0.216 , 0.288]$
Step 5: $4^{th}$ Symbol = $a_1$ = X (n=4)
$L (4) = L(3) + [ U(3) - L(3)] F (0) = 0.216$
$U (4) = L(3) + [U (3) - L(3)] F (a_1) = 0.216 + [0.288-0.216] 0.6 =0.2592$
$[0.216 , 0.2592]$
Step 6: $5^{th}$ Symbol = $a_3$ =X (n=5)
$L(5) = L(4) + [ U (4) – L(4)] F (2) = 0.25056$
$U (5) = L (4) + [U (4) – L(4)] F (a_2) = 0.2592$
Step 7: Tag Generation
Tag = = 0.25488
v. Tag ( Fractional decimal number) represents given input of S symbols.
vi. If number of symbols increases in a sequence then it will just affect to resolution of tag but same tag can be represented in fixed number of bits.
vii. Disadvantage:
- The coded tag is sensitive to position symbol in sequence. If position of symbol changes it will result different value of tag.
- Tag cannot be generated / insert sequence.