MakarovSuites
Español
EnglishDeutschРусскийУкраїнськаFrançaisEspañolItalianoPolski
Contacto y licencias

Math

Un código que se repara solo

Dieciséis bits en un cuadrado, once de ellos un mensaje: pulse uno y las cuatro lámparas de control deletrean su dirección, y el bloque se arregla solo. Dos errores se detectan pero no se reparan; con tres, el bloque miente con seguridad. Cada afirmación es exhaustiva: los 32 768 errores simples localizados, los 245 760 dobles detectados, todos los triples mal corregidos.

Un código que se repara solo — Imagen real de la aplicación
Imagen real de la aplicación

Qué ocurre

Dieciséis bits dispuestos cuatro por cuatro. Once llevan un mensaje; cuatro son controles de paridad en las potencias de dos (1, 2, 4, 8), y un quinto en la posición 0 controla todo el cuadrado. Cada control vigila exactamente la mitad del bloque. Como cada índice pertenece a una combinación distinta de controles, las cuatro respuestas juntas no son una alarma sino una DIRECCIÓN: el o-exclusivo de los índices de todos los bits encendidos es el número escrito bajo la casilla equivocada. Pulse una segunda y el bloque sigue sabiendo que algo falla: el decimosexto bit separa «corregir un error» de «corregir uno y saber que hay dos». Con la tercera el código miente: señala una casilla con total seguridad y devuelve el mensaje equivocado. La distancia cuatro compra una reparación y dos detecciones, nada más. Sin ese decimosexto bit el código es PERFECTO en sentido técnico: 2048 palabras, cada una con quince vecinas, y 2048 × 16 = 32 768 = 2¹⁵ exactamente. Es la aritmética de la memoria ECC, de cada código QR y de todo disco óptico; por eso un CD rayado sigue sonando.

Ecuaciones del módulo
Ecuaciones
síndrome:  s = XOR de los índices de cada bit activado;  s = 0 significa que las cuatro comprobaciones coinciden, y s ≠ 0 ES la dirección del bit erróneo
comprobaciones:  la comprobación p vigila todo índice i con (i AND p) ≠ 0;  p = 1, 2, 4, 8, y la posición 0 comprueba el cuadrado entero
veredicto:  s = 0 y paridad par → íntegro;  paridad impar → un error en s (s = 0 significa el propio bit 0);  s ≠ 0 y paridad par → dos errores, detectados y no reparables
código perfecto:  Hamming(15,11) tiene 2^11 = 2048 palabras de código, cada una con 15 vecinas a un bit de distancia;  2048 × 16 = 32 768 = 2^15 exactamente - las esferas de radio uno teselan el espacio sin dejar nada fuera
distancia:  d = 3 para Hamming(15,11), d = 4 con el bit del cuadrado entero;  corregir t errores exige d ≥ 2t + 1, detectar t exige d ≥ t + 1
exhaustivo:  32 768 casos de un solo bit, 0 mal localizados;  245 760 casos de dos bits, 0 no detectados y 0 mal corregidos;  35 840 casos de tres bits, todos los 35 840 "corregidos" erróneamente
tasa:  11 bits de mensaje por cada 16 enviados = 68.75 %;  Hamming(7,4) 57.1 %, Hamming(31,26) 83.9 %, Hamming(63,57) 90.5 % - los bloques más largos son un seguro más barato y pierden más con un segundo error

Otros experimentos

Volver al catálogo
Cuencas del método de Newton — Imagen real de la aplicación

Math

Cuencas del método de Newton

Coloree cada punto de partida según la raíz a la que llega el método de Newton: con dos raíces la frontera es una recta, como demostró Cayley en 1879, y con tres es un fractal que las tres cuencas comparten. Arrastre una raíz y vea moverse las áreas: una raíz tirada hacia fuera se queda con MENOS de la ventana, no con más.

Paseos aleatorios y PageRank — Imagen real de la aplicación

Math

Paseos aleatorios y PageRank

Sigue la masa de probabilidad a través de un gráfico dirigido y compara la iteración de potencia con una multitud de caminantes al azar. Compara un ciclo periódico con un gráfico cuyos nodos colgantes sin parche pierden masa.

La catástrofe de cúspide — Imagen real de la aplicación

Math

La catástrofe de cúspide

Arrastre una perilla y el estado se desliza hasta que su rama se acaba - entonces salta, y volver atrás no lo deshace. Gire la segunda perilla por encima de la cúspide y el salto desaparece del todo: el ciclo de histéresis allí no es pequeño, es exactamente cero. Anchura 4·(−a/3)^(3/2), altura del salto 3·√(−a/3), comprobables en la imagen.