Você está na página 1de 23

INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica

SEGURANA DE DADOS Faculdade de Tecnologia


Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

2. CONCEITO E MEDIDA DA INFORMAO

2.1 Introduo

O problema da codificao trata de formas eficientes de representao da informao, quer


almejando economia de smbolos utilizados, ou o tempo requerido para sua transmisso, ou a pro-
teo contra erros, ou ainda a proteo da prpria informao. Em todas estas situaes, a eficincia
somente ser possvel se tivermos um bom conhecimento das caractersticas da informao original
que se quer codificar. Assim, torna-se importante, primeiro, o prprio conceito de informao e sua
quantificao, assim como a construo de modelos matemticos que nos permitam representar
adequadamente o ambiente das informaes, ou, como diramos aqui, uma linguagem. Para
nossos propsitos, consideramos que o leitor tem conhecimentos bsicos prvios da teoria de
probabilidades.

2.2 Quantidade de Informao

A noo intuitiva e comum do que seja informao corriqueiramente confunde o contedo


de uma mensagem com a prpria mensagem. Matematicamente, parece ter sido Hartley1 o primeiro
a se preocupar com a quantificao da medida da informao, tendo cabido a Shannon2, em 1948,
o estabelecimento das bases tericas como hoje conhecemos. A fundamentao da medida da
informao se baseia na probabilidade de ocorrncia de determinado evento (no caso, uma
mensagem, texto), e pode ser entendida pelo que segue.
Suponha E1 e E2 dois eventos com probabilidades de ocorrncia dadas por p1 e p2,
respectivamente. Ento, de se esperar que a quantidade de informao obtida pelo conhecimento
da ocorrncia de ambos os eventos possa se relacionar ao conhecimento individual da ocorrncia de
cada evento na forma
Eq. 2.1 I(E1,E2) = I(E1) + I(E2),
onde est suposto que a ocorrncia de E1 e E2 so independentes.
Assim, formalmente define-se

1
Hartley, R.V.L., "Transmission of Information", Bell Syst. Tech. Journal, 7, 535-63, 1928.
2
Shannon, C.E., "A Mathematical Theory of Communication", Bell Syst. Tech. Journal, 27, 379-423 e 623-56, 1948.
2.1
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

Eq. 2.2 I(E) = -log2 p(E)


como a medida da informao resultante da ocorrncia de um determinado evento E, com
probabilidade positiva p(E) de ocorrer, de modo que esta medida seja no-nula e contnua em p, o
que so suposies naturais. Esta definio est de acordo com a noo intuitiva que temos, pois, se
determinado evento ocorre com probabilidade 1, sua ocorrncia no traz nenhuma informao. Por
exemplo, dizermos que o sol nascer amanh' no traz "nenhuma novidade", visto que o sol nasce
todos os dias. Agora, se um evento ocorre com probabilidade 0,5, como o lanar de uma moeda
normal, e observamos a ocorrncia de cara (ou coroa), teremos que a quantidade de informao
fornecida pela ocorrncia do evento ser I(E = cara) = -log2(0,5) = 1. A escolha da base 2 para o
logaritmo foi completamente arbitrria, porm se justifica pelo fato de assim obtermos uma
unidade de informao que medida em bits, correspondendo quantidade de informao obtida
de um sistema binrio (dois eventos possveis) equiprovvel.

Exemplo 2.1:
Considere uma fonte binria que emite 0's e 1's de forma independente e equiprovveis. Ento, a quantidade de
informao obtida pelo conhecimento de que os primeiros n dgitos gerados formam uma seqncia alternada de
0's e 1's ser dada por
1
I(Sn) = -log2 = n bits,
2n

que, por sinal, a mesma quantidade de informao contida em qualquer outra sequncia de n dgitos binrios
gerados por fonte semelhante. Dizemos portanto, apropriadamente, que este evento contem n-bits de informao.

2.3 Entropia

Dada uma varivel aleatria X, a qual pode assumir um nmero finito de valores possveis
xi, 1 i n, com probabilidades pi associadas a cada um destes valores, e Spi = 1, denomina-se de
entropia, representada por H(X), a esperana matemtica para a quantidade de informao contida
em um evento possvel qualquer, ou seja, a informao mdia contida neste espao probabilstico.
Para melhor entendimento, considere as seguintes proposies:
a) Um campeonato entre trs equipes menos incerto que um entre seis equipes, se as equipes
so equivalentes;
b) O resultado da rodada de uma roleta mais incerto que o lanamento de um dado;
c) O resultado da rodada de um roleta equilibrada mais incerto que o de uma roleta "viciada",
onde ocorra vermelho com 80% de probabilidade e preto com apenas 20% de chances.
Como uma medida da incerteza que temos a respeito do resultado de determinado experi-

2.2
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

mento, devemos esperar que a entropia seja uma funo apenas da distribuio de probabilidades
para o experimento X, p1,p2,...,pn, e assim sendo, representada por H(p1,p2,...,pn). Para entender-
mos este aspecto, suponha duas variveis aleatrias distintas X e Y que podem assumir dois valores
distintos cada, X = {0,1} e Y = {100,200}. Considere tambm que p(X = 0} = p(Y = 100} = p e p(X
= 1} = p(Y = 200} = 1-p. Assim, as incertezas acerca de X e Y devem ser iguais, embora estas
variveis assumam valores completamente distintos.
As seguintes propriedades podem ser estabelecidas para a funo entropia, com base neste
conhecimento intuitivo:
1
P1) H(p1,p2,...,pn) mxima quando p1 = p2 =... = pn =
n
P2) Para qualquer permutao p de {1,2,...,n},
H(p1,p2,...,pn) = H(pp(1),pp(2),...,pp(n)),
P3) H(p1,p2,...,pn) 0, sendo zero sse pi = 1 para algum i;
P4) H(p1,p2,...,pn,0) = H(p1,p2,...,pn);

1 1 1 1 1 1
P5) H , ,..., H , ,..., ;
n n n n +1 n +1 n + 1
P6) H(p1,p2,...,pn) deve ser funo contnua dos argumentos, ou seja, uma pequena
variao em um dos argumentos no deve alterar significativamente o valor de H;
1 1 1 1 1 1 1 1 1
P7) H , ,..., = H , ,..., + H , ,..., ;
mn mn mn m m m n n n
P8) Seja p = p1 + p2 +...+ pm e q = q1 + q2 +...+ qn, onde pi,qj 0 e p+q = 1. Ento

p p p q q q
H(p1,p2,...,pn,q1,q2,...,qm) = H(p,q) + p H 1 , 2 ,..., m + q H 1 , 2 ,..., n .
p p p q q q

A propriedade (P1) nos diz que a entropia mxima quando os eventos considerados so
equiprovveis. J (P2) nos garante que o importante a distribuio de probabilidades, no
importando a ordem em que os eventos so considerados. Em (P3) estabelece-se que a incerteza
eminentemente positiva, sendo nula apenas se no houver aleatoriedade presente. A caracterstica
apresentada em (P4) assegura que apenas os eventos com probabilidade no-nula so significativos,
por exemplo, a incerteza em um dado normal de seis faces a mesma de um dado de 'sete faces', no
qual a stima face nunca ocorre. (P5) estabelece que, entre espaos probabilsticos equiprovveis,
ter maior entropia, ou ser mais incerto, aquele que contiver o maior nmero de eventos possveis
de ocorrer. A condio de linearidade da entropia estabelecida por (P7), indicando que, por

2.3
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

exemplo, a incerteza no lanamento de dois dados deve ser a mesma que a soma das incertezas no
lanamento de cada dado, separadamente. Por ltimo, e no to bvia quanto as demais, a condio
(P8) indica que a incerteza pode ser distribuda entre sub-espaos, como, por exemplo, se
considerarmos uma corrida entre m carros brancos e n carros pretos, com pi a probabilidade de
ganhar o i-simo carro branco e qj a probabilidade de ganhar o j-simo carro preto, ento a incerteza
global ser a incerteza de ganhar um carro branco ou preto, mais a soma ponderada das incertezas
dentro de cada grupo individualmente.
Formalmente definimos a entropia de uma varivel aleatria X, que pode assumir um
nmero finito de valores, com probabilidades p1,p2,...,pn, como

Eq. 2.3 H (X) = - p i log 2 p i , 1 i n,


i

funo esta que satisfaz a todos os requisitos estabelecidos pelas propriedades P1 a P8. Na
realidade, esta a nica funo satisfazendo todos estes postulados, aparte a base do logaritmo, que
poderia ser qualquer outra, e foi escolhida por convenincia, e, eventualmente, uma constante multi
plicativa. Ser sempre assumido, por problemas de continuidade, que o somatrio expresso pela
equao 1.3 calculado apenas para os valores pi estritamente positivos, ou seja, pi > 0. Podemos
ter as seguintes interpretaes para a entropia H(X):

nossa incerteza sobre X;


a quantidade de informao mdia esperada de um evento de X;
o nmero mdio de bits que se espera necessrio para descrever um evento de X.

Exemplo 2.2:
Considere o experimento de lanamento de uma moeda. Supo-nha
que tenhamos P(cara ) = p e P(coroa ) = 1-p, 0 p 1, para as
probabilidades dos resultados possveis. Usualmente, em uma
situao como esta, onde temos apenas dois eventos poss-veis,
representa-se a entropia simplesmente por h(p), ao invs de
H(p,1-p). Assim, segue-se que h(p) = -[p.log2(p) + (1-p).log2(1-
p)] e, por definio, assume-se que h(0) = h(1) = 0, de modo que
h(p) seja contnua no intervalo fechado [0,1]. Se variarmos p de 0
a 1, podemos traar um grfico da funo h(p), como mostrado na
figura 2.1 a seguir, onde claramente se observa o mximo da
funo quando os eventos so equiprovveis.

Exemplo 2.3
Considere a funo entropia para trs eventos possveis, com probabilidades associadas p1, p2 e p3. Ento,
podemos traar um grfico, tridimensional, para H(p1, p2, p3), fazendo-se p1 variar de 0 a 1, p2 de 0 a (1 -p1), e
p3, que no independente, neste caso, assumindo o valor 1 - (p1 + p2). Obtemos ento

2.4
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

figura 2.2: Funo H(p1, p2, p3).


cujo mximo ocorre para p1 = p2 = p3 = 0,333..., sendo este Hmax = log23 = 1,584962501.

2.4 Propriedades da Entropia

2.4.1 Limite Superior da Entropia:

Teorema 2.1
Para qualquer inteiro positivo n e distribuio de probabilidade P = (p1,p2,...,pn),

Eq. 2.4 H(p1,p2,...,pn) log2(n)

prevalecendo a igualdade se e somente se pi = (1/n).

Prova: A funo logartmica uma funo convexa, tal que


loge(x) (x-1),
prevalecendo a igualdade se e somente se x = 1. Assim, para qualquer outra distribuio de
probabilidade Q = (q1,q2,..., qn), podemos escrever
log e ( q i p i ) ( q i p i ) - 1 , e

q q i - p i 
pi
i log e i
pi
p i
i
pi
= q - p
i
i
i
i = 0 , ou

Eq. 2.5 p
i
i log e (q i ) p i
i log e (p i ) ,

e, fazendo qi = (1/n) e considerando que log2x = log2e.logex, ento,

1
p
i
i log 2
n p i
i log 2 p i

1
log 2
n p log
i
i 2 pi

2.5
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

- p i log 2 p i log 2 n
i

C.Q.D.

2.4.2 Entropia Conjunta:

Seja X um vetor aleatrio, digamos, X = [A,B], onde A e B so variveis aleatrias


assumindo um nmero finito de valores possveis, ai e bj respectivamente. Ento, a entropia
para o vetor X pode ser escrita como
Eq. 2.6 H(X) = H(A, B) = - p(A = a i , B = b j ) log 2 p(A = a i , B = b j )
i, j

a qual, aqui, denominada entropia conjunta de A e B. Generalizando, se X um vetor


aleatrio [X1,X2,...,Xm], ento podemos escrever

Eq. 2.7 H(X) = H(X1,X2,...,Xm) = - p(x1 , x 2 ,..., x m ) log 2 p(x1 , x 2 ,..., x m )

onde p(x1,x2,...,xm) = P((X1=x1,X2=x2,...,Xm=xm).

Teorema 2.2
Se X e Y so duas variveis aleatrias que assumem um nmero finito de valores, ento
Eq. 2.8 H(X,Y) H(X) + H(Y)
com a igualdade prevalecendo se e somente se X e Y forem independentes.

Prova: suponha que pi = P(X = xi), 1 i n; qj = P(Y = yj), 1 j m; rij = P(X = xi,Y = yj),
1 i n, 1 j m.. Ento,


H(X) + H(Y) = - p i log 2 p i + q j log 2 q j


i j


= - rij log 2 p i + rij log 2 q j

i j i j

tendo em vista que p i = rij e q j = rij . Assim, usando Eq. 2.5,


j i

H(X) + H(Y) = - rij log 2 (p i q j ) - rij log 2 rij = H(X, Y) ,


ij ij

e a igualdade somente prevalecer quando pi qj = rij, que exatamente a condio de


independncia entre X e Y.
C.Q.D.

2.6
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

2.4.3 Entropia Condicional

Considere X e Y duas variveis aleatrias que podem assumir um nmero finito de valores. A
incerteza acerca de X dado que Y = y pode ser definida, naturalmente, como
Eq. 2.9 H( X / Y = y ) = - p( X = x i / Y = y ) log 2 p( X = x i / Y = y )
i

A Eq. 2.9 pode ser interpretada como a quantidade de informao esperada de um evento em
X, dado que a ocorrncia de y em Y j conhecida. A entropia condicional H(X/Y), ou
equivocao de X em relao a Y, ser o valor mdio esperado, ponderado para todas as
possveis ocorrncias de Y, e, assim, escrevemos,
Eq. 2.10 H(X / Y) = H(X / Y = y j )p(Y = y j )
j

= - p(x i , y j ) log 2 p(x i / y j )


i, j

representando a incerteza que ainda temos em relao a X, dado a conhecer o valor de Y,


onde se fez uso de que p(x i , y j ) = p(y j ) .
i
Teorema 2.3
Eq. 2.11 H(X,Y) = H(Y) + H(X/Y) = H(X) + H(Y/X)

Prova: Dado que p(xi,yj) = p(yj)p(xi/yj), ento

H(X,Y) = - p(x i , y j ) log 2 p(x i , y j )


i j

= - p(x i , y j ) log 2 [p(y j )p(x i / y j )]


i j

= - p(x i , y j ) log 2 p(x i / y j ) - p(x i , y j ) log 2 p( y j )


i j i j

= H(X/Y) + H(Y)

A segunda parte da proposio provada por simetria.


C.Q.D.

Da Eq. 2.11 podemos portanto imediatamente escrever:


Eq. 2.12 H(X/Y) = H(X,Y) - H(Y)
e H(Y/X) = H(X,Y) - H(X),

o que se verifica ser um resultado natural, quando interpretamos que a equivocao de X (Y)
em relao a Y (X) igual incerteza total do espao conjunto (X,Y), do qual retirada a

2.7
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

incerteza em relao a Y (X).

Corolrio 2.4
Se X e Y so duas variveis aleatrias independentes, ento:
i) H(X/Y) = H(X);
ii) H(Y/X) = H(Y).
Prova: Repita a prova do teorema 2.3, considerando p(xi,yj) = p(xi).p(yj), ou ainda faa uso
de que H(X,Y) = H(X) + H(Y), neste caso.

2.4.4 Informao Mtua


A quantidade de informao que a ocorrncia de um evento Y = y fornece a respeito da
ocorrncia de um evento X = x dada por
Eq. 2.13 I(x;y) = I(x) - I(x/y) = -log2p(x) - [-log2p(x/y)]
p(x) p(x).p(y) p(y)
= -log 2 = - log2 = - log 2 = I(y;x)
p(x / y) p(x, y) p(y / x)

Temos portanto que a quantidade de informao que y fornece a respeito de x exatamente a


mesma que x fornece a respeito de y.
O valor esperado para I(x;y), ou I(y;x), denominado informao mtua de X e Y, e se
escreve

I(X;Y) = p(x i , y j ) I(xi ; y j )


i, j

p(x i )p(y j )
= - p(x i , y j ) log 2
i, j
p(x i , y j )

p(x i )
= - p(x i , y j ) log 2
i, j
p(x i / y j )

p(y j )
= - p(x i , y j ) log 2 = I(Y;X)
i, j
p(y j / x i )

Teorema 2.4
Dadas duas variveis aleatrias X e Y, podemos escrever que a informao mtua ligando as duas
variveis ser dada por:

I(X;Y) = H(X) + H(Y) - H(X,Y)


Eq. 2.14 = H(X) - H(X/Y)
= H(Y) - H(Y/X)

2.8
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

Prova: deixamos a cargo do leitor.

2.5 Modelos de Linguagens e Fontes de Texto

Codificao um processo aplicado a um texto escrito em determinada linguagem,


resultando em um texto em outra linguagem. Confiando em nossa noo intuitiva do que seja uma
linguagem, temos, como exemplos de linguagens, o Portugus, Ingls, Linguagens de Programao
de Computador (PASCAL, C, ASSEMBLY, etc.), etc.
As regras de uma linguagem, ou gramtica, definem como utilizamos os smbolos
disponveis nesta linguagem para a construo de textos. Os smbolos elementares de uma
linguagem so geralmente chamados de letras ou caracteres, e o conjunto de todos os caracteres
possveis de ocorrer em dada linguagem constituem o alfabeto para a referida linguagem. As
linguagens, de uma forma geral, e em particular as linguagens naturais, como o Portugus ou Ingls,
tm uma estrutura muito complexa, o que torna impraticvel uma representao matemtica exata
dessas linguagens. Entretanto, atravs de um modelo estatstico da linguagem, podemos obter
modelos bastante prximos da realidade, dependendo da complexidade que se considere aceitvel
para o modelo e a exatido com que se deseja representar a linguagem. Para tanto, o modelo que
adotaremos ser o de um "Gerador, ou Fonte de Textos" sobre o alfabeto da linguagem que se
quer representar.

2.5.1 Alfabetos

Um alfabeto um conjunto de smbolos, finito, utilizado em determinada linguagem para a


construo de textos. Como exemplos de alfabetos podemos listar:
Conjunto das Letras Maisculas:
A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z
Conjunto das Letras Maisculas e Numerais:
A,B,C,D,E,...,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9
Conjunto das Letras Maisculas, Minsculas e Numerais:
A,B,C,...,X,Y,Z,a,b,c,...,x,y,z,0,1,2,3,4,5,6,7,8,9
Maisculas, Minsculas, Numerais, Espao e Pontuao:
A,B,C,...,Z,a,b,c,...,z,0,1,2,...,9,.,,,;,:, ,!,?
Conjunto das 256 seqncias binrias distintas de 8-bits:
00000000,00000001,00000010, ... ,11111111

2.9
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

Palavras da 2a Edio do Dicionrio Aurlio:


a,aarnico,aaru, ... ,julgador, ... ,zwingliano

Uma seqncia de n-letras sobre um dado alfabeto dita ser um n-grama sobre este alfabeto.
A partir de um dado alfabeto ns podemos gerar um novo alfabeto pela construo de n-
gramas sobre o alfabeto original, obtendo um alfabeto extenso. Seja
A = {a0,a1, ... ,am-1}
onde |A| = m a cardinalidade de A, ou seja, o nmero de elementos contidos no conjunto,
sendo A portanto um alfabeto de m letras. Podemos ento gerar o alfabeto A2 contendo m2 2-
gramas (di-gramas) de A, ou seja,
A2 = {a0a0,a0a1, ... ,am-1am-1}
e o alfabeto A3 contendo m3 3-gramas (tri-gramas) de A, ou seja,
A3 = .{a0a0a0,a0a0a1, ... ,am-1am-1am-1}
Generalizando, concatenando-se n letras de A, ai0ai1...ai(n-1), 1 i < m, obtemos o alfabeto An

contendo mn n-gramas de A, ou letras de An. Assim, o alfabeto


A = {A,B,C, ... ,Z}
gera o alfabeto
A2 = {AA,AB,AC, ... ,ZZ}
contendo 676 letras (ou di-gramas de A), e
A3 = {AAA,AAB,AAC, ... ,ZZX,ZZY,ZZZ}
contendo 17.576 letras (ou tri-gramas de A).
Uma palavra da lngua portuguesa como JULGADOR admite portanto diversas interpre-
taes: um 8-grama composto de letras do alfabeto A = {A,B,C, ... ,Z}
/J/U/L/G/A/D/O/R/
ou um 4-grama composto de letras do alfabeto A2:
/JU/LG/AD/OR/
ou um 2-grama composto de letras de A4:
/JULG/ADOR/
ou ainda um 1-grama, ou uma letra, do alfabeto 'Palavras contidas no Aurlio'. O smbolo '/'
foi empregado aqui como separador de letras.
Muitas vezes de interesse associarmos um alfabeto de m-letras ao conjunto dos inteiros
mdulo-m, Zm, de forma a tornar a manipulao algbrica mais simples. Desta forma, um

2.10
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

alfabeto A = { a0,a1,a2, ... ,am-1} teria suas letras associadas aos inteiros mdulo-m, na forma
a i i, i = 0,1,2,...,m-1
e portanto, sendo |A| = m, podemos representar A por Zm. Por exemplo, podemos substituir o
alfabeto A = {A,B,C, ... ,Z} pelo alfabeto Z26 = {0,1,2, ... ,25} atravs de uma
correspondncia trivial. O conjunto de todos os n-gramas de Zm ser ento denotado por Zmn.
Observe-se que Zmn pode ser entendido como um novo alfabeto de mn letras. No que se segue,
usaremos ambas as representaes para um alfabeto, conforme indique a convenincia e no
haja possibilidade de interpretao incorreta.

2.5.2 Textos

Um texto, ou mensagem, sobre um alfabeto Zm , por definio, um n-grama em Zm, para

algum inteiro n = 1,2,... . Considerando-se Z m* como a unio de todas as extenses de Zm,


*
Eq. 2.15 Zm = U Z mn
n0

podemos dizer que uma linguagem um subconjunto de Zm*. Genericamente, ento, um texto
sobre Zm pode ser visto como
Eq. 2.16 M = (x0,x1,x2, ... ,xn-1), xi Zm, 0 i < n.
Como exemplos de textos podemos ter:
Tabela 2.1: Relao alfabeto/texto.

Alfabeto Texto
{A,B,C, ... ,Z} /E/X/E/M/P/L/O/D/E/T/E/X/T/O/
{AA,AB,AC, ... ,ZZ} /EX/EM/PL/OD/ET/EX/TO/
{A,...,Z,a,...Z, } /E/x/e/m/p/l/o/ /d/e/ /T/e/x/t/o/
{0,1} /0/1/0/1/1/0/1/1/1/0/0/1/0/0/0/1/
{Palavras do Aurlio} /exemplo/de/texto/

2.5.3 Fontes de Texto

Consideramos como uma fonte de texto, ou gerador de texto, S, como um modelo matemtico
capaz de reproduzir, o mais fielmente possvel, textos aceitveis como pertencentes a uma
determinada linguagem, ou seja, que estejam de acordo com as regras desta linguagem.
Definimos ento uma fonte finita (infinita) de texto S em Zm como um processo estocstico,
uma seqncia finita (infinita) de variveis aleatrias:
S: (Xj0,Xj1,Xj2, ... ,Xj(n-1)), j = 0,1,2,... e n = 1,2,...

2.11
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

A fonte S especificada atravs de um conjunto de probabilidades


P{(Xj0=x0,Xj1=x1,Xj2=x2, ... ,Xj(n-1)=x(n-1))}

para cada n-grama possvel


X = (x0,x1,x2, ... ,xn-1), n = 1,2,3,...
xi Zm, 0 i < n.

Para o caso em que j = 0, podemos escrever, simplificadamente,


P{(x0,x1,x2, ... ,xn-1)}
como a distribuio de probabilidades a ser especificada. Claramente estas probabilidades
devem satisfazer as seguintes relaes bsicas:
i) P(x 0, x1,..., x n-1) 0;

ii) P(x 0 , x1 , ..., x n -1 ) = 1;


(x 0 x 1
, ,..., x n-1 , )

iii) P(x 0, x 1,..., x n-1) = P(x 0 , x1 ,..., xs -1 ) , se s > n.


(x n , x n +1 ,..., x s -1 ,)

Esta ltima condio conhecida como a "Condio de Consistncia de Kolmogorov", a qual


conecta a probabilidade atribuda por uma fonte S a um conjunto de s-gramas, os quais tm
um dado n-grama como prefixo, probabilidade atribuda pela mesma fonte ao dado prefixo.
Por exemplo, a probabilidade do 4-grama LOGO sobre Z26 deve ser igual soma das
probabilidades atribudas ao conjunto de 263 7-gramas LOGOMMM, que tm o prefixo LOGO,
e onde 'M' representa um caractere qualquer sobre Z26.
O modelamento da gerao de textos em uma linguagem atravs de um modelo estocstico
apenas uma aproximao para a linguagem. No entanto, um modelo probabilstico evita a
necessidade de se ter que especificar o conjunto completo de todos os n-gramas admissveis
pela linguagem. O modelo deve ser simples o suficiente para permitir sua manipulao,
guardando entretanto as principais caractersticas da linguagem. Em princpio, pode-se
construir um modelo para refletir a estrutura de uma linguagem no grau desejado de preciso,
ao custo da complexidade matemtica, que ser um fator limitante para a utilidade do modelo
obtido. A seguir examinaremos alguns modelos para fontes de texto e as caractersticas das
linguagens assim modeladas.

2.5.4 Fonte de Texto de Ordem-0

Uma primeira aproximao para qualquer linguagem sobre um alfabeto Zm a chamada

2.12
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

aproximao de ordem-0, onde se considera que as probabilidades de ocorrncia de qualquer


letra so idnticas:

Eq. 2.17 p i = p(a i ) = 1 , a i Z m , i = 0,1,2,...,m-1


m

Por exemplo, considerando-se Z27, ou A = {A,B,C,...,Z,_}, onde _ representa um espao,


o seguinte texto poderia ter sido gerado por uma fonte de ordem-0:
S: DM_QASCJDGFOZYNX_ZSDZLXIKUD.
Podemos observar que dificilmente se reconhecer um texto assim gerado como pertencente a
qualquer linguagem que possua um mnimo de estrutura. Em particular jamais diramos que
obtivemos um texto em Portugus, ou Ingls, ou qualquer outra linguagem natural. O
problema que o modelo ignora completamente as freqncias relativas dos caracteres de A,
como eles ocorrem em uma linguagem real.

2.5.5 Fonte de Texto de 1a Ordem

Se considerarmos a freqncia relativa dos caracteres pertencentes ao alfabeto da linguagem,


obtemos o chamado modelo de 1a ordem, ou modelo de ordem-1. Formalmente, uma fonte de
texto S gera 1-gramas com distribuies de probabilidades idnticas mas independentes se
Eq. 2.18 P(x0,x1,x2, ... ,xn-1) = p(x0)p(x1)p(x2)...p(xn-1)
= p0p1p2...pn-1
" n = 1,2,3,... e n-grama (x0,x1,x2, ... ,xn-1).
A probabilidade de cada 1-grama tal que
Eq. 2.19 p(xi) = pi 0, 0 i < n

Eq. 2.20 pi = 1.
i

Exemplo 2.4:
Uma estimativa para a freqncia de caracteres em Portugus, considerando o alfabeto Z27, est apresentada na
Tabela 2.2 a seguir. Usando este modelo, poderamos ento obter o seguinte texto em Portugus:
S: CCENNIEPTSE UQOCCAMS AEJRNV DDA CTRAA.
Se tomarmos, por exemplo, os 4-gramas FADO e FAOD, e os 2-gramas QU e QR, podemos calcular, com base
na Tabela 2.2, as seguintes probabilidades:
p(FADO) = p(F) x p(A) x p(D) x p(O)
= 0,010 x 0,114 x 0,046 x 0,080 4,20x10-6;
p(FAOD) = p(F) x p(A) x p(O) x p(D)
= 0,010 x 0,114 x 0,080 x 0,046 4,20x10-6;
p(QU) = p(Q) x p(U) = 0,007 x 0,030 2,10x10-4;
p(QR) = p(Q) x p(R) = 0,007 x 0,053 3,71x10-4.

2.13
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

Tabela 2.2: Distribuio de Probabilidades de 1-gramas em Portugus.


Letra - p Letra - p Letra - p Letra - p
A 0,114 H 0,006 O 0,080 V 0,012
B 0,008 I 0,056 P 0,024 W 0,000
C 0,045 J 0,002 Q 0,007 X 0,002
D 0,046 K 0,001 R 0,053 Y 0,0000
E 0,114 L 0,020 S 0,071 Z 0,003
F 0,010 M 0,042 T 0,046 _ 0,156
G 0,011 N 0,041 U 0,030

Observamos que, pela lei dos grandes nmeros, devemos esperar que a fonte de texto do
exemplo anterior deve gerar, em mdia, 420 ocorrncias de FADO e 420 ocorrncias de
FAOD a cada amostra de 108 4-gramas, assim como 210 ocorrncias de QU e 371 de QR, a
cada 106 2-gramas. Claramente, tal situao est longe dos valores esperados para a
linguagem real (Portugus). O problema est em que a atribuio de probabilidades a um
n-grama pelo modelo de primeira ordem no leva em conta a dependncia intersmbolos
existentes na estrutura de uma linguagem real. Assim, para o portugus, os 4-gramas FADO e
FAOD devem ter probabilidades distintas, bem como os 2-gramas Q, com U, devem ter
probabilidades nulas, diferentemente do que ocorre no modelo aqui empregado.

2.5.6 Fonte de Texto de 2a Ordem

Podemos refinar o nosso modelo acrescentando a interdependncia entre smbolos. Um pri-


meiro grau de refinamento seria se considerar as probabilidades de ocorrncia de 2-gramas, ao
invs de 1-gramas (letras) apenas. Isto nos leva a um modelo de 2a ordem. Uma fonte de texto
S gera 2-gramas de Zm com distribuies de probabilidades idnticas mas indepen-dentes se
Eq. 2.21 P(x0,x1,x2, ... ,x2n-1) = p(x0,x1)p(x2,x3)...p(x2n-2, x2n-1)
" n = 1,2,3,... e 2n-gramas (x0,x1,x2, ... ,x2n-1),

onde as probabilidades de 2-gramas satisfazem ainda s condies


p(t,s) 0, 0 s,t < m (s,t Zm)

p(t, s) = 1.
s,t
Exemplo 2.5::
Considere a Tabela 2.3, onde apresentada uma distribuio de freqncias de 2-gramas para o Portugus.
Agora, se calcularmos as probabilidades atribudas por esta fonte para FADO, FAOD, QU e QR, vamos
encontrar:
P(FADO) = p(FA) x p(DO) = 0,0013 x 0,0110 1,43x10-5
P(FAOD) = p(FA) x p(OD) = 0,0013 x 0,0022 2,86x10-6
P(QU) = p(QU) = 0,0072 e p(QR) = p(QR) = 0,0000.
Desta forma, FADO passa a ter uma probabilidade de ocorrncia diferente de FAOD, e QR descartado como
um possvel 2-grama, como seria de se esperar para a linguagem 'Portugus'.

2.14
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

Tabela 2.3: Distribuio de Probabilidades de 2-gramas para o Portugus.


* A B C D E F G H I J K L M
A 0.00 0.12 0.69 0.88 0.00 0.11 0.29 0.00 0.21 0.00 0.00 0.65 0.46
B 0.07 0.00 0.00 0.00 0.13 0.00 0.00 0.00 0.13 0.01 0.00 0.15 0.00
C 1.46 0.00 0.00 0.00 0.32 0.00 0.00 0.40 0.64 0.00 0.01 0.06 0.00
D 0.96 0.00 0.00 0.00 2.14 0.00 0.00 0.00 0.30 0.00 0.00 0.00 0.00
E 0.08 0.01 0.49 0.09 0.00 0.05 0.28 0.00 0.16 0.12 0.00 0.36 1.22
F 0.13 0.00 0.00 0.00 0.08 0.00 0.00 0.00 0.27 0.00 0.00 0.00 0.00
G 0.07 0.00 0.00 0.00 0.37 0.00 0.00 0.00 0.10 0.00 0.00 0.00 0.00
H 0.47 0.00 0.00 0.00 0.08 0.00 0.00 0.00 0.02 0.00 0.00 0.00 0.00
I 0.37 0.06 0.73 0.47 0.04 0.25 0.12 0.00 0.00 0.00 0.00 0.23 0.29
J 0.14 0.00 0.00 0.00 0.03 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
K 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
L 0.25 0.00 0.01 0.00 0.28 0.04 0.08 0.06 0.45 0.00 0.00 0.00 0.07
M 1.15 0.07 0.00 0.00 0.94 0.00 0.00 0.00 0.12 0.00 0.00 0.00 0.00
N 0.61 0.00 0.40 0.52 0.15 0.09 0.02 0.11 0.20 0.02 0.02 0.00 0.00
O 0.06 0.16 0.23 0.22 0.15 0.03 0.20 0.00 0.04 0.01 0.00 0.13 0.47
P 0.39 0.00 0.00 0.00 0.41 0.00 0.00 0.00 0.03 0.00 0.00 0.12 0.00
Q 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
R 1.50 0.00 0.05 0.04 0.81 0.00 0.01 0.00 0.71 0.00 0.00 0.01 0.35
S 0.48 0.01 0.05 0.01 1.19 0.03 0.00 0.00 0.73 0.00 0.00 0.00 0.09
T 0.85 0.00 0.02 0.00 1.46 0.00 0.00 0.00 0.71 0.00 0.00 0.00 0.06
U 0.28 0.12 0.03 0.03 0.57 0.00 0.00 0.00 0.21 0.01 0.00 0.09 0.60
V 0.16 0.00 0.00 0.00 0.80 0.00 0.00 0.00 0.16 0.00 0.00 0.00 0.00
W 0.01 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
X 0.02 0.00 0.01 0.00 0.04 0.00 0.00 0.00 0.04 0.00 0.00 0.00 0.00
Y 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Z 0.22 0.00 0.00 0.00 0.05 0.00 0.00 0.00 0.02 0.00 0.00 0.00 0.00
_ 1.69 0.22 1.80 2.32 1.35 0.36 0.13 0.04 0.38 0.02 0.02 0.14 0.56

Tabela 2.3: ... continuao ...


* N O P Q R S T U V W X Y Z _
A 0.65 0.93 0.16 0.06 0.80 1.11 0.29 0.08 0.47 0.00 0.00 0.00 0.05 3.38
B 0.00 0.04 0.00 0.00 0.03 0.08 0.05 0.04 0.00 0.00 0.00 0.00 0.00 0.03
C 0.03 1.15 0.00 0.00 0.24 0.00 0.05 0.13 0.00 0.00 0.00 0.00 0.00 0.02
D 0.00 1.10 0.00 0.00 0.01 0.00 0.00 0.05 0.00 0.00 0.00 0.00 0.00 0.01
E 1.56 0.01 0.06 0.11 1.08 1.39 0.38 0.03 0.14 0.00 0.13 0.00 0.04 3.59
F 0.00 0.26 0.00 0.00 0.20 0.00 0.01 0.02 0.00 0.00 0.00 0.00 0.00 0.01
G 0.01 0.11 0.00 0.00 0.21 0.00 0.00 0.28 0.00 0.00 0.00 0.00 0.00 0.00
H 0.00 0.03 0.00 0.00 0.00 0.00 0.00 0.02 0.00 0.00 0.00 0.00 0.00 0.00
I 0.60 0.31 0.26 0.00 0.15 0.83 0.39 0.00 0.23 0.00 0.01 0.00 0.22 0.08
J 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.03 0.00 0.00 0.00 0.00 0.00 0.00
K 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.03
L 0.01 0.19 0.00 0.04 0.00 0.01 0.05 0.05 0.04 0.00 0.00 0.00 0.00 0.33
M 0.00 0.41 0.23 0.00 0.00 0.01 0.00 0.09 0.00 0.00 0.00 0.00 0.00 1.17
N 0.00 0.20 0.00 0.01 0.01 0.43 1.14 0.05 0.08 0.00 0.00 0.00 0.00 0.04
O 0.59 0.00 0.13 0.00 0.86 1.02 0.13 0.16 0.04 0.00 0.01 0.00 0.00 3.37
P 0.00 0.59 0.00 0.00 0.52 0.01 0.18 0.10 0.00 0.00 0.00 0.00 0.00 0.01
Q 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.72 0.00 0.00 0.00 0.00 0.00 0.00
R 0.05 0.56 0.00 0.01 0.10 0.09 0.15 0.02 0.03 0.00 0.00 0.00 0.00 0.79
S 0.00 0.34 0.14 0.01 0.00 0.40 0.88 0.22 0.01 0.00 0.00 0.00 0.00 2.53
T 0.00 0.78 0.00 0.00 0.46 0.05 0.00 0.17 0.00 0.00 0.00 0.00 0.00 0.03
U 0.14 0.00 0.05 0.00 0.28 0.13 0.33 0.00 0.00 0.00 0.00 0.00 0.01 0.14
V 0.00 0.08 0.00 0.00 0.01 0.00 0.00 0.01 0.00 0.00 0.00 0.00 0.00 0.00
W 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
X 0.00 0.01 0.01 0.00 0.00 0.00 0.03 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Y 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01
Z 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.04
_ 0.48 0.88 1.31 0.49 0.31 1.56 0.55 0.78 0.17 0.00 0.01 0.00 0.00 0.00

2.5.7 Modelos de Ordem Superior


De forma semelhante, poderamos estender o modelo para ordem-3, checando a probabilidade
de ocorrncia de 3-gramas, e assim, sucessivamente, refinar o modelo para ordem-n. Ainda

2.15
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

assim, teremos problemas semelhantes ao observado nos exemplos anteriores, em que a


probabilidade de FADO ser igual de DOFA, mesmo no modelo de segunda ordem. Em
geral, para um modelo de ordem-n, com n-gramas obtidos por experincias idnticas e
independentes, teremos sempre
P(x1,1,x1,2,...,x1,n-1,x2,1,x2,2,...,x2,n-1)=
P(x2,1,x2,2,...,x2,n-1,x1,1,x1,2,...,x1,n-1).

Isto ocorre porque o sistema S no tem memria, sendo as probabilidades dos eventos
consideradas independentes. Outra forma de considerarmos uma fonte de texto S
modelando-se a mesma como um processo Markoviano, onde a probabilidade de ocorrncia
de um dado evento depende dos eventos anteriormente ocorridos.

2.5.8 Fontes Markovianas

Aqui tambm podemos modelar a fonte com complexidades crescentes, obtendo modelos
cada vez mais refinados, conforme indique a necessidade e a capacidade de processamento
disponvel. Uma fonte de texto S gera 1-gramas sobre Zm por uma cadeia de Markov de 1a
ordem com matriz de transio

P = {p(s/t)}, 0 t,s < m

e distribuio de equilbrio

P = {p(0),p(1), ... ,p(m-1)}

se

p(x0,x1,...,xn-1) = p(0)p(x1/x0)p(x2/x1)...p(xn-1/xn-2)
" n = 1,2,... e n-gramas (x0,x1,...,xn-1).

As probabilidades de transio e a distribuio de equilbrio satisfazem s seguintes


condies:

p(s/t) 0, 0 t,s < m

p(s / t ) = 1, 0 t,s < m


s

p(t) 0, 0t<m

p( t) = 1 , 0t<m
t

2.16
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

p (s) = p ( t )p(s / t ) , 0 t,s < m


t

O gerador Markoviano satisfaz tambm s condies de consistncia de Kolmogorov, alm de


garantir que a probabilidade de ocorrncia de um n-grama determinado qualquer, a partir de
uma posio j do texto, satisfaz
p(Xj = x0,Xj+1 = x1,...,Xj+n-1 = xn-1) = p(X0 = x0,X1 = x1,...,Xn-1 = xn-1)
" n = 1,2,... e n-grama (x0,x1,...,xn-1), ou seja, independente de j.
A distribuio de equilbrio P a soluo do sistema de equaes lineares
p(0) = p(0)p(0/0) + p(1)p(0/1) + ... + p(m-1)p(0/m-1)
p(1) = p(0)p(1/0) + p(1)p(1/1) + ... + p(m-1)p(1/m-1)
....................................................
p(m-1) = p(0)p(m-1/0) + p(1)p(m-1/1) + ... + p(m-1)p(m-1/m-1)
ou, em forma matricial,
Eq. 2.22 P = PP.

Exemplo 2.6:
Podemos construir um modelo Markoviano de 1a ordem para a fonte S do exemplo da Tabela 2.3, obtendo a
matriz de transio

p(A/A) p(B/A) ... p(Z/A)


p(A/B) p(B/B) ... p(Z/B)
P=
... ... ... ...

p(A/Z) p(B/Z) ... p(Z/Z)
onde supomos que temos computada a distribuio de frequncias de digramas N(a,b), para uma amostra total de
N digramas, de onde ento computamos p(A/A) = N(A,A)/N(A), p(A/B) = N(B,A)/N(B), ... , p(Z/Z) =
N(Z,Z)/N(Z), sendo N(a) = N (= ,>) , a,b Zm.
>
Se considerarmos a distribuio de equilbrio P como a prpria distribuio de 1-gramas da Tabela 2.2 e
considerando as probabilidades de transio dadas pela Tabela 2.4 a seguir, podemos ento determinar que

p(FADO) = p(F)p(A/F)p(D/A)p(O/D) = 0,01 x 0,1322 x 0,0774 x 0,2399 2,45 x 10-5


p(FAOD) = p(F)p(A/F)p(O/A)p(D/O) = 0,01 x 0,1322 x 0,0820 x 0,0277 3,00 x 10-6
p(QU) = p(Q)p(U/Q) = 0,007 x 1 = 7 x 10-3
p(QR) = p(Q)p(R/Q) = 0,007 x 0 = 0 (zero)

2.17
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

Tabela 2.4: Probabilidades de Transio para o Portugus (em %).


* A B C D E F G H I J K L M
A 0.00 1.01 6.06 7.74 0.00 0.96 2.55 0.01 1.86 0.03 0.00 5.72 4.07
B 8.72 0.00 0.39 0.58 16.28 0.00 0.00 0.00 16.28 0.78 0.00 19.38 0.39
C 32.45 0.00 0.00 0.00 7.03 0.00 0.00 8.91 14.19 0.00 0.13 1.38 0.00
D 20.95 0.00 0.03 0.00 46.63 0.00 0.00 0.00 6.54 0.00 0.00 0.03 0.07
E 0.72 0.11 4.27 0.82 0.04 0.48 2.43 0.01 1.40 1.01 0.00 3.13 10.72
F 13.22 0.00 0.00 0.00 8.40 0.00 0.00 0.00 27.84 0.00 0.00 0.00 0.00
G 6.09 0.00 0.00 0.00 32.05 0.00 0.00 0.00 8.61 0.00 0.00 0.26 0.13
H 75.00 0.00 0.00 0.00 12.86 0.00 0.00 0.00 3.64 0.00 0.00 0.00 0.00
I 6.48 1.13 13.05 8.31 0.65 4.44 2.13 0.00 0.00 0.00 0.00 4.17 5.11
J 68.70 0.00 0.00 0.00 15.27 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
K 0.00 0.00 0.00 0.00 10.34 0.00 0.00 0.00 6.90 0.00 0.00 0.00 0.00
L 12.62 0.00 0.39 0.00 14.32 2.17 4.33 3.17 22.99 0.00 0.00 0.15 3.79
M 27.49 1.73 0.04 0.04 22.33 0.00 0.00 0.00 2.78 0.00 0.00 0.04 0.00
N 14.72 0.04 9.69 12.67 3.74 2.24 0.59 2.68 4.88 0.59 0.55 0.11 0.00
O 0.76 2.03 2.86 2.77 1.82 0.32 2.45 0.00 0.47 0.15 0.00 1.57 5.93
P 16.38 0.13 0.13 0.00 17.40 0.00 0.00 0.06 1.15 0.00 0.00 5.18 0.00
Q 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
R 28.35 0.00 1.00 0.72 15.27 0.09 0.26 0.00 13.44 0.06 0.00 0.11 6.64
S 6.70 0.09 0.68 0.11 16.72 0.49 0.04 0.04 10.27 0.00 0.00 0.06 1.30
T 18.40 0.00 0.33 0.00 31.73 0.00 0.00 0.00 15.50 0.00 0.00 0.00 1.32
U 9.08 4.04 0.90 0.95 18.66 0.05 0.05 0.00 6.94 0.40 0.00 2.84 19.81
V 12.86 0.00 0.00 0.00 66.29 0.00 0.00 0.00 12.98 0.00 0.00 0.00 0.00
W 66.67 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
X 14.95 0.00 4.67 0.00 25.23 0.00 0.00 0.00 23.36 0.00 0.00 0.00 0.00
Y 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 11.11 0.00 0.00 0.00 0.00
Z 67.44 0.00 0.00 0.00 14.42 0.00 0.00 0.00 5.12 0.00 0.00 0.00 0.93
_ 10.86 1.43 11.53 14.86 8.69 2.30 0.86 0.27 2.47 0.15 0.10 0.91 3.57

Tabela 2.4: ... continuao ...


N O P Q R S T U V W X Y Z _
A 5.68 8.20 1.38 0.51 7.05 9.70 2.53 0.68 4.09 0.00 0.04 0.00 0.48 29.66
B 0.19 5.23 0.00 0.00 4.46 10.66 6.59 5.23 0.58 0.00 0.00 0.00 0.00 4.26
C 0.71 25.42 0.00 0.00 5.31 0.00 1.18 2.82 0.00 0.00 0.00 0.03 0.00 0.44
D 0.00 23.99 0.00 0.00 0.30 0.10 0.00 1.12 0.03 0.03 0.00 0.00 0.00 0.17
E 13.68 0.09 0.53 0.94 9.49 12.21 3.34 0.27 1.25 0.00 1.18 0.00 0.32 31.55
F 0.00 26.59 0.16 0.00 20.68 0.00 0.78 1.71 0.00 0.00 0.00 0.00 0.00 0.62
G 0.79 9.54 0.00 0.00 18.28 0.00 0.00 24.24 0.00 0.00 0.00 0.00 0.00 0.00
H 0.00 5.58 0.00 0.00 0.00 0.00 0.00 2.91 0.00 0.00 0.00 0.00 0.00 0.00
I 10.57 5.54 4.63 0.03 2.69 14.69 6.89 0.03 4.09 0.00 0.19 0.00 3.85 1.35
J 0.00 1.53 0.00 0.00 0.00 0.00 0.00 13.74 0.00 0.00 0.00 0.00 0.00 0.76
K 3.45 0.00 6.90 0.00 0.00 6.90 0.00 6.90 0.00 0.00 0.00 0.00 0.00 58.62
L 0.39 9.60 0.00 1.93 0.00 0.31 2.63 2.32 2.09 0.00 0.00 0.08 0.00 16.72
M 0.04 9.68 5.53 0.00 0.00 0.29 0.00 2.10 0.00 0.00 0.00 0.00 0.00 27.93
N 0.00 4.74 0.00 0.15 0.33 10.46 27.68 1.25 1.95 0.00 0.00 0.00 0.00 0.95
O 7.37 0.02 1.67 0.02 10.79 12.70 1.59 1.99 0.49 0.02 0.08 0.00 0.00 42.12
P 0.00 24.95 0.00 0.00 22.01 0.32 7.49 4.41 0.00 0.00 0.00 0.00 0.00 0.38
Q 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 0.00 0.00 0.00 0.00 0.00 0.00
R 0.97 10.55 0.03 0.26 1.89 1.63 2.75 0.40 0.57 0.00 0.00 0.03 0.00 14.99
S 0.02 4.79 2.00 0.15 0.00 5.62 12.32 3.02 0.11 0.02 0.00 0.00 0.00 35.46
T 0.00 17.08 0.00 0.00 10.03 1.15 0.03 3.63 0.03 0.10 0.00 0.10 0.00 0.56
U 4.74 0.15 1.55 0.00 9.38 4.44 10.93 0.00 0.05 0.00 0.00 0.00 0.45 4.59
V 0.00 6.24 0.00 0.00 0.87 0.00 0.00 0.62 0.00 0.00 0.00 0.00 0.00 0.12
W 16.67 16.67 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
X 0.00 4.67 8.41 0.00 0.00 0.00 15.89 0.00 0.00 0.00 0.00 0.00 0.00 2.80
Y 22.22 0.00 11.11 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 55.56
Z 0.00 0.47 0.00 0.00 0.00 0.47 0.00 0.00 0.00 0.00 0.00 0.00 0.00 11.16
_ 3.10 5.68 8.43 3.12 1.99 10.00 3.50 5.03 1.07 0.00 0.04 0.03 0.03 0.00

Uma forma de "simularmos" um gerador Markoviano de 1a ordem pegarmos um texto


qualquer, que sirva de amostra da linguagem, por exemplo, um livro escrito na linguagem

2.18
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

desejada. Abra aleatoriamente o livro, e considere o primeiro caractere como x1. Abra
novamente o livro, de forma aleatria, e procure a primeira ocorrncia de x1 - o caractere que
se seguir a x1 ser tomado como x2. Repita para x2, obtendo x3, e assim por diante, obtenha
sucessivamente uma seqncia de caracteres, que satisfazem ao modelo Markoviano de 1a
ordem. Usando-se a obra "Sagarana" de Guimares Rosa, poderamos ento obter o seguinte
texto:
S: 'DE TADER A STEMERARA DANA CUR MESTE'.
Podemos aperfeioar o nosso modelo, representando a linguagem selecionada atravs de um
processo Markoviano de ordem superior, dado pelas probabilidades de transio
p(xn/(x0,x1,x2,...,xn-1))
onde a probabilidade de ocorrncia de um determinado caractere passa a ser dependente
diretamente dos n caracteres gerados imediatamente antes, obtendo um modelo Markoviano
de ordem-n. Obviamente, medida que n cresce, a matriz de transio cresce em proporo
geomtrica, passando de uma matriz mxm, m a dimenso do alfabeto, quando n = 1 (modelo
de ordem-1), para uma matriz mnxm, para o caso geral de um modelo de ordem-n. Como
exemplo, para um alfabeto de 27 letras apenas e n = 4, precisaremos armazenar uma matriz
de 531.441 x 27 elementos ( 4,3 x 106). Tal fato limita a complexidade do modelo que
manusevel, porm os exemplos que se seguem ilustram que no requerido um modelo
muito complexo, para obtermos uma aproximao "razovel" da linguagem, onde razovel
significa: aparentemente reproduz a estrutura da linguagem.

Exemplo 2.7: Textos gerados por modelo Markoviano.


INGLS (Amostra da linguagem: Manual tcnico de "Mouse")
1a ordem: SCULDOVESCOR F SUS RED WASIVECUSOR SCTHAMBLLOURMERN G BURIOTHESY
SCHEMALLANEEVISE ETHE OREN.
2a ordem: EXT OR SYMAD RES FUN PLUDEFOLY FOR ORY THER CURSOR STEME TO OU
ANNINPUT.
a
3 ordem: MAJORIZONTAL IS ZEROUS COMPUT COPY OF AND THE LIMILABLESPOT LEVE AVE
MODE IS DEALINE OF PERMINORMATION.
a
4 ordem: ENTRANCE INTERNAL ANY OF TO A NUMBERED ONSCREEN IT SUCH TO DISPLAYED
AT IS GONE CURRENT.
PORTUGUS (Amostra da linguagem: Texto sobre Criptografia):
2a ordem: AS CRICA METRIPTO A DEAL SISOMOS TITOMENTECIO REAMEDIM QUATUICANDO US
EXIS OU ATORMACAO AS PORDSAGEM.
a
3 ordem: UM SEFURANCA SISTO SISTEMA DES ELES QUE MENTE SISTEMA DE PODERANCIA
PORTARA UM COMPATIVEL O ESTA MESMO.
4a ordem: SISTEMAS DISTICACAO OU MESMO POR EXEMPLO SIMETRICOS DE SUBSTITUI O
CONCLUSIVO QUE O PROBLEMA.
Os modelos vistos at aqui so ditos ser estacionrios, uma vez que a probabilidade de
2.19
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

ocorrer um determinado n-grama qualquer em determinada posio do texto independente


desta posio em considerao. Em certas situaes, ou melhor dizendo, para certas
linguagens, tais modelos so completamente distorcidos, pois a probabilidade de ocorrncia
de um n-grama particular pode depender fortemente da posio no texto que se considere.
Exemplos disto so os protocolos de comunicao de dados que formatam os mesmos em
blocos com uma estrutura bem definida, contendo, por exemplo, campos apenas numricos,
para endereamento, sequenciamento, data, hora, etc. Para contornarmos este problema, basta
considerarmos mais uma varivel para o cmputo das probabilidades: a posio no texto.

2.6 Entropia e Redundncia de Fontes de Texto

Uma vez admitido o modelo estatstico para uma dada linguagem, como vimos
anteriormente, podemos calcular a entropia da linguagem. Se chamarmos de HP a entropia da lngua
portuguesa, e considerando-se um alfabeto de 27 letras, como existem 27n n-gramas possveis em
Z27 e log227 4,76, podemos dizer ento que
HP 4,76 bits/letra.

Se utilizarmos o modelo de 1a ordem descrito pela Tabela 2.1, teremos ento uma melhor
aproximao, obtendo,

HP H1P = - p i log 2 p i 3,97 bits/letra,


i

onde pi a probabilidade de ocorrncia da i-sima letra do alfabeto. Tomando-se agora um modelo


de 2a ordem conforme a Tabela 2.3 passaramos a ter

HP H 2P = - 21 p(i, j ) log 2 p(i, j ) 3,53 bits/letra.


i j

Assim sucessivamente, podemos refinar a estimativa da entropia da linguagem utilizando


modelos cada vez mais precisos. Shannon desenvolveu estudos para a lngua inglesa, tendo chegado
aos resultados apresentados na Tabela 2.5, para n = 0,1,2 e 3. J utilizando um modelo Markoviano
experimental, Shannon obteve os dados da Tabela 2.6.

2.20
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

Tabela 2.5: Entropia do Ingls (Shannon). Tabela 2.6: Entr. do Ingls - Mod. Markoviano Exp. (Shannon).
Z26 Z27 n Limite Inferior Limite Sup

HE0 4.70 4.76 1 3.2 4.0


2 2.5 3.4
HE1 4.14 4.03
3 2.1 3.0
HE2 3.56 3.32 1.7 2.6
4
HE3 3.50 3.10 5 1.7 2.7
10 1.0 2.1
100 0.6 1.3

Dada uma fonte S sobre um alfabeto Zm e entropia


H, possvel se codificar textos produzidos por esta fonte em um cdigo compacto, onde um n-
grama tpico pode ser codificado com l(n) letras de Zm, onde

nH
Eq. 2.23 l(n ) =
log 2 m
sendo l(n) denominado o comprimento mdio dos cdigos necessrios para representar um
n-grama tpico.
Exemplo 2.8
Considere uma fonte binria que gere os smbolos a e b com probabilidades p(a) = e p(b) = . Temos ento
que h() = 0,8113 e m = 2. Assim, para representarmos 2-gramas desta fonte, podemos utilizar, em mdia, sobre
um alfabeto binrio {0,1},
l(2) 20,8113 = 1,6226 bits/2-grama, ou, l(1) = 0,8113 bits/smbolo.
Efetivamente, podemos codificar os smbolos da fonte conforme a tabela abaixo:
Tabela 2.7: Codificao da fonte por 2-gramas.

2-grama probabilidade cdigo


aa 1/16 111
ab 3/16 110
ba 3/16 10
bb 9/16 0

de forma que o comprimento mdio da codificao ser l(2) = 3.(1/16) + 3.(3/16) + 2.(3/16) + 1.(9/16) = (27/16)
= 1,6875 bits/digrama ou l(1) = 0,8437 bits/smbolo.

Definimos a redundncia R de uma fonte como a diferena entre o nmero de smbolos


utilizados em um n-grama, obviamente n, e o nmero mdio mnimo de smbolos l(n) que
poderiam ser utilizados por uma codificao apropriada. Podemos portanto escrever l(n) = n(1 - R)
ou
H
Eq. 2.24 R= 1-
log 2 m

2.21
Departamento de Engenharia Eltrica INFORMAO, CODIFICAO E
Faculdade de Tecnologia SEGURANA DE DADOS
Universidade de Braslia Prof. Joel G. Silva Filho
e-mail: joelgf@ene.unb.br ENE - UnB
Tel. (061)273-5977 - Fax. (061)274-6651

Estudos para avaliar a redundncia da lngua inglesa estimam que RE 40%, e que o
comprimento mdio das palavras em Ingls de w = 4,5 letras. Shannon estimou que,
considerando efeitos mais amplos, a entropia do Ingls poderia se reduzir a cerca de apenas 1 bit por
letra, o que resultaria em uma redundncia de cerca de 75%.
Nas prximas sees teremos oportunidade de estudar a relao entre a entropia/redun-
dncia de uma linguagem e a codificao de mensagens escritas nessa linguagem, com a finalidade
de armazenamento, transmisso ou proteo criptogrfica das mesmas.

2.7 Problemas Propostos

1. Prove que o resultado de uma roleta mais incerto que o lanamento de um dado.
2. Qual preo de corrida de cavalos tem resultado mais incerto: um com 7 cavalos onde 3 tm
probabilidade 1/6 de ganhar e 4 tm probabilidade 1/8, ou outro com 8 cavalos, onde 2 tm
probabilidade 1/4 de ganhar e os outros 6 tm probabilidade 1/12?.
3. Considere uma fonte de informao binria onde p(1) = p e p(0) = 1-p. Qual a quantidade de
informao contida em uma sequncia de n-bits consecutivos onde j-bits so 1s (j n)? Qual a
informao mdia carregada por cada smbolo emitido pela fonte?
4. Um par de dados jogado. Seja X o resultado do primeiro e Y o resultado do segundo. Mostre
que H(X,Y) = H(X) + H(Y). Se Z = X+Y, mostre que H(Z) < H(X,Y).
5. Um dado jogado.
a) Calcule a quantidade de informao acerca do resultado, uma vez sabido que o mesmo par;
b) Repita (a) para o caso do conhecimento de que o resultado primo (1,2,3 ou 5).
6. Considere a lngua portuguesa descrita sobre um alfabeto de 27 letras: A =
{A,B,C,...,Z,'espao'}.
a) Qual a probabilidade de encontrarmos um texto de 27 letras (27-grama) no qual no ocorra
espao, tomando-se um modelo de ordem-zero para a linguagem;
b) Repita (a) para o modelo de ordem-1 da seo 2.5.5;
c) Ainda utilizando o mesmo modelo de ordem-1, compute:
i. o comprimento mdio das palavras em portugus, w ;
ii. a informao mdia contida em uma letra de um texto em portugus;
iii. a redundncia da linguagem.
7. Uma boa aproximao para uma linguagem natural foi proposta pelo linguista G.K. Zipf,

2.22
INFORMAO, CODIFICAO E Departamento de Engenharia Eltrica
SEGURANA DE DADOS Faculdade de Tecnologia
Prof. Joel G. Silva Filho Universidade de Braslia
e-mail: joelgf@ene.unb.br
ENE - UnB Tel. (061)273-5977 - Fax. (061)274-6651

conhecida como "Lei de Zipf". Esta lei estabelece o seguinte: para uma linguagem com um
nmero finito de palavras, w1,w2,...,wN, com probabilidades de ocorrncia p1,p2, ...,pN, uma
boa aproximao para estas probabilidades dada por
A
pn = , 1 n N,
n
onde A uma constante que depende da linguagem em questo. Considerando-se que a lngua
portuguesa possua 16000 palavras significativas, calcule:
i. O valor da constante A, neste caso;
ii. A entropia de palavras do portugus;
iii. A informao mdia por letra, considerando-se que w = 4,5 o tamanho mdio das
palavras em portugus.
8. Prove que a redundncia de uma linguagem modelada por uma fonte sem memria de ordem
zero nula.
9. O que contm mais informao: uma sequncia de 10 letras de um alfabeto de 26 letras ou uma
sequncia de 26 dgitos decimais? Considere as letras e dgitos como equiprovveis em seus
respectivos universos.
10. Mostre que, para qualquer varivel aleatria X, X R , temos H(X2 / X) = 0, contudo, d um

contra-exemplo para mostrar que nem sempre H(X / X2) nulo.


11. Digamos que duas variveis aleatrias X e Y so ditas equivalentes se H(X / Y) = 0 e H(Y / X)
= 0. Mostre que, se X e Y so equivalentes e Y e Z so equivalentes, ento X e Z tambm so
equivalentes (propriedade transitiva da equivalncia).
12. Desenvolva um programa para o IBM/PC para computar:
a) modelos sem memria de 1a e 2a ordem para uma linguagem sobre Z27;
b) modelo markoviano de 1a ordem para as mesmas linguagems em (a);
c) a entropia da linguagem modelada;
d) um histograma de distribuio de frequncia de smbolos para um texto sobre Z27 ou Z256.
1. Desenvolva um programa para o IBM/PC que simule uma Fonte de Texto, conforme os modelos
desenvolvidos no exerccio (8).

2.23