¿Es posible derivar una función booleana personalizada de una tabla de verdad en términos de operadores booleanos conocidos?

¿Y cómo se haría?

Estoy haciendo un proyecto de programación que requiere que propague señales de entrada a través de un circuito que consta de diferentes tipos de puertas lógicas. Una de las puertas que necesito implementar es una personalizada cuya tabla de verdad es:

+---------+---------+---------+--------+
| Input 1 | Input 2 | Input 3 | Output |
+---------+---------+---------+--------+
|       0 |       0 |       0 |      1 |
|       0 |       0 |       1 |      1 |
|       0 |       1 |       0 |      0 |
|       0 |       1 |       1 |      0 |
|       1 |       0 |       0 |      1 |
|       1 |       0 |       1 |      0 |
|       1 |       1 |       0 |      0 |
|       1 |       1 |       1 |      0 |
+---------+---------+---------+--------+

No estoy muy familiarizado con las funciones booleanas, la lógica digital, etc., por lo que cualquier ayuda o conocimiento es muy apreciado.

Si estuviera diseñando con transistores, podría hacer una puerta personalizada para implementar esto. Pero si está programando una computadora para simularlo, está atascado con las operaciones lógicas que ofrece su lenguaje de programación.
Si tiene ganas de estudiar un poco, Diseño lógico digital es un texto útil. Puede saltar a la página 27 "Circuito combinatorio".

Respuestas (1)

Sí. Esto podría hacerse mediante inspección o mediante mapas de Karnaugh . Aunque hay diferentes métodos.

El método más básico es expresar la salida obtenida de la tabla de verdad, como suma de productos o productos de sumas, siguiendo las reglas del álgebra booleana .
Así, se logra la función de expresión canónica descrita por la tabla de verdad.
Mediante el mapa de Karnaugh, puede reducir esa función lógica.