Articulo de referencia

Teoría de la codificación

Visualización bidimensional de la distancia de Hamming , una medida fundamental en la teoría de la codificación. La teoría de la codificación estudia las propiedades de los códi...

Visualización bidimensional de la distancia de Hamming , una medida fundamental en la teoría de la codificación.

La teoría de la codificación estudia las propiedades de los códigos y su idoneidad para aplicaciones específicas. Los códigos se utilizan para la compresión de datos , la criptografía , la detección y corrección de errores , la transmisión y el almacenamiento de datos . Diversas disciplinas científicas, como la teoría de la información , la ingeniería eléctrica , las matemáticas , la lingüística y la informática , estudian los códigos con el fin de diseñar métodos de transmisión de datos eficientes y fiables . Esto suele implicar la eliminación de redundancias y la corrección o detección de errores en los datos transmitidos.

Hay cuatro tipos de codificación: [ 1 ]

  1. Compresión de datos (o codificación de fuente )
  2. Control de errores (o codificación de canal )
  3. Codificación criptográfica
  4. Codificación de línea

La compresión de datos intenta eliminar la redundancia no deseada de los datos de una fuente para transmitirlos de forma más eficiente. Por ejemplo, la compresión de datos DEFLATE reduce el tamaño de los archivos, con el fin de disminuir el tráfico de Internet. La compresión de datos y la corrección de errores pueden estudiarse conjuntamente .

La corrección de errores añade redundancia útil a los datos de una fuente para hacer que la transmisión sea más robusta frente a las perturbaciones presentes en el canal de transmisión. El usuario común puede desconocer muchas aplicaciones que utilizan la corrección de errores. Un disco compacto de música (CD) típico utiliza el código Reed-Solomon para corregir arañazos y polvo. En esta aplicación, el canal de transmisión es el propio CD. Los teléfonos móviles también utilizan técnicas de codificación para corregir el desvanecimiento y el ruido de las transmisiones de radio de alta frecuencia. Los módems de datos, las transmisiones telefónicas y la Red del Espacio Profundo de la NASA emplean técnicas de codificación de canal para transmitir los bits, por ejemplo, el código turbo y los códigos LDPC .

Historia de la teoría de la codificación

El estudio de la teoría de la información comenzó con la publicación del artículo clásico de Claude E. Shannon, " Una teoría matemática de la comunicación ", en el Bell System Technical Journal en julio y octubre de 1948, aunque Shannon había completado sustancialmente el artículo en Bell Labs a finales de 1944.

Shannon introdujo el modelo cualitativo y cuantitativo de la comunicación como un proceso estadístico, comenzando con la afirmación de que

"El problema fundamental de la comunicación consiste en reproducir en un punto, ya sea de forma exacta o aproximada, un mensaje seleccionado en otro punto."

Con ello llegaron las ideas de

El artículo de Shannon se centra en el problema de cómo codificar mejor la información que un emisor desea transmitir. En este trabajo fundamental, utilizó herramientas de la teoría de la probabilidad, desarrolladas por Norbert Wiener , que en aquel entonces se encontraban en sus primeras etapas de aplicación a la teoría de la comunicación. Shannon desarrolló la entropía de la información como medida de la incertidumbre en un mensaje, al tiempo que, en esencia, inventó el campo de la teoría de la información .

El código binario de Golay se desarrolló en 1949. Es un código corrector de errores capaz de corregir hasta tres errores en cada palabra de 24 bits y de detectar un cuarto.

Richard Hamming ganó el Premio Turing en 1968 por su trabajo en los Laboratorios Bell en métodos numéricos, sistemas de codificación automática y códigos de detección y corrección de errores. Inventó los conceptos conocidos como códigos de Hamming , ventanas de Hamming , números de Hamming y distancia de Hamming .

En 1972, Nasir Ahmed propuso la transformada discreta del coseno (DCT), que desarrolló con T. Natarajan y KR Rao en 1973. [ 2 ] La DCT es el algoritmo de compresión con pérdida más utilizado , la base de formatos multimedia como JPEG , MPEG y MP3 .

Codificación fuente

El objetivo de la codificación de código fuente es tomar los datos originales y reducir su tamaño.

Definición

Los datos pueden considerarse una variable aleatoria.incógnita:Ωincógnita{\displaystyle X:\Omega \to {\mathcal {X}}}, dóndeincógnitaincógnita{\displaystyle x\in {\mathcal {X}}}aparece con probabilidadPAG[incógnita=incógnita]{\displaystyle \mathbb {P} [X=x]}.

Los datos se codifican mediante cadenas (palabras) sobre un alfabeto.Σ{\displaystyle \Sigma }.

Un código es una función

do:incógnitaΣ{\displaystyle C:{\mathcal {X}}\to \Sigma ^{*}}(oΣ+{\displaystyle \Sigma ^{+}}si la cadena vacía no forma parte del alfabeto).

do(incógnita){\displaystyle C(x)}es la palabra clave asociada conincógnita{\displaystyle x}.

La longitud de la palabra clave se escribe como

l(do(incógnita)).{\displaystyle l(C(x)).}

La longitud esperada de un código es

l(do)=incógnitaincógnital(do(incógnita))PAG[incógnita=incógnita].{\displaystyle l(C)=\sum _{x\in {\mathcal {X}}}l(C(x))\mathbb {P} [X=x].}

La concatenación de palabras clavedo(incógnita1,,incógnitak)=do(incógnita1)do(incógnita2)do(incógnitak){\displaystyle C(x_{1},\ldots ,x_{k})=C(x_{1})C(x_{2})\cdots C(x_{k})}.

La palabra clave de la cadena vacía es la propia cadena vacía:

do(ϵ)=ϵ{\displaystyle C(\epsilon )=\epsilon }

Propiedades

  1. do:incógnitaΣ{\displaystyle C:{\mathcal {X}}\to \Sigma ^{*}}es no singular si es inyectivo .
  2. do:incógnitaΣ{\displaystyle C:{\mathcal {X}}^{*}\to \Sigma ^{*}}es decodificable de forma única si es inyectivo.
  3. do:incógnitaΣ{\displaystyle C:{\mathcal {X}}\to \Sigma ^{*}}es instantáneo sido(incógnita1){\displaystyle C(x_{1})}no es un prefijo adecuado dedo(incógnita2){\displaystyle C(x_{2})}(y viceversa).

Principio

La entropía de una fuente es la medida de la información. Básicamente, los códigos fuente intentan reducir la redundancia presente en la fuente y representarla con menos bits que contengan más información.

La compresión de datos que intenta explícitamente minimizar la longitud media de los mensajes según un modelo de probabilidad supuesto particular se denomina codificación entrópica .

Diversas técnicas empleadas en los esquemas de codificación de fuente buscan alcanzar el límite de entropía de la fuente. C ( x ) ≥ H ( x ), donde H ( x ) es la entropía de la fuente (tasa de bits) y C ( x ) es la tasa de bits después de la compresión. En particular, ningún esquema de codificación de fuente puede ser mejor que la entropía de la fuente.

Ejemplo

La transmisión por fax utiliza un código de longitud de ejecución simple . La codificación de la fuente elimina todos los datos superfluos para el transmisor, lo que reduce el ancho de banda necesario para la transmisión.

Codificación de canal

El objetivo de la teoría de codificación de canal es encontrar códigos que transmitan rápidamente, contengan muchas palabras clave válidas y puedan corregir o, al menos, detectar muchos errores. Si bien no son mutuamente excluyentes, el rendimiento en estas áreas implica una compensación. Por lo tanto, diferentes códigos son óptimos para diferentes aplicaciones. Las propiedades necesarias de este código dependen principalmente de la probabilidad de que se produzcan errores durante la transmisión. En un CD típico, el deterioro se debe principalmente al polvo o a los arañazos.

Los CD utilizan codificación Reed-Solomon entrelazada cruzada para distribuir los datos por el disco. [ 3 ]

Aunque no sea un código muy bueno, un código de repetición simple puede servir como un ejemplo comprensible. Supongamos que tomamos un bloque de bits de datos (que representan sonido) y lo enviamos tres veces. En el receptor, examinaremos las tres repeticiones bit a bit y realizaremos una votación mayoritaria. La particularidad reside en que no enviamos los bits en orden, sino que los intercalamos. El bloque de bits de datos se divide primero en cuatro bloques más pequeños. Luego, recorremos el bloque y enviamos un bit del primero, luego del segundo, y así sucesivamente. Esto se repite tres veces para distribuir los datos por toda la superficie del disco. En el contexto del código de repetición simple, esto puede no parecer efectivo. Sin embargo, se conocen códigos más potentes que son muy eficaces para corregir el error de "ráfaga" causado por un arañazo o una mancha de polvo cuando se utiliza esta técnica de intercalado.

Otros códigos son más apropiados para diferentes aplicaciones. Las comunicaciones en el espacio profundo están limitadas por el ruido térmico del receptor, que es de naturaleza más continua que intermitente. De igual manera, los módems de banda estrecha están limitados por el ruido presente en la red telefónica, que también se modela mejor como una perturbación continua. Los teléfonos celulares están sujetos a un desvanecimiento rápido . Las altas frecuencias utilizadas pueden causar un desvanecimiento rápido de la señal incluso si el receptor se mueve unos pocos centímetros. Nuevamente, existe una clase de códigos de canal diseñados para combatir el desvanecimiento.

Códigos lineales

El término teoría de la codificación algebraica designa el subcampo de la teoría de la codificación en el que las propiedades de los códigos se expresan en términos algebraicos y luego se investigan con mayor profundidad.

La teoría de la codificación algebraica se divide básicamente en dos tipos principales de códigos:

  • Códigos de bloques lineales
  • Códigos convolucionales

Analiza las siguientes tres propiedades de un código, principalmente:

  • longitud de la palabra del código
  • Número total de palabras clave válidas
  • La distancia mínima entre dos palabras clave válidas, utilizando principalmente la distancia de Hamming , a veces también otras distancias como la distancia de Lee.

Códigos de bloques lineales

Los códigos de bloque lineales poseen la propiedad de linealidad , es decir, la suma de dos palabras clave cualesquiera también constituye una palabra clave, y se aplican a los bits fuente en bloques, de ahí su nombre. Existen códigos de bloque que no son lineales, pero resulta difícil demostrar que un código sea bueno sin esta propiedad. [ 4 ]

Los códigos de bloques lineales se resumen por sus alfabetos de símbolos (por ejemplo, binario o ternario) y parámetros ( n , m , d min ) [ 5 ] donde

  1. n es la longitud de la palabra clave, en símbolos,
  2. m es el número de símbolos fuente que se utilizarán para la codificación a la vez,
  3. d min es la distancia de Hamming mínima para el código.

Existen muchos tipos de códigos de bloques lineales, como por ejemplo:

  1. Códigos cíclicos (por ejemplo, códigos de Hamming )
  2. Códigos de repetición
  3. Códigos de paridad
  4. Códigos polinomiales (por ejemplo, códigos BCH )
  5. Códigos de Reed-Solomon
  6. Códigos geométricos algebraicos
  7. Códigos de Reed-Muller
  8. Códigos perfectos
  9. Código recuperable localmente

Los códigos de bloques están vinculados al problema del empaquetamiento de esferas , que ha recibido cierta atención a lo largo de los años. En dos dimensiones, es fácil visualizarlo. Imaginemos un puñado de monedas planas sobre una mesa y las juntamos. El resultado es un patrón hexagonal, como un panal de abejas. Pero los códigos de bloques se basan en más dimensiones, que no se visualizan fácilmente. El potente código Golay (24,12) , utilizado en las comunicaciones del espacio profundo, utiliza 24 dimensiones. Si se usa como código binario (que es lo habitual), las dimensiones se refieren a la longitud de la palabra clave, tal como se definió anteriormente.

La teoría de la codificación utiliza el modelo de esfera N- dimensional. Por ejemplo, ¿cuántas monedas de un centavo caben en un círculo sobre una mesa? O, en 3 dimensiones, ¿cuántas canicas caben en un globo terráqueo? Otras consideraciones influyen en la elección de un código. Por ejemplo, el empaquetamiento de hexágonos dentro de una caja rectangular deja espacio vacío en las esquinas. A medida que las dimensiones aumentan, el porcentaje de espacio vacío disminuye. Sin embargo, en ciertas dimensiones, el empaquetamiento utiliza todo el espacio, y estos códigos se denominan códigos "perfectos". Los únicos códigos perfectos no triviales y útiles son los códigos de Hamming de distancia 3 con parámetros que satisfacen (2 r – 1, 2 r – 1 – r , 3), y los códigos binarios [23,12,7] y ternarios [11,6,5] de Golay. [ 4 ] [ 5 ]

Otra propiedad del código es el número de vecinos que puede tener una sola palabra clave. [ 6 ] Consideremos nuevamente las monedas de un centavo como ejemplo. Primero, colocamos las monedas en una cuadrícula rectangular. Cada moneda tendrá 4 vecinos cercanos (y 4 en las esquinas, que están más alejadas). En un hexágono, cada moneda tendrá 6 vecinos cercanos. Al aumentar las dimensiones, el número de vecinos cercanos aumenta muy rápidamente. Como resultado, el número de maneras en que el ruido puede hacer que el receptor elija un vecino (y, por lo tanto, un error) también aumenta. Esta es una limitación fundamental de los códigos de bloques, y de hecho de todos los códigos. Puede ser más difícil causar un error a un solo vecino, pero el número de vecinos puede ser lo suficientemente grande como para que la probabilidad total de error se vea afectada. [ 6 ]

Las propiedades de los códigos de bloques lineales se utilizan en muchas aplicaciones. Por ejemplo, la propiedad de unicidad síndrome-clase de los códigos de bloques lineales se utiliza en el modelado de enrejados, [ 7 ] uno de los códigos de modelado más conocidos .

Códigos convolucionales

La idea detrás de un código convolucional es que cada símbolo de la palabra clave sea la suma ponderada de los distintos símbolos del mensaje de entrada. Esto es similar a la convolución utilizada en sistemas LTI para hallar la salida de un sistema, cuando se conocen la entrada y la respuesta impulsional.

Por lo general, encontramos la salida del codificador convolucional del sistema, que es la convolución del bit de entrada, con respecto a los estados del codificador convolucional, los registros.

Fundamentalmente, los códigos convolucionales no ofrecen mayor protección contra el ruido que un código de bloques equivalente. En muchos casos, suelen ser más sencillos de implementar que un código de bloques de igual potencia. El codificador suele ser un circuito simple con memoria de estado y lógica de retroalimentación, normalmente compuertas XOR . El decodificador puede implementarse mediante software o firmware.

El algoritmo de Viterbi es el algoritmo óptimo para decodificar códigos convolucionales. Existen simplificaciones para reducir la carga computacional. Estas simplificaciones se basan en la búsqueda únicamente de las rutas más probables. Si bien no son óptimas, generalmente ofrecen buenos resultados en entornos con poco ruido.

Los códigos convolucionales se utilizan en módems de banda de voz (V.32, V.17, V.34) y en teléfonos móviles GSM, así como en dispositivos de comunicación satelital y militar.

Codificación criptográfica

La criptografía o codificación criptográfica es la práctica y el estudio de técnicas para la comunicación segura en presencia de terceros (llamados adversarios ). [ 8 ] En términos más generales, se trata de construir y analizar protocolos que bloqueen a los adversarios; [ 9 ] diversos aspectos de la seguridad de la información, como la confidencialidad de los datos , la integridad de los datos , la autenticación y el no repudio [ 10 ], son fundamentales para la criptografía moderna. La criptografía moderna se encuentra en la intersección de las disciplinas de las matemáticas , la informática y la ingeniería eléctrica . Las aplicaciones de la criptografía incluyen tarjetas de cajero automático , contraseñas de computadora y comercio electrónico .

Antes de la era moderna, la criptografía era prácticamente sinónimo de cifrado : la conversión de información legible a un formato aparentemente ilegible . El creador de un mensaje cifrado compartía la técnica de descifrado necesaria para recuperar la información original únicamente con los destinatarios previstos, impidiendo así que personas no autorizadas hicieran lo mismo. Desde la Primera Guerra Mundial y la llegada de la informática , los métodos utilizados en criptología se han vuelto cada vez más complejos y su aplicación, más generalizada.

La criptografía moderna se basa en gran medida en la teoría matemática y la práctica de la informática; los algoritmos criptográficos se diseñan en torno a supuestos de dificultad computacional , lo que hace que sean difíciles de romper en la práctica por cualquier adversario. Si bien teóricamente es posible romper un sistema de este tipo, resulta inviable hacerlo por cualquier medio práctico conocido. Por lo tanto, estos esquemas se denominan computacionalmente seguros; los avances teóricos, como las mejoras en los algoritmos de factorización de enteros y la mayor velocidad de la tecnología informática, exigen que estas soluciones se adapten continuamente. Existen esquemas teóricamente seguros desde el punto de vista de la información que, demostrablemente, no pueden romperse ni siquiera con una capacidad de cómputo ilimitada —un ejemplo es el cifrado de un solo uso— , pero estos esquemas son más difíciles de implementar que los mejores mecanismos teóricamente rompibles pero computacionalmente seguros.

Codificación de línea

Un código de línea (también llamado modulación de banda base digital o método de transmisión de banda base digital ) es un código elegido para su uso dentro de un sistema de comunicaciones con fines de transmisión en banda base .

La codificación de línea se utiliza frecuentemente para la transmisión de datos digitales. Consiste en representar la señal digital a transmitir mediante una señal discreta en amplitud y tiempo, optimizada para las propiedades específicas del canal físico (y del equipo receptor). El patrón de forma de onda de voltaje o corriente utilizado para representar los 1 y 0 de los datos digitales en un enlace de transmisión se denomina codificación de línea . Los tipos comunes de codificación de línea son la unipolar , la polar , la bipolar y la de Manchester .

Otras aplicaciones de la teoría de la codificación

Otra preocupación de la teoría de la codificación es el diseño de códigos que faciliten la sincronización . Un código puede diseñarse de manera que un desfase se detecte y corrija fácilmente, y que se puedan enviar múltiples señales por el mismo canal.

Otra aplicación de los códigos, utilizada en algunos sistemas de telefonía móvil, es el acceso múltiple por división de código (CDMA). A cada teléfono se le asigna una secuencia de códigos que no guarda una correlación significativa con los códigos de los demás teléfonos. Durante la transmisión, la palabra clave se utiliza para modular los bits de datos que representan el mensaje de voz. En el receptor, se realiza un proceso de demodulación para recuperar los datos. Las propiedades de este tipo de códigos permiten que varios usuarios (con códigos diferentes) utilicen el mismo canal de radio simultáneamente. Para el receptor, las señales de los demás usuarios solo se perciben como un ruido de baja intensidad.

Otro tipo general de códigos son los códigos de solicitud de repetición automática (ARQ). En estos códigos, el remitente añade redundancia a cada mensaje para la comprobación de errores, generalmente mediante la adición de bits de verificación. Si los bits de verificación no coinciden con el resto del mensaje al llegar, el receptor solicitará al remitente que lo retransmita. Todos los protocolos de red de área amplia, excepto los más sencillos , utilizan ARQ. Entre los protocolos comunes se incluyen SDLC (IBM), TCP (Internet), X.25 (Internacional) y muchos otros. Existe un amplio campo de investigación sobre este tema debido al problema de relacionar un paquete rechazado con un paquete nuevo. ¿Es un paquete nuevo o una retransmisión? Normalmente se utilizan esquemas de numeración, como en TCP. "RFC793" . RFCS . Grupo de Trabajo de Ingeniería de Internet (IETF). Septiembre de 1981.

Pruebas grupales

Las pruebas grupales utilizan códigos de una manera diferente. Consideremos un grupo grande de elementos en el que muy pocos difieren de una manera particular (por ejemplo, productos defectuosos o sujetos de prueba infectados). La idea de las pruebas grupales es determinar qué elementos son "diferentes" utilizando la menor cantidad de pruebas posible. El origen del problema se remonta a la Segunda Guerra Mundial , cuando las Fuerzas Aéreas del Ejército de los Estados Unidos necesitaban realizar pruebas de sífilis a sus soldados . [ 11 ]

Codificación analógica

La información se codifica de forma análoga en las redes neuronales del cerebro , en el procesamiento de señales analógicas y en la electrónica analógica . Algunos aspectos de la codificación analógica incluyen la corrección de errores analógica, [ 12 ] la compresión de datos analógica [ 13 ] y el cifrado analógico. [ 14 ]

Codificación neuronal

La codificación neuronal es un campo relacionado con la neurociencia que se ocupa de cómo la información sensorial y de otro tipo se representa en el cerebro mediante redes de neuronas . El objetivo principal del estudio de la codificación neuronal es caracterizar la relación entre el estímulo y las respuestas neuronales individuales o en conjunto, así como la relación entre la actividad eléctrica de las neuronas en el conjunto. [ 15 ] Se cree que las neuronas pueden codificar información tanto digital como analógica , [ 16 ] y que siguen los principios de la teoría de la información y comprimen la información, [ 17 ] y detectan y corrigen [ 18 ] errores en las señales que se envían a través del cerebro y el sistema nervioso en general.

Véase también

Notas

  1. James Irvine; David Harle (2002). "2.4.4 Tipos de codificación". Comunicaciones de datos y redes . John Wiley & Sons. pág. 18. ISBN  9780471808725Existen cuatro tipos de codificación .
  2. Nasir Ahmed . "Cómo desarrollé la transformada discreta del coseno" . Procesamiento digital de señales, vol. 1, núm. 1, 1991, págs. 4-5.
  3. Todd Campbell. "Answer Geek: CD de reglas de corrección de errores" .
  4. 1 2 Terras, Audrey (1999). Análisis de Fourier en grupos finitos y aplicaciones . Cambridge University Press . pág . 195. ISBN  978-0-521-45718-7.
  5. 1 2 Blahut, Richard E. (2003). Códigos algebraicos para la transmisión de datos . Cambridge University Press. ISBN 978-0-521-55374-2.
  6. 1 2 Christian Schlegel; Lance Pérez (2004). Trellis y codificación turbo . Wiley-IEEE. pág. 73. ISBN  978-0-471-22755-7.
  7. Forney, GD Jr. (marzo de 1992). "Tallado de enrejados". IEEE Transactions on Information Theory . 38 (2 Pt 2): 281– 300. doi : 10.1109/18.119687 . S2CID 37984132 . 
  8. Rivest, Ronald L. (1990). "Criptología". En J. Van Leeuwen (ed.). Manual de informática teórica . Vol. 1. Elsevier. 
  9. ^ Bellare, Mihir; Rogaway, Phillip (21 de septiembre de 2005). "Introducción". Introducción a la criptografía moderna . pag. 10. 
  10. Menezes, AJ; van Oorschot, PC; Vanstone, SA (1997). Manual de criptografía aplicada . Taylor & Francis. ISBN 978-0-8493-8523-0.
  11. Dorfman, Robert (1943). "La detección de miembros defectuosos de grandes poblaciones" . Annals of Mathematical Statistics . 14 (4): 436– 440. doi : 10.1214/aoms/1177731363 .
  12. Chen, Brian; Wornell, Gregory W. (julio de 1998). "Códigos de corrección de errores analógicos basados ​​en sistemas dinámicos caóticos" (PDF) . IEEE Transactions on Communications . 46 (7): 881– 890. CiteSeerX 10.1.1.30.4093 . doi : 10.1109/26.701312 . Archivado del original (PDF) el 27 de septiembre de 2001. Recuperado el 30 de junio de 2013 . 
  13. Novak, Franc; Hvala, Bojan; Klavžar, Sandi (1999). "Sobre el análisis de firmas analógicas". Actas de la conferencia sobre diseño, automatización y pruebas en Europa . CiteSeerX 10.1.1.142.5853 . ISBN  1-58113-121-6.
  14. Shujun Li; Chengqing Li; Kwok-Tung Lo; Guanrong Chen (abril de 2008). "Criptoanálisis de un esquema de cifrado basado en separación ciega de fuentes" (PDF) . IEEE Transactions on Circuits and Systems I. 55 ( 4): 1055–63 . arXiv : cs/0608024 . doi : 10.1109/TCSI.2008.916540 . S2CID 2224947 . 
  15. Brown EN, Kass RE, Mitra PP (mayo de 2004). "Análisis de datos de trenes de picos neuronales múltiples: estado del arte y desafíos futuros" ( PDF) . Nature Neuroscience . 7 (5): 456– 461. doi : 10.1038/nn1228 . PMID 15114358. S2CID 562815 .  
  16. Thorpe, SJ (1990). "Tiempos de llegada de picos: Un esquema de codificación altamente eficiente para redes neuronales" (PDF) . En Eckmiller, R.; Hartmann, G.; Hauske, G. (eds.). Procesamiento paralelo en sistemas neuronales y computadoras (PDF) . North-Holland. pp. 91–94 . ISBN  978-0-444-88390-2Consultado el 30 de junio de 2013 .
  17. Gedeon, T.; Parker, AE; Dimitrov, AG (Primavera de 2002). "Distorsión de la información y codificación neuronal" . Canadian Applied Mathematics Quarterly . 10 (1): 10. CiteSeerX 10.1.1.5.6365 . Archivado del original el 17 de noviembre de 2016. Recuperado el 30 de junio de 2013 . 
  18. Stiber, M. (julio de 2005). "Precisión de sincronización de picos y corrección de errores neuronales: comportamiento local". Neural Computation . 17 (7): 1577– 1601. arXiv : q-bio/0501021 . doi : 10.1162 /0899766053723069 . PMID 15901408. S2CID 2064645 .  

Referencias