Carnaval de Matemáticas: El código secreto del profesor Moriarty en la película “Sherlock Holmes: Juego de sombras”

El profesor James Moriarty, el archienemigo de Sherlock Holmes, era “un genio de las matemáticas,” además del “Napoleón del crimen.” La primera vez que aparece en la película “Sherlock Holmes: Juego de sombras” lo hace delante de un pizarra repleta de fórmulas matemáticas. El contenido de la pizarra fue diseñado en el verano de 2010 por Alain Goriely y Derk E. Moulton, del Oxford Centre for Collaborative Applied Mathematics. Refleja la matemática conocida en su época (hacia 1890) y al mismo tiempo oculta un código secreto que revela los malvados planes de Moriarty (código que debe descifrar Holmes). Nos lo cuentan en Alain Goriely and Derek E. Moulton, “The Mathematics Behind Sherlock Holmes: A Game of Shadows,” SIAM News 45, April 14 2012.

Como Moriarty estaba obsesionado con el teorema del binomio, según la propia obra de Conan Doyle, se decidió ocultar el código secreto en un triángulo de Pascal. Las letras del mensaje se cifran gracias a un libro de horticultura que Moriarty guarda en su oficina. Cada letra se codifica con tres números de dos dígitos (entre 01 y 99) que especifican la página del libro, la línea y el carácter dentro de la línea. Mediante este cifrado el mensaje se convierte en una lista de números. Para cifrar esta lista se utiliza una clave pública y un algoritmo de codificación. La clave pública es un número entero p. Para cada entero p, se obtiene la sucesión de números de Fibonacci tipo p, dada por la fórmula Fp(n) = Fp(n–1) + Fp(n–p–1), con Fp(0) = 1, y Fp(n) = 0, para n < 0. Esta sucesión se puede obtener sumando la diagonal p-ésima del triángulo de Pascal. Para p = 0 la serie Fp(n) corresponde a las potencias de dos (pues la “diagonal” es horizontal) y para p=1 se obtienen los números de Fibonacci convencionales (la figura de arriba ilustra el procedimiento para definir esta “diagonal”). ¿Has entendido el procedimiento? Compruébalo verificando que para p=3 se obtienen los números 1, 2, 3, 4, 5, 7, 10, 14, 19, 26, 36, 50, …

Una vez elegida la clave pública p es posible representar cualquier número entero N de dos dígitos (entre 01 y 99) de forma única como suma de dos números de Fibonacci tipo p, es decir, N = Fp(n) + m, con m<Fp(n–p). ¿Te atreves a demostrarlo? Veamos un ejemplo de cifrado utilizando la clave pública p = 3. Supongamos que el mensaje consta de los caracteres 10, 5, 3 y 20 de la línea 10 de la página 23, seguidos de los caracteres 4, 18, 33 y 12 de la línea 17 de la misma página (23). En dicho caso tendremos que cifrar los números

23 10 10 05 03 20

23 17 04 18 33 12

El número 23 = 4 + 19, luego corresponde a la suma de los ordinales 4 y 9 de la sucesión Fp(n) con p=3, por tanto, 23 se cifra como 0409. Aplicando esta regla, los números se cifrarán como

0409 07 07 05 03 0109

0409 0308 04 0408 0610 0207

¿Has entendido cómo se obtienen estos números? Trata de replicar el proceso por tu cuenta. Obviamente, por complicado que sea el sistema de cifrado de Moriarty, no puede competir con el intelecto de Holmes, que descubre todos sus secretos.

En la película, Moriarty imparte una conferencia (en la que transmite la clave pública a sus acólitos). Goriely y Moulton también diseñaron el contenido de la charla para que fuera plausible alrededor de 1895, sabiendo que Conan Doyle afirma que Moriarty estaba trabajando en la dinámica de asteroides y que debía ser un resultado lo suficientemente importante como para justificar que estuviera de gira por toda Europa impartiendo dicha charla. Goriely y Moulton consideraron los siguientes tres problemas.

El primer problema fue la solución de George Hill al problema restringido de los tres cuerpos (1878), que permite calcular el movimiento de la Luna (o de un asteroide) sometido a la atracción gravitatoria de la Tierra y el Sol.

El segundo problema fue la solución al problema de los N cuerpos dada por Henri Poincaré (publicada en 1892) que le permitió ganar un premio concedido por Óscar II, Rey de Suecia y Noruega. En la primera edición, Poincaré cometió un error importante (que más tarde le llevó a descubrir el efecto mariposa (la sensibilidad a las condiciones iniciales) y el caos, que en sistemas que conservan la energía se llama estocasticidad). Moriarty podría haber descubierto el error en la obra de Poincaré y siendo un malvado no tendría reparos en despotricar contra los matemáticos franceses.

El tercer problema sería el trabajo en colisiones entre masas en interacción gravitatoria de Paul Painlevé, que expuso en 1895 en Estocolmo invitado por el rey Óscar II. El trabajo de Painlevé complementa el de Poincaré y tuvo una gran importancia histórica. Como Painlevé fue  dos veces primer ministro de la Tercera República Francesa en 1917 y 1925, y fue Ministro de Defensa durante la Primera Guerra Mundial, bien podría haber sido el alter ego de Moriarty.

Al final, se decidieron por este último problema.

¿Y la pizarra de Moriarty? En diciembre de 2010, Goriely y Moulton  fueron invitados al rodaje de la escena en la que aparece la pizarra. Tras esperar muchas horas vieron la pizarra y para su sorpresa estaba llena de errores. Pasaron muchas horas junto a un calígrafo profesional rectificando dichos errores (sobre todo, cuidando que los subíndices y demás símbolos matemáticos fueran bien escritos, pues el calígrafo no tenía formación matemática alguna). Abajo tenéis el resultado final, pinchad en la imagen para ampliarla y disfrutarla mejor.

Esta es mi segunda contribución para la 3,14159 Edición del Carnaval de Matemáticas, alojado por José Manuel López Nicolás en su blog Scientia. Como ya dije en la primera, seguro que José Manuel preferiría entradas sobre matemáticas aplicadas a la biotecnología, pero tendrá que esperar a …

6 pensamientos en “Carnaval de Matemáticas: El código secreto del profesor Moriarty en la película “Sherlock Holmes: Juego de sombras”

  1. Un post genial!
    La única duda que tengo es… se deben eliminar los unos extras que aparecen al principio de cada secuencia. Por ejemplo en la sucesión de Fibonacci si que se han incluido los dos primeros unos, pero en cambio para F_p con p=3 se han eliminado dos unos más que habría al principio.

  2. Quizás sea aventurarme demasiado en darte la enhorabuena por doble mérito: el excelente post y ser la mejor entrada del carnaval. Pero es que el nivel aquí mostrado tiene difícil superación.

  3. Sé que este post es relativamente antiguo (esperé a leerlo hasta después de ver la película para no estropear ninguna sorpresa) pero ahora leyéndolo ha habido una frase que me ha chocado bastante: “el caos, que en sistemas que conservan la energía se llama estocasticidad”.
    Tenía entendido que el caos y la aleatoriedad son cosas muy diferentes. De hecho creo que hay sistemas que conservan la energía y aún así presentan caos (como el Hénon-Heiles). No sé si ha sido un lapsus o te refieres a otra cosa con estocasticidad o hay algún detalle que se me escapa, pero yo normalmente asocio caos con un proceso determinista y estocasticidad con un proceso aleatorio. Espero que me puedas aclarar el punto si es que lo hay.
    Un saludo y gracias!

  4. He hecho el cálculo y para «p=3» se obtiene la serie: 1,1,1,1,2,3,4,5,7,10,14,… y no 1, 2, 3, 4, 5, 7, 10, 14, 19, 26, 36, 50,… ¿Alguien podría hacer el mismo cálculo e informarme si estoy cometiendo algún error?

Los comentarios están cerrados.