Skip to content

Caballeros y escuderos: acertijo 5

Jesús Arroyo Torrens edited this page May 29, 2017 · 3 revisions

Enunciado

En la isla de los caballeros y los escuderos se encuentran tres habitantes: A, B y C. A dice, «B y C son del mismo tipo». Alguien pregunta entonces a C, «¿Son A y B del mismo tipo?». ¿Qué responde C?


Descripción formal

En la isla de los caballeros y los escuderos se encuentran tres habitantes: A, B y C.

Tenemos tres parámetros de entrada A, B y C.


A dice, «B y C son del mismo tipo».

A dice una única frase P (+info):

A ↔ P

La sentencia P afirma que B y C son del mismo tipo: son ambos caballeros (1) o ambos escuderos (0). Por lo tanto:

A: P = (B ↔ C)


Alguien pregunta entonces a C, «¿Son A y B del mismo tipo?». ¿Qué responde C?

Si A y B fueran del mismo tipo y C fuera caballero o si A y B fueran de distinto y C fuera un escudero debería responder «Sí». En los casos contrarios respondería «No». Veamos qué podemos determinar.

Circuito digital

Entradas y salidas

Añadimos las entradas A, B y C (conectadas a LED0, LED1 y LED2, respectivamente) y una señal de salida S (conectada al LED7) que se activará cuando el circuito encuentre una solución.

A ↔ P

La operación bicondicional se implementa mediante una puerta XNOR (+info).

A: P = (B ↔ C)

La sentencia P indica otra relación bicondicional, entre B y C, por lo que utilizaremos otra puerta XNOR.

Descargar circuito en Icestudio

Resolución en FPGA

Para resolver el circuito añadimos un bloque que comprueba todas las posibilidades y encuentra la solución o soluciones correctas (+info). Sintetizamos este circuito en la FPGA.

Descargar circuito de pruebas en Icestudio

Solución

Al sintetizar y descargar el circuito obtenemos cuatro soluciones distintas (accedemos a ellas pulsando el botón Next):

(1, 0, 0)
(0, 1, 0)
(0, 0, 1)
(1, 1, 1)

Deducimos que si C es escudero: (1, 0, 0) (0, 1, 0), A y B son de distinto tipo. Si C es caballero: (0, 0, 1) (1, 1, 1), A y B son ambos escuderos o ambos caballeros, por lo que a la pregunta «¿Son A y B del mismo tipo?», C respondería siempre «Sí».

Conclusiones

  • Una puerta XNOR permite determinar si dos señales son iguales

Referencias

  • Raymond Smuyllan, ¿Cómo se llama este libro? Capítulo 3: Caballeros y Escuderos [35] (1989) Ediciones Cátedra, S.A. [1]