Códigos NMDS sob a Métrica Poset Luiz Henrique de Almeida P. Couto, Allan de Oliveira Moura, Departamento de Matemática - Universidade Federal de Viçosa, MG 36570, Viçosa - MG E-mail: luiz.almeida@ufv.br Resumo: Neste trabalho abordaremos alguns resultados da teoria dos Códigos Corretores de Erros clássica e também dos códigos sobre ordens parciais. Um código corretor de erros é, basicamente, um modo organizado de acrescentar algum dado adicional a cada informação que se queira transmitir ou armazenar e que permita, ao recuperar a informação, detectar e corrigir os erros no processo de transmissão da informação. É um resultado conhecido da teoria clássica que a eficiência da detecção e correção está intimamente ligada à distância mínima do código, conforme definida por Hamming. Os códigos em que a distância mínima é a maior possível são denominados Códigos MDS e foram alvo de muitos estudos na teoria de códigos. Nesse trabalho, definimos os códigos corretores lineares sobre uma ordem parcial e fazemos um breve estudo da família dos códigos near-mds (NMDS) que, embora obtidos pelo enfraquecimento das restrições dos clássicos códigos MDS, ainda preservam algumas das propriedades destes. Palavras-chave: Códigos Corretores, Métricas Poset, Códigos NMDS 1 Introdução A Teoria dos Códigos Corretores de erros foi fundamentada pelo matemático C.E. Shannon, do Laboratório Bell, no trabalho A mathematical theory of communication, de 1948. A teoria continuou a ser desenvolvida por matemáticos nas décadas de 50 e 60 mas, com o advento das pesquisas espaciais e a popularização dos computadores, a partir da década de 70, a teoria também começou a interessar aos engenheiros. Atualmente, a utilidade dos códigos corretores apresenta-se sempre que fazemos uso de informações digitalizadas, como assistir programas de televisão, falar ao telefone, navegar pela internet, fazer compras, dentre outras atividades. Um dos objetivos principais da teoria baseiase na transmissão e armazenamento de dados de forma eficiente, garantindo a confiabilidade destes. No entanto, é um resultado conhecido da teoria clássica que a eficiência da detecção e correção está intimamente ligada à distância mínima do código, conforme definida por Hamming [5]. Com esse objetivo, surge o problema clássico da teoria, que consiste em encontrar a distância mínima conforme a métrica estabelecida por Hamming [8]. Códigos MDS são definidos como os códigos em que a distância mínima é a máxima possível. Porém, o comprimento destes não pode ser muito grande [2]. Esta restrição levou ao estudo de classes de códigos com distâncias mínimas próximas a dos códigos MDS e que, por isto, preservam muitas das propriedades estruturais associadas a estes. Estudos mais avançados possibilitaram uma generalização do problema clássico por Niederreider [9], a partir da definição de uma nova classe de métricas. Essas métricas foram, posteriormente, esquematizadas em um modelo geral baseado em uma métrica ponderada por uma ordem parcial. Nesse trabalho, definimos os códigos corretores lineares sob a métrica ponderada e fazemos um breve estudo da família dos códigos near-mds (NMDS), obtidos pelo enfraquecimento das restrições dos clássicos códigos MDS. Vale ressaltar que este trabalho é parte de uma dissertação de mestrado, que se encontra em andamento. 223
2 Conceitos e Resultados Preliminares Sejam A um conjunto finito e n N. Um código corretor de erros é um subconjunto próprio C A n. Para nosso estudo, o conjunto finito A será denominado alfabeto e, se A = q, o código C A n será denominado código q-ário. Os elementos de C são sequências finitas dos símbolos do alfabeto, denominadas palavras do código e o número de letras de uma palavra é denominado comprimento da palavra, e corresponde ao número n. Por fim, A = F q denotará um corpo finito com q elementos. Dados dois elementos x = x 1 x 2... x n e y = y 1 y 2... y n de um espaço A n, chama-se distância de Hamming de x a y ao número de coordenadas em que estes elementos diferem, isto é, d(x, y) = {i; x i y i, 1 i n}. Dado um código C A n chama-se distância mínima de C ao número d = min{d(x, y); x, y C, x y}. A distância de Hamming acima definida define uma métrica [5]. No espaço métrico ( F n q, d ), define-se a bola de raio r e centro em x como B(x, r) = {y F n q ; d(x, y) r} e o raio de empacotamento de um código C como o maior número real κ tal que as bolas de raio κ e centro nas palavras do código são disjuntas, um código com distância mínima d pode detectar até d 1 erros e corrigir até κ = d 1 2 erros [5]. Em geral, se não colocarmos uma boa estrutura no código, sua utilidade é um pouco limitada. A estrutura utilizada mais comum é a linearidade. Um código linear é um subespaço vetorial próprio de F n q. Dado x F n q, o peso da palavra x é o número inteiro ω(x) = {i; x i 0} = d(x, 0) e o peso de um código linear C é o inteiro ω(c) = min{ω(x); x C\{0}}. Seja C F n q um código linear. Chamamos de parâmetros do código C a terna de inteiros (n, k, d), onde k é a dimensão de C sob F q e d é a distância mínima de C. Seja β = {v 1, v 2,, v k } uma base ordenada de C e considere a matriz G de ordem k n dada por G = A matriz G é chamada matriz geradora do código C associada à base β. A matriz geradora G gera uma transformação linear definida por v 1. v k. T : F k q F n q x x G cuja imagem Im(T ) é o código C. Seja C um código linear. Definimos o dual de C como C = {v F n q ; v, u = 0, u C}. Pode-se provar que se C um (n, k) código linear então: C é um subespaço vetorial de F n q (ou seja, também é um código), x C Gx t = 0 e dim ( C ) = n k. Ainda sobre os códigos duais, se C um (n, k) código linear com matriz geradora G, então uma matriz H de ordem (n k) k com coeficientes em F q e com linhas linearmente independentes é uma matriz geradora de C se, e somente se, G H t = 0. com isso, obtemos ( C ) = C. Um outro importante resultado, pelo qual H também é chamada matriz teste de paridade do código C é o seguinte: Teorema 2.1 [5] Se C um código linear e se H é uma matriz geradora de C, então v C Hv t = 0. Uma caracterização para a distância mínima, que generalizaremos posteriormente nos diz que: Teorema 2.2 [5] Se H é a matriz teste de paridade de um código C, então o peso de C é igual a s se, e somente se, quaisquer s 1 colunas de H são linearmente independentes e existem s colunas de H linearmente dependentes. 224
Como corolário dessa caracterização, temos a conhecida Cota de Singleton, que afirma que os parâmetros (n, k, d) de um código satisfazem à desiguadade d n k + 1. Quando a distância mínima de um código atinge a Cota de Singleton, dizemos que este código é MDS. Já o conceito de métricas ponderadas por ordens parciais (poset metrics, em inglês) foi iniciado por Niederreider [9] e, posteriormente, generalizado por Brualdi, Graves e Lawrence [3]. Nos últimos anos, muitos trabalhos têm aprofundado o conhecimento sobre esses espaços para alguns casos particulares de conjuntos parcialmente ordenados, tais como as ordens coroa [6, 1], hierárquico (ordem fraca) [7] e Rosenbloom-Tsfasman [11, 4]. Se X é um conjunto, o par ordenado (X, ) é denominado conjunto parcialmente ordenado (ou poset) se é uma ordem parcial sobre X. Se a b ou b a dizemos que a e b são comparáveis. Caso contrário, eles são ditos incomparáveis. Um poset (X, ) no qual quaisquer dois elementos são comparáveis é dito totalmente ordenado ou poset linear (ou cadeia). Um poset é dito antilinear (ou anticadeia) se quaisquer dois elementos são incomparáveis. Se X é finito, então dizemos que o poset é finito e a cardinalidade do conjunto X é chamada de comprimento do poset. Seja P = (N, ). Um ideal I N alinhado à esquerda desse poset é um subconjunto I N tal que j I e i j i I. O poset dual P é o conjunto N com o mesmo conjunto de cadeias de P, mas com a ordem invertida, isto é, j i em P i j em P. Escrevemos S P para nos referirmos ao subconjunto S N cujos elementos são ordenados de acordo com P. Para um subconjunto S P denotaremos por S = S P o menor P -ideal contendo o conjunto S. O suporte de um elemento x é o subconjunto supp(x) N formado pelos índices de todas as entradas não nulas de x. O conjunto supp(x) P será chamado suporte alinhado à esquerda de x. Seja P um poset definido em N e sejam x, y, F N q. Definiremos o peso de x com respeiro a P é ω(x) = supp(x), a distância entre x e y é definida como d P (x, y) = ω(x y) = supp(x y) e um código C de distância mínima d é um subconjunto próprio de F n q tal que para quaisquer vetores distintos x e y de C temos d P (x, y) d [3]. Se P é um poset sobre N, então a distância d P (x, y) = ω(x y) é uma métrica em F n q [3]. Um código linear C F n q com a métrica definida pela distância d P é denominado código poset. Uma motivação para o estudo dessa nova classe de códigos é que as métricas definidas sobre conjuntos parcialmente ordenados generalizam a métrica de Hamming: Observação 2.3 A métrica de Hamming é um caso particular de uma métrica poset, pois pode ser definida pela ordem parcial P que possui apenas uma anticadeia de tamanho n = N. No entanto, o raio de empacotamento de códigos poset lineares difere daquele obtido na métrica de Hamming clássica: Observação 2.4 Se C é um código poset linear, constituído por uma única cadeia e com distância mínima d, então o raio de empacotamento de C é κ = d 1. Em códigos ponderados por ordens parciais, também temos a definição do dual, definida da mesma forma anterior. No entanto, vale ressaltar que os pesos no dual C são considerados aqui de acordo com o poset dual P. Seja D um subespaço de F n q. Definimos supp(d) = supp(x) e o t-ésimo peso poset generalizado de um (n, k) código linear C como x D d t (C) = min { supp(d) ; D é um (n, t) subcódigo de C }, conforme visto em [12]. Cabe observar que d 1 (C) = d, onde d é a distância mínima de C. O conjunto {d r (C); 1 r k)} é chamado Hierarquia de P -pesos de C. 225
Os seguintes resultados sobre os pesos da hierarquia serão utilizados fortemente na caracterização dos códigos NMDS: Lema 2.5 [2][Lema da Monotocidade da Hierarquia dos pesos Generalizados] Seja C um (n, k) código poset linear em F n q. Então 0 < d 1 (C) < d 2 (C) <... < d k (C) n. Lema 2.6 [2][Limitante de Singleton Generalizado] Seja C um (n, k) código poset linear em F n q. Então d t (C) n dim(c) + t, t 1. Teorema 2.7 [2][Dualidade de Wei] Seja C um (n, k) código poset linear em F n q código dual. Considerando a hierarquia de pesos de C e o conjunto X = {d 1 (C), d 2 (C),..., d k (C)} Y = {n + 1 d 1 (C ), n + 1 d 2 (C ),..., n + 1 d n k (C )}, então X e Y são disjuntos e X Y = {1, 2,..., n}. O seguinte resultado é uma generalização do Teorema 2.2: e C o seu Teorema 2.8 [2] Seja C um (n, k) código poset linear em F n q e seja H a matriz teste de paridade de C. Então d t (C) = δ se, e somente se (a) Quaisquer δ 1 colunas alinhadas à esquerda de H têm posto no mínimo δ t; (b) Existem δ colunas alinhadas à esquerda de H com posto exatamente δ t. 3 Códigos NMDS e caracterizações Um (n, k, d) código linear C é chamado near-mds (NMDS) se d(c) = n k e d 2 (C) = n k + 2, isto é, o primeiro peso poset generalizado de C é uma unidade a menos que o limitante de Singleton e todos os outros pesos atingem o limitante. Nosso objetivo será fornecer caracterizações alternativas a esta definição de códigos NMDS. A primeira delas nos fornece uma caracterização em termos da matriz de paridade do código: Teorema 3.1 [2] Seja C F n q um (n, k, d) código linear no poset P. C é NMDS se e somente se (a) Quaisquer n k 1 colunas alinhadas à esquerda da matriz de paridade H são linearmente independentes; (b) Existem n k colunas de H alinhadas à esquerda linearmente dependentes; (c) Quaisquer n k + 1 colunas de H alinhadas à esquerda têm posto máximo. Além disso, um resultado conhecido para códigos MDS com a métrica poset [8] ainda continua válido para códigos NMDS sob esta métrica: Lema 3.2 [2] Seja C F n q um (n, k, d) código linear no poset P. Se C é NMDS, seu dual C também o é. Este lema nos ajuda em outra caracterização dos códigos NMDS. Teorema 3.3 [2] Seja C F n q um (n, k, d) código linear no poset P. C é NMDS se, e somente se, d(c) + d(c ) = n. Por fim, usando os três resultados anteriores, obtemos o seguinte teorema de existência: Corolário 3.4 [2] Seja C F n q um (n, k, d) código linear no poset P. Se C é NMDS então existe um código NMDS com parâmetros (n 1, k 1, d). 226
4 Considerações finais Os últimos teoremas nos fornecem caracterizações que nos ajudam a entender melhor a estrutura dos códigos NMDS e compará-los com os MDS. Como perspectivas futuras, utilizaremos estes resultados para estabelecer mais relações entre os códigos NMDS e MDS, mais precisamente quanto a discrepância MDS. Referências [1] J. Ahn, H. K. Kim, J. S. Kim, M. Kim, Classification of perfect linear codes with crown poset structure, Discrete Math, 268 (2003), no. 1-3, pp. 21-30. [2] A. Barg, P. Purkayastha, Near MDS Poset Codes and Distributions, Error-Correcting Codes, Finite Geometries, and Cryptography, AMS Series: Contemporary Mathematics, 523 (2010), pp.135-147. [3] R. A. Brualdi, J. S. Graves, K. M. Lawrence, Codes with a poset metric, Discrete Math, 147 (1995), no. 1-3, pp. 57-72. [4] S. T. Dougherty, M.M. Skriganov, Maximum distance separable codes in the ρ metric over arbitrary alphabets, J. Algebraic Combin., 16 (2002), no. 1, pp. 71-81. [5] A. Hefez, M. L. T. Villela, Códigos Corretores de Erros, 2 a Edição, Rio de Janeiro, IMPA, 2008. [6] D. S. Kim, S. H. Cho, Wheight distribution of the crown-wheight space, European J. Combin, 28 (2007), no 1, pp 356-370. [7] D. S. Kim, D. Y. Oh, A classification of posets admitting the MacWilliams identity, IEEE Trans. Inform. Theory, 51 (2005), no 4, pp 1424-1431. [8] A. O. Moura, Dualidade em Espaços Poset, Tese de doutorado, IMECC-Unicamp, 2010. [9] H. Niederreiter, A combinatorial problem for vector spaces over finite fields, Discrete Math 96 (1991) no 3, pp 221-228. [10] J. Neggers, H. S. Kim, Basic Posets, 1 a Edição, World Scientific, 1999. [11] L. Panek, M. Firer, M. M. S. Alves, Symmetry gropus of Rosenbloom-Tsfasman spaces, Discrete Math 309 (2009) no 4, pp 763-771. [12] V. Wei, Generalized Hamming wheights for linear codes, IEEE Trans. Infor. Theory 37 (1991), no. 5, 1412-1418. 227