Suppose that our actual source is memoryless with a, to us unknown,
parameter
.
Is it possible now to design a code which has acceptable individual
redundancies for all sequences
relative to all possible sources?
The answer to this question turns out to be affirmative.
Just apply arithmetic coding with a coding distribution equal to an
estimated distribution
formulated by Krichevsky and
Trofimov[2].
This KT-distribution is defined by the following conditional probability:
for
containing a zeroes and b ones.
Our estimated block probability
is the product of
conditional probabilities as in (9).
Example:
Figure 1: Computation of
and
.
The estimated probability
.
Similarly
(see figure
1).
The estimated block probability of a sequence containing a zeroes and b ones is
Example:Tabulated below is
for several (a,b).
What is the redundancy of this KT-estimated distribution?
Consider a sequence
with a zeroes and b ones, then
from (8) we may conclude that
Therefore
where we used lemma 1 of [7] to upper bound the
-term.
This term, called the parameter redundancy, is never larger than
.
Hence the individual redundancy is not larger than
for all
and all
.
Example:Let T=1024, then the codeword length is not larger than
the ideal codeword length plus
bit.