Dos problemas de lógica por el precio de uno

 

 

En el libro «In Code» de Sarah Flannery y David Flannery se cuenta la siguiente historia que, dejando aparte sus visos de leyenda, plantea un bonito problema de lógica cuya solución se conoce (teoría de la información, comunicaciones, criptografía) con el nombre de protocolo de conocimiento cero, para indicar que no implica revelar el secreto de ningún dato particular.

 

En una fiesta que reunía a un grupo de matemáticos se planteó el problema de averiguar el promedio de sus ingresos con la condición de que no revelar ningún dato particular. Mientras los sesudos implicados consideraban el problema, se dice que la hija de uno de ellos levantó la mano a la vez que exclamaba “Ya sé cómo”, y explicaba seguidamente el método.

 

Se supone que los matemáticos no mienten nunca, acostumbrados como están en perseguir siempre la verdad estricta, y que además todos están verdaderamente interesados en conocer la respuesta cierta. Para la solución (o quizá sería mejor decir para una solución) acuda a la página xxx.

 

La niña sugirió soplar un número elevado elegido al azar a uno de los matemáticos. Este debía sumar la cifra de sus ingresos a dicho número, escribir el resultado en un trozo de papel y pasarlo al siguiente colega. Este debía escribir una nueva nota con la suma del anterior resultado y sus ingresos y pasarla al compañero siguiente, guardando la nota recibida (o devolviéndola al que se la entregó, o incluso destruyéndola, si se quiere). Cuando todos los matemáticos presentes han participado en el procedimiento, el último de ellos entrega su nota a la niña, la cual resta su número secreto del total y divide el resto por el número de matemáticos.

 

Y ahora viene el segundo problema, porque vengo yo y hago notar que la niña de la historia puede muy bien mentir, dado que no es matemática. Es posible que quiera quedarse para sí con la cifra real pero que tenga interés en confundir a los reunidos comunicando un valor menor, por ejemplo. ¿Qué procedimiento podría establecerse para certificar que el resultado es seguro, en el supuesto de que ninguno de los matemáticos haya mentido, y que respete la condición de que ninguno de ellos pueda conocer la cifra de ingresos de otro de sus colegas?

 

Para una solución, vaya a la página yyy.

 

Ojo, no vale hacer público el número pensado por la niña, pues el matemático número dos conocería enseguida los ingresos del número uno. Una solución podría consistir en que la niña escribiera su número en un papel que se guardara aparte. El matemático que comienza tiene acceso a dicho papel, y él mismo es el encargado de efectuar los cálculos finales y comunicar el resultado. Para inspirar mayor confianza, puede acompañarlo a verificar el número el último de los que intervinieron en el procedimiento.

 

                                                                                              Pedro Crespo, julio 2006