next up previous contents
Siguiente: Bibliography Arriba: Terceras listas Anterior: Ejercicios

Programas



1. Escriba un programa que reciba un polinomio $g(X)\in\mathbb{F}_2[X]$ de grado $m\in\mathbb{N}$, y un entero $n>m$, y realice las funciones siguientes:

  1. Calcule la matriz generatriz del código-$[n,n-m]$ cíclico $C$ generado por $g(X)$.
  2. Calcule la matriz revisora de paridad del código $C$.
  3. Calcule a todos los polinomios en el código $C$.



2. Escriba un programa que reciba un polinomio $g(X)\in\mathbb{F}_2[X]$ de grado $m\in\mathbb{N}$, localice primeramente un entero $n>m$ tal que $g(X)\vert(X^n+1)$, y luego realice las funciones siguientes:

  1. Construya un arreglo estándar del código-$[n,n-m]$ cíclico $C$ generado por $g(X)$. Para esto a cada polinomio $e(X)=\sum_{\nu=0}^n \varepsilon_{\nu}X^{\nu}\in\mathbb{F}_2[X]$ le debe asociar su síndrome $e(X)\,\mbox{mod}\,g(X)$.
  2. Codificación no-sistemática: Dado $a(X)\in\mathbb{F}_2[X]$ de grado a lo sumo $n-m-1$ produce su código $c(X)=a(X)g(X)$.
  3. Decodificación no-sistemática: Dado $c(X)\in\mathbb{F}_2[X]$ de grado $n-1$, decide si está en el código en cuyo caso recupera $a(X)$ tal que $c(X)=a(X)g(X)$, mas si no estuviera, bajo la suposición de que hay menos de $d$ errores, donde $2d+1$ es la distancia mínima de $C$, los corrige y recupera el mensaje original $a(X)$.
  4. Codificación sistemática: Dado $a(X)\in\mathbb{F}_2[X]$ de grado a lo sumo $n-m-1$ produce su código $c(X)=-\left[X^{m}a(X),\mbox{mod}\,g(X)\right] + X^{m}a(X)$.
  5. Decodificación sistemática: Dado $c(X)\in\mathbb{F}_2[X]$ de grado $n-1$, decide si está en el código en cuyo caso recupera $a(X)$ tal que $c(X)=-\left[X^{m}a(X),\mbox{mod}\,g(X)\right] + X^{m}a(X)$, mas si no estuviera, bajo la suposición de que hay menos de $d$ errores, los corrige y recupera el mensaje original $a(X)$.



3. Estructura multiplicativa de $\mathbb{F}_{2^k}$. Escriba un programa que reciba un primo $p$, un entero positivo $n$ y calcule las tablas de adición y de producto de $\mathbb{F}_{p^n}$, donde sus elementos se ven como palabras de longitud $n$ de símbolos en $\mathbb{F}_p$.



4. Codificación de Reed-Solomon. Escriba un programa que, dados los parámetros $q$ (potencia de un primo) y $k\in\mathbb{N}$, reciba como entrada una palabra $\sigma\in\mathbb{F}_q^k$ y calcule su código $\tau\in \mathbb{F}_q^{q-1}$ de acuerdo con el código $\mbox{\rm RS}(q-1,k)$. (Vea el ejemplo 8.4.)



5. Decodificación PGZ de Reed-Solomon. Escriba un programa que, dados los parámetros $q$ (potencia de un primo) y $k\in\mathbb{N}$, reciba como entrada una palabra $h\in\mathbb{F}_q^{q-1}$, calcule el elemento $f\in\mbox{\rm RS}(q-1,k)$ más cercano a ella, de acuerdo con el procedimiento descrito en la sección 8.6.1, y luego recupere la palabra $\sigma\in\mathbb{F}_q^k$ codificada.



6. Decodificación mediante Euclides de Reed-Solomon. Escriba un programa que, dados los parámetros $q$ (potencia de un primo) y $k\in\mathbb{N}$, reciba como entrada una palabra $h\in\mathbb{F}_q^{q-1}$, calcule el elemento $f\in\mbox{\rm RS}(q-1,k)$ más cercano a ella, de acuerdo con el procedimiento descrito en la sección 8.6.2, y luego recupere la palabra $\sigma\in\mathbb{F}_q^k$ codificada.


next up previous contents
Siguiente: Bibliography Arriba: Terceras listas Anterior: Ejercicios
Guillermo M. Luna
2010-05-09