ly, since the memory pointer can move as fast as the message bits are received. Like encoding, but as the reverse operation, retrieving the next symbol in the sequence is not done on a bit-by-bit basis but out of progressive choices according to the prefix patterns. As we have seen, arithmetic coding and decoding need to compute the source's prob- ability distribution, with conditional probabilities of arbitrary order. A possibility is that both encoder and decoder use the same codebook reference, but such a solution is gen- erally not optimal, and also lacks any flexibility. Rather, the system should be adaptable to any source type, for which the characteristics may change over time, including the size and definition of the symbol alphabet (e.g., changing from English-text language to computer datafiles or digital images). The initial encoder and decoder calibration, which provides the source's probability distribution and conditional probabilities, requires some initial computation steps. Let me describe here how such a computation works. From the encoder side, the first process consists of identifying the symbols Xi and their distribution p(xi). The idea is to monitor a sufficient number of "symbol events," in order to convert the raw frequency histogram into an actual PDF. Because the encoder introduces the extra termination symbol c, which is not part of the message source, the corresponding probability p(c) must be fixed to some arbitrary value, for instance, p(c) = 0.1. The first incoming symbol identified, say X1, is assigned the initial probability p(x1) = 0.9 (which satisfies p(x1)+p(c)=1). If the second incoming symbol is different, say X2, the prob- ability distribution becomes p(x1) = p(x2) = 0.45. This calibration process continues until a full distribution p(xi) is obtained, with = 1 and C = Xn. As for the conditional probabilities, p(ak = ak-1), they can be assigned according to the Laplace or the Dirichlet models. To explain the Laplace model, consider two events, x and y. Let Fx be the number of