-
Notifications
You must be signed in to change notification settings - Fork 2
Caballeros y escuderos: acertijo 3
En la isla de los caballeros y los escuderos se encuentran dos habitantes: A y B.
Tenemos dos parámetros de entrada A y B.
En este caso la sentencia de A es, «Yo soy escudero, pero B no lo es».
A dice una única frase P (+info):
A ↔ P
Definimos la frase P como «Yo soy escudero, pero B no lo es». La frase será verdadera (1) cuando ambas condiciones sean verdaderas al mismo tiempo. Esta ecuación es:
A: P = ¬A ∧ B
¿Qué son A y B?
Entradas y salidas
Añadimos las entradas A y B (conectadas a LED0 y LED1, respectivamente) y una señal de salida S (conectada a 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 = ¬A ∧ B
Vamos a representar la ecuación de conjunción entre ¬A,B con una puerta AND (+info).
Finalmente incluimos una puerta NOT (+info) para definir la subecuación ¬A.
Descargar circuito final en Icestudio
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
Al sintetizar y descargar el circuito aparece una solución en (0, 0). Pulsando Next se llega al final sin encontrar nuevas soluciones. La solución (0, 0) es única.
(0, 0) |
---|
![]() |
Por lo tanto tenemos que (A, B) = (0, 0). A y B son escuderos.
- Una puerta AND permite determinar si todas las señales valen 1
- Raymond Smuyllan, ¿Cómo se llama este libro? Capítulo 3: Caballeros y Escuderos [33] (1989) Ediciones Cátedra, S.A. [1]