Apuntes Álgebra de Boole
Apuntes Álgebra de Boole
Apuntes Álgebra de Boole
BOOLE
ÁLGEBRA BOOLEANA
Expresiones y funciones
Propiedades
Representación Simplicación
Aplicaciones
OBJETIVOS
La teoría de conjunto y el cálculo proposicional en lógica, satisfacen leyes similares. Estas leyes
sirven para definir una estructura matemática abstracta denominada álgebra booleana. Una vez
que se demuestra que una estructura concreta es un álgebra de Boole, todos los resultados
enunciados para un álgebra de Boole genérica serán válidos en esa estructura particular.
Las álgebras booleanas se pueden definir de distintas maneras, la más común es especificar las
propiedades que deben satisfacer las operaciones.
Definición
Un álgebra booleana B, consta de un conjunto S, dos elementos distintos 0 y 1, los
𝑥+𝑦 =𝑦+𝑥
Leyes conmutativas { 𝑥 ∙ 𝑦 = 𝑦 ∙ 𝑥
𝑥 ∙ (𝑦 + 𝑧) = (𝑥 ∙ 𝑦) + (𝑥 ∙ 𝑧)
Leyes distributivas {
𝑥 + (𝑦 ∙ 𝑧) = (𝑥 + 𝑦) ∙ (𝑥 + 𝑧)
𝑥+0 =𝑥
Leyes del elemento neutro {
𝑥∙1=𝑥
Como en la notación estándar, por lo general se abreviará 𝑎 ∙ 𝑏 como 𝑎𝑏, como también se
supondrá que el operador ∙ se evaluará primero que +. Todo esto permite eliminar algunos
paréntesis y escribir de manera menos engorrosas algunas expresiones, por ejemplo se puede
escribir (𝑥 ∙ 𝑦) + 𝑧 de manera más sencilla como 𝑥𝑦 + 𝑧.
Respecto a la definición anterior se debe destacar que 0 y 1 son solo nombres simbólicos y, en
general no tienen nada que ver con los números 0 y 1. Esto mismo se aplica a + 𝑦 ∙ que solo
denotan operadores binarios y, en general, no tienen nada que ver con la suma y el producto
ordinario.
Ejemplo 1.
Sea U un conjunto universal y sea S = P(U) el conjunto de las partes de U, si se definen las
siguientes operaciones en S:
𝑋 + 𝑌 = 𝑋 ∪ 𝑌, 𝑋 ∙ 𝑌 = 𝑋 ∩ 𝑌, 𝑋 = 𝑋𝐶
Ejemplo 2.
El conjunto de todas las fórmulas proposicionales de n variables ( P ), los operadores ∧ 𝑦 ∨ , V
y F y el operador de negación ~ cumplen con todas las propiedades de un álgebra booleana, es
decir que (𝑃, ∧, ∨, ~, 𝑉, 𝐹 ) es un álgebra booleana.
Ejemplo 3.
Sea D70 = {1, 2, 5, 7, 10, 14, 35, 70 }, los divisores de 70. Las operaciones +, ∙, que se definen
sobre D70 de la siguiente manera:
70
a + b = mcm (a, b) a b = mcd (a, b), 𝑎 =
𝑎
Entonces D70 es un algebra booleana con 1 como elemento cero y 70 como elemento unidad.
Teorema 2.
𝑥+𝑥𝑦=𝑥 𝑥+𝑥𝑦=𝑥+𝑦
c) Leyes de absorción { {
𝑥 (𝑥 + 𝑦) = 𝑥 𝑥 (𝑥 + 𝑦) = 𝑥 𝑦
d) Leyes de involución (𝑥 ) = 𝑥
(𝑥 + 𝑦) = 𝑥 𝑦
e) Leyes de De Morgan para las álgebras booleanas {
(𝑥 𝑦) = 𝑥 + 𝑦
b 1) 𝑥 = 𝑥 + 0 Elemento neutro
𝑥 = 𝑥 + (𝑥 𝑥 ) Complemento
𝑥 = (𝑥 + 𝑥)(𝑥 + 𝑥 ) Distributiva
𝑥 = (𝑥 + 𝑥) 1 Complemento
𝑥 = 𝑥+𝑥 Elemento neutro
b 2) 𝑥 = 𝑥 1 Elemento neutro
𝑥 = 𝑥 (𝑥 + 𝑥 ) Complemento
𝑥 = 𝑥𝑥+𝑥𝑥 Distributiva
𝑥 = 𝑥𝑥+0 Complemento
𝑥=𝑥𝑥 Elemento neutro
𝑥 +𝑥 = 1 y 𝑥 𝑥 =0 (1)
Por la misma ley se tiene que:
𝑥+𝑥 =1 y 𝑥𝑥 =0
𝑥 +𝑥=1 y 𝑥 𝑥=0 ( 2 ) Conmutativa
Nótese que las identidades de un álgebra booleana vienen por pares. Por ejemplo las leyes del
elemento neutro: 𝑥 + 0 = 𝑥 y 𝑥 ∙ 1 = 𝑥 , tales pares son duales.
Definición
El dual de una afirmación relacionada con expresiones booleanas se obtiene
reemplazando 0 por 1, 1 por 0, + 𝑝𝑜𝑟 ∙ y ∙ 𝑝𝑜𝑟 +.
En la definición de álgebra booleana cada una de las leyes tiene su respectivo dual. Por lo tanto
podemos afirmar lo siguiente.
Teorema 3.
El dual de un teorema relativo a álgebras booleanas también es un teorema.
Demostración
Supóngase que T es un teorema acerca de álgebras booleanas. Entonces existe una
demostración D de T que solo implica la definición de un álgebra booleana. Sea D’ la serie
de afirmaciones obtenidas al reemplazar cada afirmación en D por su dual. Entonces D’ es
una demostración del dual de T.
Ejemplo
Obsérvese las demostraciones de las leyes de idempotencia.
b 1) 𝑥 = 𝑥 + 0 b 2) 𝑥 = 𝑥 1
𝑥 = 𝑥 + (𝑥 𝑥 ) 𝑥 = 𝑥 (𝑥 + 𝑥 )
𝑥 = (𝑥 + 𝑥)(𝑥 + 𝑥 ) 𝑥 = 𝑥𝑥+𝑥𝑥
𝑥 = (𝑥 + 𝑥) 1 𝑥 = 𝑥𝑥+0
𝑥 = 𝑥+𝑥 𝑥=𝑥𝑥
Cada afirmación de b2) es el dual de la respectiva afirmación de b 1). Se puede considerar
indistintamente b1) o b2) como la expresión dual.
Casi un siglo después de aparecer la obra de George Boole, varias personas observaron que el
álgebra booleana se podía utilizar para el análisis de circuitos eléctricos, particularmente Claude
E. Shannon. Así el álgebra booleana se convirtió en una herramienta indispensable para el análisis
y el diseño de las computadoras electrónicas en las décadas posteriores.
En una computadora digital solo existen dos posibilidades –que se escriben como 0 y 1– para el
objeto mínimo e indivisible. Todos los programas y datos se pueden reducir en última instancia a
combinaciones de bits. A través de los años se han utilizado varios dispositivos en las
computadoras digitales para almacenar los bits. Los circuitos electrónicos permiten que estos
dispositivos de almacenamiento se comuniquen entre sí.
Sea S = { 0, 1 } el conjunto de bits (dígitos binarios), con las operaciones binarias + 𝑦 ∙, la
+ 0 1 . 0 1 0 1
0 0 1 0 0 0 1 0
1 1 1 1 0 1
Evaluar 1 0 + (0 + 1)
1 0 + (0 + 1) = 0 + 1
=0+0
=0
Por ser 𝐵 = (𝑆, +,∙, , 0, 1) un álgebra booleana, se cumplen las propiedades demostradas,
anteriormente en el teorema 2.
Otra forma útil para demostrar propiedades del álgebra booleana es utilizando tabla de valores.
Ejemplo
Demostrar que se cumple la siguiente propiedad 𝑥(𝑦 + 𝑧) = 𝑥 𝑦 + 𝑥 𝑧
La forma más sencilla de demostrar una propiedad, es por tabla de valores.
𝑥 𝑦 𝑧 𝑦+𝑧 𝑥(𝑦 + 𝑧) 𝑥𝑦 𝑥𝑧 𝑥𝑦 + 𝑥𝑧
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 0 1 1
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1
3.1.- FUNCIONES Y EXPRESIONES BOOLEANAS
x y 𝑦 𝐹(𝑥, 𝑦) = 𝑥 𝑦
0 0 1 0
0 1 0 0
1 0 1 1
1 1 0 0
Una expresión booleana es una expresión formada por alguno o todos elementos siguientes:
variables booleanas 𝑥𝑖 elementos 0 y 1, operadores booleanos.
Por ejemplo: 𝑥 𝑦 + 𝑧 1 es una expresión booleana. Estas expresiones también reciben el nombre
de polinomios booleanos.
Dos expresiones booleanas distintas son equivalentes si una puede obtenerse de la otra mediante
la aplicación de operaciones booleanas. Cuando son equivalentes representan la misma función
booleana.
Por ejemplo las expresiones booleanas 𝑥 𝑦, 𝑥 𝑦 + 0, 𝑥 𝑦 1 son equivalentes.
Cada expresión booleana representa una función booleana. Los valores de esta función se
obtienen sustituyendo las variables de la expresión por 0 y 1.
Ejemplo
Calcular los valores de la función booleana 𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑧
𝑥 𝑦 𝑧 𝑥𝑦 𝑧 𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑧
0 0 0 0 1 1
0 0 1 0 0 0
0 1 0 0 1 1
0 1 1 0 0 0
1 0 0 0 1 1
1 0 1 0 0 0
1 1 0 1 1 1
1 1 1 1 0 1
Las funciones booleanas pueden representarse gráficamente sin más que marcar los vértices del
n–cubo que se corresponden con las n–tuplas de bits en las que la función vale 1.
La función booleana 𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑧 de 𝐵3 → 𝐵 del ejemplo anterior puede representarse
distinguiendo los vértices que se corresponden con las cinco ternas (0, 0, 0), (0, 1, 0), (1, 0, 0), (1,
1, 0) y (1, 1, 1) en las que 𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑧 = 1.
𝐹(𝑥1 , 𝑥2 , . . . 𝑥𝑛 ).
Sean dos funciones booleanas F y G de grado n, se definen la suma booleana F + G y el producto
booleano F G de la siguiente manera:
(𝐹 + 𝐺) (𝑥1 , 𝑥2 , . . . 𝑥𝑛 ) = 𝐹(𝑥1 , 𝑥2 , . . . 𝑥𝑛 ) + 𝐺(𝑥1 , 𝑥2 , . . . 𝑥𝑛 )
(𝐹 𝐺) (𝑥1 , 𝑥2 , . . . 𝑥𝑛 ) = 𝐹(𝑥1 , 𝑥2 , . . . 𝑥𝑛 ) 𝐺(𝑥1 , 𝑥2 , . . . 𝑥𝑛 )
Obsérvese que dos funciones booleanas F y G se pueden sumar o multiplicar, sumando o
multiplicando sus valores booleanos para los respectivos valores de sus variables independientes.
De la regla del producto (Combinatoria) se sigue que hay 2𝑛 𝑛 − 𝑡𝑢𝑝𝑙𝑎𝑠 distintas de ceros y unos.
Puesto que una función booleana asigna el valor 0 ó 1 a cada una de estas 𝑛 − 𝑡𝑢𝑝𝑙𝑎𝑠, la misma
𝑛
regla del producto indica que existen 22 funciones booleanas distintas de grado 𝑛.
Uno de los importantes problemas que se da en el contexto del álgebra booleana es poder
encontrar –a partir de los valores de una función booleana– una expresión booleana que
represente a dicha función. Este problema puede ser resuelto demostrando que toda función
booleana se puede representar mediante una suma booleana de productos booleanos de
variables y variables complementadas. La solución de este problema demuestra que toda función
Ejemplo
Para cada una de las funciones 𝐹(𝑥, 𝑦, 𝑧) 𝑦 𝐺(𝑥, 𝑦, 𝑧) cuyos valores se muestran a
continuación, calcular una expresión booleana que la represente.
𝑥 𝑦 𝑧 𝐹 𝐺
0 0 0 0 0
0 0 1 0 0
0 1 0 0 1
0 1 1 0 0
1 0 0 0 0
1 0 1 1 0
1 1 0 0 1
1 1 1 0 0
Este ejemplo ilustra un procedimiento para construir una expresión booleana que represente una
función booleana conocidos los valores de dicha función. Cada combinación de los valores de las
variables para los que la función vale 1, da lugar a un producto booleano de las variables y/o de
sus complementos.
Definición
Un literal es una variable booleana ó una variable booleana complementada. Un
minitérmino en las variables booleanas 𝑥1 , 𝑥2 , . . . 𝑥𝑛 es un producto booleano 𝑦1 , 𝑦2 ,
. . . 𝑦𝑛 en donde 𝑦𝑖 = 𝑥𝑖 𝑜 𝑦𝑖 = 𝑥𝑖 .
Por lo tanto un minitérmino es un producto de n literales con un literal por cada variable y valdrá
1 para una y sólo una combinación de sus variables. Específicamente el minitérmino 𝑦1 , 𝑦2 ,
. . . 𝑦𝑛 es 1 si, y sólo si, cada 𝑦𝑖 es 1 y esto ocurre si y sólo si 𝑥𝑖 = 1 cuando 𝑦𝑖 = 𝑥𝑖 𝑦 𝑥𝑖 = 0
cuando 𝑦𝑖 = 𝑥𝑖 .
Ejemplo
Hallar el minitérmino que vale 1 si 𝑥1 = 𝑥3 = 0 𝑦 𝑥2 = 𝑥4 = 1, y vale 0 en cualquier otro caso.
El minitémino que vale 1 para esta combinación de valores es 𝑥1 𝑥2 𝑥3 𝑥4 .
Se puede construir una expresión booleana con un conjunto de valores prefijados sin más que
realizar una suma booleana de distintos minitérminos. Particularmente, una suma booleana de
minitérminos vale 1 cada vez que exactamente uno de los minitérminos de la suma vale 1 y vale
0 para las restantes combinaciones de las variables. En consecuencia, dada una función booleana,
se puede construir una suma booleana de minitérminos que valga 1 cuando esta función
booleana vale 1 y que valga 0 cuando la función tome el valor 0. A la suma de minitérminos que
representa a la función se la llama desarrollo en suma de productos o bien forma normal
disyuntiva de la función booleana.
Ejemplo
Hallar la forma normal disyuntiva de la función booleana 𝐹(𝑥, 𝑦, 𝑧) = (𝑥 + 𝑦)𝑧
Para solucionar este problema, se puede proceder de dos maneras, a saber.
b) Por tabla de valores. Se calculan los valores de F para todos los posibles valores de las variables
booleanas 𝑥, 𝑦, 𝑧.
𝑥 𝑦 𝑧 𝑥+𝑦 𝑧 (𝑥 + 𝑦) 𝑧
0 0 0 0 1 0
0 0 1 0 0 0
0 1 0 1 1 1
0 1 1 1 0 0
1 0 0 1 1 1
1 0 1 1 0 0
1 1 0 1 1 1
1 1 1 1 0 0
Por lo tanto la forma normal disyuntiva de F es la suma booleana de los tres minitérminos
correspondientes a las tres filas de la tabla en las que la función vale 1.
Es decir 𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧
También se puede obtener una expresión booleana que represente a una función booleana
considerando el producto booleano de sumas booleanas. Al desarrollo resultante se le llama
desarrollo en producto de sumas o bien forma normal conjuntiva de la función.
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + (𝑥 𝑦 𝑧) + 𝑧 ( 𝑦 + 𝑥)
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑥 + 𝑦 + 𝑧 + 𝑧 ( 𝑦 + 𝑥) De Morgan
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑥 + 𝑦 + 𝑧 + 𝑧 𝑦 + 𝑧 𝑥 Distributiva
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑥 + 𝑦 + 𝑧 𝑦 + 𝑧 + 𝑧 𝑥 Conmutativa
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 (𝑦 + 1) + 𝑦 (1 + 𝑧 ) + 𝑧 + 𝑧 𝑥 Distributiva
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 1 + 𝑦 1 + 𝑧 + 𝑧 𝑥 Acotación
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 + 𝑦 + 𝑧 + 𝑧 𝑥 Elemento neutro
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 + 𝑦 + 𝑧 + 𝑥 Absorción
𝐹(𝑥, 𝑦, 𝑧) = (𝑥 + 𝑥 ) + 𝑦 + 𝑧 Conmutativa / Asociativa
𝐹(𝑥, 𝑦, 𝑧) = 1 + 𝑦 + 𝑧 Complemento
𝐹(𝑥, 𝑦, 𝑧) = (1 + 𝑦 ) + 𝑧 Asociativa
𝐹(𝑥, 𝑦, 𝑧) = 1 + 𝑧 Acotación
𝐹(𝑥, 𝑦, 𝑧) = ( 1 + 𝑧 ) Asociativa
𝐹(𝑥, 𝑦, 𝑧) = 1 Acotación
La expresión booleana en su forma más sencilla es F = 1 y este resultado indica que si se sustituyen
las diferentes combinaciones con los valores binarios 0 o 1 de las variables x, y, z en la función
inicial, entonces el resultado será siempre igual a 1.
En general luego de un proceso de simplificación el resultado no siempre es 1, en cambio lo que
se espera es obtener una expresión más simple conformada por menos variables.
Ejemplo 2
Simplificar la siguiente función booleana 𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑧 𝑤
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑧 𝑤
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 𝑧 + 𝑥 𝑧 𝑤 + 𝑥 𝑦 𝑧 Conmutativa
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑧 (𝑥 + 𝑥 𝑤) + 𝑥 𝑦 𝑧 Distributiva
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑧 (𝑥 + 𝑤) + 𝑥 𝑦 𝑧 Absorción
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑧 𝑥 + 𝑧 𝑤 + 𝑥 𝑦 𝑧 Distributiva
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑧 𝑥 + 𝑥 𝑦 𝑧 + 𝑧 𝑤 Conmutativa
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 ( 𝑧 + 𝑦 𝑧) + 𝑧 𝑤 Distributiva
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 ( 𝑧 + 𝑧 𝑦 ) + 𝑧 𝑤 Conmutativa
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 ( 𝑧 + 𝑦 ) + 𝑧 𝑤 Absorción
𝐹(𝑥, 𝑦, 𝑧, 𝑤) = 𝑥 𝑧 + 𝑥 𝑦 + 𝑧 𝑤 Distributiva
En los ejemplos anteriores se aplicó una propiedad a la vez, esto se hizo para que no haya
confusión en la aplicación de las mismas. Obviamente, cuando ya se tiene suficiente práctica, se
pueden aplicar varias propiedades simultáneamente. Tampoco es necesario indicar que
propiedad se usa, sin embargo se hizo para ilustrar la simplificación.
𝑦 𝑦
𝑥 𝑥𝑦 𝑥𝑦
𝑥 𝑥 𝑦 𝑥 𝑦
1
Los elementos básicos de los circuitos se llaman puertas lógicas. Cada tipo de puerta implementa una operación booleana.
Simplificar las siguientes funciones
𝐹(𝑥, 𝑦) = 𝑥 𝑦 + 𝑥 𝑦, 𝐺(𝑥, 𝑦) = 𝑥 𝑦 + 𝑥 𝑦, 𝐻(𝑥, 𝑦) = 𝑥 𝑦 + 𝑥 𝑦 + 𝑥 𝑦
Primero se hacen las K–diagramas y luego se colocan los 1 en donde correspondan.
𝑦 𝑦 𝑦 𝑦 𝑦 𝑦
𝑥 1 𝑥 1 𝑥 1
𝑥 1 𝑥 1 𝑥 1 1
F G H
Se rodean con un círculo los bloques de las celdas del K–diagrama que representan minitérminos
que se pueden combinar y luego se calcula la correspondiente suma de productos.
Se agrupan los 1 en celdas adyacentes en bloques cuadrados o rectangulares 2, 4, 8, 16, . . . 2n y
se descartan las variables cuyo valor cambia de una celda a otra. La regla es agrupar la
información con el menor número de bloques ya que de cada uno se obtiene cuando menos un
literal y los bloques deben estar conformados por el mayor número de celdas porque entre más
grande sea el número de celdas agrupadas por bloque más simple será la función booleana
resultante.
𝑦 𝑦 𝑦 𝑦 𝑦 𝑦
𝑥 1 0 𝑥 0 1 𝑥 0 1
𝑥 1 0 𝑥 1 0 𝑥 1 1
F G H
Obsérvese que los 1 pueden ser compartidos por distintos bloques, la regla es que un bloque
debe tener al menos un 1 que sea exclusivamente de él. Además, si hay 1 en las cuatro celdas se
pueden combinarse los cuatro minitérminos para dar lugar a uno solo que será la expresión
booleana 1 que no depende de ninguna de las variables.
Para la función F la variable que cambia de valor es 𝑥, mientras que la variable 𝑦 mantiene su
valor. Por lo tanto se descarta 𝑥 y se obtiene 𝐹(𝑥, 𝑦) = 𝑦.
Para la función G no se puede descartar ninguna de las variables puesto que son bloques con un
solo 1. En consecuencia se obtiene 𝐺(𝑥, 𝑦) = 𝑥 𝑦 + 𝑥 𝑦.
Finalmente para la función H, por el bloque vertical se descarta la variable 𝑥 obteniéndose 𝑦 ,
mientras que por el bloque horizontal se descarta la variable 𝑦 obteniéndose 𝑥 ,
consecuentemente la función simplificada
será: 𝐻(𝑥, 𝑦) = 𝑥 + 𝑦 .
Un K–diagrama de tres variables es un rectángulo dividido en ocho celdas y puede verse como si
estuviese dibujado sobre un cilindro. Dos celdas tienen un lado en común sobre el cilindro si y
sólo si, son adyacentes. En general si en un K–diagrama se unen los dos extremos ya sean
horizontal o verticalmente, entonces las celdas de las esquinas del mismo quedaran juntas y por
lo tanto se las considerarán como celdas adyacentes. Esto permite realizar una mejor
simplificación.
Obsérvese que la secuencia en que se coloca la expresión de las variables en el diagrama no es la
binaria ascendente, sino una forma que solamente exista un cambio a la vez, es decir, una forma
en la que no debe cambiar una variable en cada paso. A esta forma de arreglar las variables se la
llama código reflejado.
𝑦𝑧 𝑦𝑧 𝑦 𝑧 𝑦 𝑧
𝑥 𝑥𝑦𝑧 𝑥𝑦𝑧 𝑥𝑦 𝑧 𝑥𝑦 𝑧
𝑥 𝑥 𝑦𝑧 𝑥 𝑦𝑧 𝑥 𝑦 𝑧 𝑥 𝑦 𝑧
En general, cuando el número de variables que integran la función booleana es impar, el número
de filas del diagrama es menor que el número de columnas. También es conveniente ordenar las
variables alfabéticamente colocando las primeras variables como filas y las restantes como
columnas.
Ejemplo
Simplificar la siguiente función booleana:
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧 + 𝑥 𝑦 𝑧
Por el bloque cuadrado se eliminan las variables 𝑧 𝑦 𝑥 obteniéndose 𝑦 , por el bloque rectangular
se eliminan las variables 𝑧 𝑒 𝑦 obteniéndose 𝑥. Finalmente por el bloque conformado por las dos
columnas de los extremos se eliminan las variables 𝑥 𝑒 𝑦, obteniéndose 𝑧. Por lo tanto
𝐹(𝑥, 𝑦, 𝑧) = 𝑥 + 𝑦 + 𝑧.
Del bloque que contiene ocho 1 se elimina, en primer lugar las variables w y x, luego se elimina la
variable y, por lo tanto se obtiene 𝑧 . Del bloque de cuatro 1 se eliminan tanto la variable y como
la z, obteniéndose 𝑤 𝑥. Finalmente del bloque que contiene dos 1 se elimina solamente la
variable z, obteniéndose 𝑤 𝑥 𝑦. Por lo tanto la función simplificada es 𝐹(𝑤, 𝑥, 𝑦, 𝑧) = 𝑧 + 𝑤 𝑥 +
𝑤𝑥𝑦
Si en la expresión original de la función booleana algunos de los minitérminos no tiene todas las
variables intervinientes, este minitérmino equivale a las variables que se dan originalmente
juntamente con todas las posibles combinaciones de las variables faltantes.
Ejemplo
Para simplificar la función 𝐹(𝑤, 𝑥, 𝑦, 𝑧) = 𝑤 𝑥 𝑦 𝑧 + 𝑤 𝑥 𝑦 + 𝑦 𝑧 + 𝑤 𝑥 𝑦 𝑧 + 𝑤 𝑥 𝑦 𝑧 se
debe tener en cuenta que 𝑤 𝑥 𝑦 = 𝑤 𝑥 𝑦 𝑧 + 𝑤 𝑥 𝑦 𝑧 , es decir que no se trabaja con el
minitérmino incompleto, sino con su equivalente. Lo mismo para el minitérmino 𝑦 𝑧 = 𝑤 𝑥 𝑦 𝑧 +
𝑤 𝑥 𝑦 𝑧 + 𝑤 𝑥 𝑦 𝑧 + 𝑤 𝑥 𝑦 𝑧.
Para evitar confusiones a los distintos bloques propuestos se le asignaron letras. Así, del bloque
“a” se obtiene 𝑤 𝑦 , del bloque “b” 𝑦 𝑧, del bloque “c” 𝑥 𝑦 y por último del bloque “d” se obtiene
𝑥 𝑧 . Se obtiene la siguiente expresión complementada debido a que se usaron las celdas de ceros
no las de unos.
𝐹(𝑤, 𝑥, 𝑦, 𝑧) = 𝑤 𝑦 + 𝑦 𝑧 + 𝑥 𝑦 + 𝑥 𝑧
Complementando ambos miembros de la función booleana resulta
𝐹(𝑤, 𝑥, 𝑦, 𝑧) = ( 𝑤 𝑦 + 𝑦 𝑧 + 𝑥 𝑦 + 𝑥 𝑧 )
Aplicando la ley de De Morgan se tiene
Obsérvese que no es igual la función booleana simplificada en sumas de productos que la que se
obtuvo en productos de sumas, sin embargo se puede decir que son lógicamente equivalentes.
Esto se puede demostrar usando propiedades del álgebra booleana o bien elaborando las tablas
de valores correspondientes.
𝐹(𝑤, 𝑥, 𝑦, 𝑧) = 𝑤 𝑦 + 𝑦 𝑧 + 𝑤 𝑥 𝑧
Los circuitos de las computadoras, así como otros componentes electrónicos, reciben datos de
entrada cada uno de los cuales es un 0 ó un 1 y producen también como salida ceros y unos. Los
circuitos pueden construirse utilizando cualquier elemento básico que posea dos estados
diferentes. Entre esos elementos se encuentran los interruptores que pueden estar en posición
on o en off y los dispositivos ópticos que pueden estar encendidos o apagados.
Un bloque lógico es una representación simbólica gráfica de una o más variables de entrada a un
operador lógico para obtener una señal determinada o resultado. Los símbolos varían de acuerdo
con la rama donde se utiliza o bien del fabricante. Cada bloque lógico representa un dispositivo
que permite manipular la señal según el campo de acción, en mecánica se los llama válvulas (paso
del aire o aceite), en electricidad apagadores, contactos (paso de corriente eléctrica) y en
electrónica puertas o compuertas (paso de pulsos eléctricos).
Se trataran los símbolos usados en electrónica para la representación de las compuertas, ya que
son los que interesan al área de computación, sin embargo el tratamiento teórico por medio del
álgebra booleana es válido para todos ellos independientemente del área.
Compuertas básicas
Compuerta Símbolo
O (Or)
Y (And)
No (Not)
Or–exclusivo (Xor)
Las compuertas pueden recibir una ó más señales de entrada. 𝑥 𝑒 𝑦 son señales que entran a la
compuerta y pueden tener un valor de 1 ó 0 dependiendo de si existe ó no la señal, la cual procede
de un sensor ó bien de la salida de una compuerta anterior. Esos valores de entrada generan una
sola salida, que a su vez también es 0 ó 1 dependiendo de la compuerta que se trate y de los
valores de las señales de entrada.
Para representar funciones booleanas mediante compuertas lógicas es conveniente tener en
cuenta las tablas de verdad de los operadores lógicos ( ∨, ∧, ∼ ) vistas en lógica proposicional.
Ejemplo
Representar las siguientes funciones booleanas usando puertas lógicas básicas.
a) 𝐹(𝑥, 𝑦, 𝑧) = 𝑥 𝑦 + 𝑥 𝑧 + 𝑦
b) 𝐹(𝑥, 𝑦, 𝑧) = (𝑥 + 𝑦) + (𝑦 + 𝑧 ) 𝑥
También existen compuertas lógicas compuestas como Nand que es la combinación de los
operadores Not y And; o la compuerta Nor que es la combinación de los operadores Not y Or.
Compuerta Símbolo
Nor
Nand
Xnor
Generalmente los circuitos digitales se construyen con compuertas Nand y Nor ya que son más
fáciles de encontrar en el mercado, son más comunes desde el punto de vista del hardware y
están disponibles en la forma de circuitos integrados.
En el apartado anterior se vio que los dispositivos con los que se implementan las funciones
booleanas son las compuertas lógicas, estas al combinarse han permitido, inicialmente, la
creación de la válvula electrónica (tubo de vacío o bulbo), posteriormente la del “transistor” y
actualmente la del “chip”, elementos con los cuales se construye todo tipo de aparato electrónico
digital.
La electrónica digital es una parte de la electrónica que maneja información codificada en dos
estados: falso y verdadero o más comúnmente 0 y 1. Electrónicamente se asigna a cada uno un
voltaje o rango de voltaje determinado. Esta particularidad permite que, usando el álgebra
booleana y con un sistema de numeración binario, se puedan realizar complejas operaciones
lógicas o aritméticas sobre señales de entrada. La electrónica digital ha alcanzado una gran
importancia debido a que constituye la piedra angular de las computadoras.
Las computadoras realizan el trabajo por medio de un microprocesador, el cual es un circuito de
alta escala de integración compuesto por muchos circuitos simples como flip–flops, contadores,
decodificadores, comparadores, etc., todos en una misma pastilla de silicio en donde se utilizan
compuertas del álgebra booleana para llevar a cabo las operaciones lógicas.
Las microoperaciones que lleva a cabo el microprocesador se realiza en lenguaje binario a nivel
bit. Por ejemplo, si x = 110010, y = 011011 se pueden llevar a cabo las siguientes operaciones:
𝑥 ∧ 𝑦 = 110010 ∧ 011011 = 010010
𝑥 ∨ 𝑦 = 110010 ∨ 011011 = 111011
𝑥 = (110010) = 001101
Basada en el álgebra booleana, la unidad lógica aritmética (ALU: Arithmetic Logic Unit) es la parte
del microprocesador que realiza las operaciones aritméticas y lógicas en los datos.
Como se puede ver, la computadora está integrada por elementos que utilizan el álgebra
booleana para su desarrollo y funcionamiento. Sin embargo, no es para lo único que se utiliza el
álgebra booleana, ya que otra de sus aplicaciones que actualmente está teniendo mucho éxito es
la relacionada con la construcción de robots.