Escolar Documentos
Profissional Documentos
Cultura Documentos
46
No ano de 1947 Hamming, durante suas pesquisas aos finais de semana, utilizava os computadores do laboratrio para fazer a leitura de informaes gravadas em
cartes perfurados. Entretanto, no momento da leitura dos cartes ocorriam erros, os
quais atrasavam o seu trabalho. A partir desse problema, Hamming obteve um cdigo
corretor de erros capaz de detectar at dois erros e corrigir um. Este trabalho foi publicado no ano de 1950 em um artigo intitulado Error Detecting and Error Correcting
Codes.
Da data de descoberta desse tipo de cdigo at a publicao do artigo, Hamming,
em memorandos internos publicados no Laboratrio Bell, questionava a obteno de
cdigos mais eficientes. Essa questo foi respondida indiretamente no ano de 1948
pelo pesquisador Claude Elwood Shannon num artigo intitulado A Mathematical
Theory of communication, dando incio a dois novos campos de pesquisa: a Teoria
dos Cdigos e a Teoria da Informao.
Nos anos iniciais, a maioria dos interessados na Teoria de Cdigos Corretores
Erros eram os matemticos que desenvolveram, nas dcadas de 50 e 60, muitos conceitos acerca do assunto. Aps os anos 60, ocorreu um grande avano nos estudos e
aplicaes dos cdigos devido ao desenvolvimento das pesquisas espaciais.
Um exemplo que ilustra a utilizao dos cdigos corretores de erros e os seus
princpios o chamado cdigo do rob. Suponhamos ento que um rob foi enviado
a Marte e para se deslocar nas direes norte, sul, leste e oeste utiliza-se a seguinte
codificao:
Leste (1,0)
Norte (0,0)
Oeste (1,1)
Sul (0,1)
(0,1) (0,1,0,1,1)
(1,1) (1,1,1,0,1).
Cada recodifico denominada cdigo de canal. Agoa, se for enviado a mensagem (1,0,1,1,0) e por alguma interferncia no canal de transmisso for recebida a palavra (1,1,1,1,0), ser feito uma comparao entre a palavra erroneamente recebida e todas
47
48
d(001, 111) = 2.
d = min { d(u, v) : u, v C e u v }.
Observe que a distncia mnima no exemplo do cdigo do rob d = 3.
O problema de calcular a distncia mnima a quantidade de vezes que dever
ser feita tal operao. Por exemplo, se q a quantidade de elementos de um cdigo,
seria necessrio calcular a combinao simples
o que teria um grande custo computacional caso a quantidade q fosse suficientemente grande.
Um resultado muito importante que cuja demonstrao se encontra em Hefez
e Villela (2002, p. 6), que um cdigo C com distncia mnima d pode corrigir at
=
erros, onde [ t ] a parte inteira de um nmero real t, e detectar at
d 1 erros. Esse resultado facilitaria a correo e a deteco de erros, porm, como
na maioria das vezes no possvel determinar a distncia mnima, ela torna-se de difcil utilizao. Note que, a partir dessa afirmao, pode-se concluir que
um cdigo ter maior capacidade de correo de erros quanto maior for a distncia
mnima d, pois se d for suficientemente grande, o nmero ser aumentado consideravelmente. Portanto, fundamental poder calcular d ou pelo menos determinar uma
cota inferior.
Podemos concluir ento, que a obteno da distncia mnima de suma importncia para os cdigos corretores de erros, se consagrando como um grande desafio
para os pesquisadores na atualidade.
49
CDIGOS LINEARES
Para construo dos cdigos lineares consideraremos um corpo finito K com q
elementos, denominado de alfabeto. Naturalmente, para cada nmero natural n, temos
um K - espao vetorial
de dimenso n. A Definio 3 nos diz quando um cdigo
C
um cdigo linear.
Definio 3. Um cdigo C
vetorial de .
Conclumos a partir dessa definio que um cdigo linear um espao vetorial de dimenso finita. Ento, sendo k a dimenso de um cdigo linear e
v1, v2,, vk uma de suas bases, todo elemento de C se escreve de modo nico na forma
1v1 + 2v2 + + kvk, onde os i, i = 1,, k, so elementos de K. Alm disso, como
para cada i existem q possibilidades, segue que o nmero de elementos de C qk.
Definio 4. Dado x
|{ i : xi 0 }|.
Em outras palavras, temos que (x) = d(x, 0), onde d representa a mtrica de Hamming.
Definio 5. O peso de um cdigo linear C o inteiro
(C)
Proposio 1. Seja C
i) x, y , d(x, y) = (x y).
ii) d = (C)
Demonstrao: O item (i) segue imediatamente das definies de mtrica de Hamming
e de peso de um cdigo. O item (ii) decorre do fato que, para todo par de elementos x,
y C com x y, tem-se z = x y C {0} e d(x, y) =(z).
A Proposio 1 nos mostra que em cdigos lineares com q elementos pode-se
obter a distncia mnima a partir de q 1 clculos de distncias, em vez de , o que
torna a quantidade de clculos da primeira menor que a da segunda forma. Entretanto,
ainda invivel fazer essa quantidade de clculos.
Em virtude da Proposio 1(ii), a distncia mnima de um cdigo linear C ser
tambm chamada de peso do cdigo C.
Em lgebra Linear existem dois modos de se descrever subespaos vetoriais C
50
de um espao vetorial : uma delas como imagem e outra como ncleo de transformaes lineares. Em cdigos do tipo linear consideraremos a descrio como imagem
de uma transformao linear injetora. Como um cdigo C para ser linear tem que ser
subespao vetorial de , ser suficiente obter C como imagem da transformao linear
em que x = (x1, x2,, xk) e u = x1u1 + x2u2 +... +xkuk. Assim, um cdigo C de dimenso
k pode ser dado como a imagem da transformao T, isto , Im(T) = C.
Tendo em mente a transformao linear explicitada acima podemos obter
uma matriz denominada matriz geradora de um cdigo linear. Para isso, seja
= {v1, v2,, vk} uma base de C e considere a matriz G de tal modo que cada uma de
suas linhas sejam os vetores vi = (vi1, vi2,, vik), com i = 1,, k. Ou seja:
G
subespao vetorial de
um
Demonstrao: Para verificar a primeira parte basta aplicar a definio de subespao vetorial. Agora, provemos a segunda parte: x
se, e somente se, x ortogonal a todos
os elementos de C se, e somente se, x ortogonal a todos os elementos de uma base de
C, o que equivalente a dizer que Gxt = 0, pois as linhas de G so uma base de C.
O subespao vetorial
de
, ortogonal a C, chamado de cdigo dual de C.
Como
tambm um cdigo linear, podemos obter uma matriz geradora H que
exibida na Proposio 3.
51
Proposio 3. Seja C
na forma padro. Ento
i) dim
nk
Portanto,
possui qn k elementos, que so justamente as possveis escolhas arbitrrias de xk+1,, xn. Logo,
tem dimenso n k.
ii) evidente que as linhas de H so linearmente independentes (devido ao bloco
Idn k), portanto, geram um subespao vetorial de dimenso n k. Como as linhas de H so ortogonais s linhas de G, temos que o espao gerado pelas linhas
de H est contido em
e como esses dois subespaos tm a mesma dimenso,
eles coincidem, provando assim que H = ( At | Idn k) uma matriz geradora de
.
A matriz H dita a matriz teste paridade de C. Ela quem determina se uma dada
palavra pertence ou no ao cdigo C. Por exemplo, se uma dada palavra v pertencer ao
cdigo C ento o produto da matriz H pela transposta de v igual zero, isto , Hvt =
0, em que a vetor Hvt denominado de sndrome de v.
52
r
e c C so tais que d(c, r) , ento existe um nico vetor e com (e) ,
cuja sndrome igual sndrome de r e tal que c = r e.
Demonstrao: De fato, e = r c tem a propriedade da proposio, j que
(e) = d(c, r) . Para provar a unicidade, suponhamos que e = (1, , n) e
e = (1, , n) sejam tais que (e) e (e) e tenha mesma sndrome de
r. Ento, se H a matriz teste de paridade de C, temos Het = H(e)t, ou seja,
Seja H a matriz teste de paridade do cdigo C e seja r um vetor recebido. (Suponha d 3.)
(i) Calcule Hrt.
(ii) Se Hrt = 0, aceite r como sendo a palavra transmitida.
(iii) Se Hrt = st 0, compare st com as colunas de H.
(iv) Se existirem i e tais que st = hi, para K, ento e a n-upla com na posio i
e zeros nas outras posies. Corrija r pondo c = r e.
(v) Se o contrrio de (iv) ocorrer, ento mais de um erro foi cometido.
53
(x0, x1,, xn1). No que segue, definimos quando um cdigo linear um cdigo cclico.
Definio 6. Um cdigo linear C
ser chamado de cdigo cclico se, para
c = (c0, c1,, cn 1) pertencente a C, o vetor (cn -1, c0,, cn 2) pertence a C.
A construo dos cdigos cclicos consiste em enriquecer a estrutura de espao
vetorial de
atravs de novas estruturas matemticas. Primeiramente, para fazer esse
enriquecimento definido Rn como sendo o anel das classes residuais em K [x] mdulo
xn 1.
O anel Rn munido da operao de multiplicao por escalar K definida
por
um K-espao vetorial de dimenso n com base
Alm disso, o Rn isomorfo a
atravs da transformao linear:
Rn. O Teorema a
.
, ,
54
,,
, sendo
a funo permu-
Assim como nos cdigos lineares, os cdigos cclicos tambm possuem matrizes geradoras G. A obteno dessa matriz consiste em uma simples aplicao do
Teorema 1:
Observe que essa matriz geradora constituda de modo que suas linhas sejam
a imagem inversa de v aplicado a cada elemento da base de I = I(
).
Podemos determinar nessa classe de cdigos uma matriz geradora de C na forma padro (R | Id). Para isso, seja
.
Essa aplicao um isomorfismo de K espaos vetoriais, onde K[x]s 1 o espao vetorial dos polinmios de grau menor ou igual a s 1. Esse isomorfismo ser de
grande utilidade no que se segue.
Teorema 2. Seja C
um cdigo cclico. Suponhamos que C =
, onde
n
I = I(
), com g(x) um divisor de x 1. Seja R a matriz (n s) s cuja i sima linha
com 1 i n s,
onde
o resto da diviso de
por g(x). Ento, (R | Idn s) a matriz geradora
de C na forma padro.
Demonstrao: A demonstrao desse resultado se encontra em Hefez e Villela (2002,
p. 117).
No prximo pargrafo definimos o polinmio dito recproco que ser de grande utilidade para a obteno da matriz teste de paridade.
Dado um polinmio
recproco de h(x)
55
tambm
Teorema 3. Seja C =
um cdigo cclico, onde
, com g(x) um divisor de
n
x 1. Ento
cclico e
, onde
.
Demonstrao: A demonstrao desse resultado se encontra em Hefez e Villela (2002,
p. 114).
Corolrio 2. A matriz teste de paridade de C
, em que
, dada por
onde
Para a decodificao necessrio determinar a sndrome de um elemento v.
Para tanto, o Teorema 4 nos mostra como obter esse resultado.
Teorema 4. Seja C
um cdigo cclico gerado por um polinmio mnico g(x) com
matriz geradora na forma padro (R | Id) e matriz teste de paridade H = (Id|- Rt). Se v =
(v0,, vn 1) , ento a sndrome de v com relao matriz H dada por
,
onde r(x) o resto da diviso de v0 + v1x + ... + vn 1xn 1 por g(x).
o resto da diviso de
por g(x).
CONCLUSO
Foi apresentado neste artigo um estudo bibliogrfico sobre os princpios tericos
dos cdigos corretores de erros, com enfoque nas classes dos cdigos lineares, especificando a classe dos cdigos cclicos. notvel que os conceitos de lgebra Linear e lgebra Abstrata esto bastante presentes em todos o processos que envolvem essa teoria.
Os conceitos aqui estudados possui interveno direta na vida real. Assistir um
filme em DVD ou escutar uma msica em um CD so exemplos de aplicaes dos
cdigos corretores de erros. Esses tipos de aplicaes mostram que se torna cada vez
mais difusa a fronteira entre a Matemtica Pura e a Matemtica Aplicada por meio da
sofisticao tecnolgica. Ficou evidente nesse artigo que a classe dos cdigos cclicos
recebe uma estrutura matemtica adicional muito importante, o que faz com que ela tenha uma maior utilizao, pois possui um bom mtodo de codificao e decodificao.
Podemos concluir que o grande desafio na atualidade a determinao da distncia mnima. Com esse problema resolvido, conseguiramos um melhor processo de
codificao e decodificao, o que melhoraria o processo de transmisso e armazenamento de dados, entretanto, atualmente, as pesquisas feitas s conseguiram estabelecer
cotas mnimas para a distncia mnima.
Em linhas gerais, possvel verificar que h muito a ser feito na teoria de cdigos
corretores de erros. Dessa forma, deve-se levar em considerao quais as ferramentas
matemticas que sero utilizadas para a obteno de cdigos mais eficientes e, alm
disso, saber se tal cdigo vivel para a aplicao na vida real.
THEORETIC PRINCIPLES OF ERROR-CORRECTING CODES: LINEAR AND CYCLIC CODES
Abstract: this article is the result of a literature review and aims to present the mathematical foundations of algebraic character which involves the Theory of Error-Correcting
Codes, specifically, linear codes and cyclic codes. This subject, besides being quite interesting, it constitutes a junction of important concepts and techniques of Abstract Algebra
with immediate applications in real life.
Keywords: Linear Codes. Cyclic Codes. Codification. Decodification.
57
Referncias
HEFEZ, Abramo; VILLELA, Maria Lcia T. Cdigos Corretores de Erros. Rio de
Janeiro: IMPA, 2002.
MACWILLIAMS, Florence J; SLOANE, Neil A. J. The Theory of Error-correcting
Code. Edio. North Holland: North-Holland Publishing Company, 1977.
LINT, Jacobus H. van. Introduction to Coding Theory. Netherlands: Springer, 1992.
LIDL, Rudolf; NIEDERREITER, Harald. Introduction to finite fields and their applications. New York: Cambridge University Press, 1988.
LIMA, Elon Lages. lgebra Linear. Rio de Janeiro: IMPA, 2009.
Gonalves, Adilson. Introduo lgebra. Rio de Janeiro: IMPA, 1979.
GARCIA, Arnaldo; LEQUAIN, Yves. lgebra: um curso de introduo. Rio de Janeiro: IMPA, 1988.
58