Logo Studenta

algebra-de-boole-y-aplicaciones -jose-luis-leal-ruperto

¡Este material tiene más páginas!

Vista previa del material en texto

Algebra de Boole y aplicaciones 1
Algebra de Booble y aplicaciones
José Luis Leal Ruperto
Departamento de Matemática Aplicada
Universidad de Málaga 1996
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 2
Departamento de Matemática Aplicada José Luis Leal Ruperto
1
Algebra de boole y
aplicaciones
El estudio del álgebra de Boole se trata en otras materias que son más
afines a la electrónica, y en ellas se hace de forma exhaustiva porque cons-
tituye la base de los sistemas digitales.
No obstante, siempre que se aborda en estas otras materias, se hace
con un enfoque aplicado y con un exclusivo objetivo: el tratamiento de las
funciones de conmutación. Esto hace que se descuiden un poco los aspectos
algebraicos en los que se fundamentan todos los resultados.
Como todos los métodos y procedimientos que se desarrollan están per-
fectamente justificados por teoremas esenciales de estructura, que son co-
munes a cualquier álgebra de Boole, en este caṕıtulo no los vamos a dejar
de ver.
Como un Álgebra de Boole, es un conjunto con una relación de orden,
comenzaremos el estudio de estas álgebras exponiendo lo necesario sobre
conjuntos ordenados, y llegaremos paso a paso hasta el final, con el trata-
miento de las funciones booleanas como estudio de un ejemplo de un álgebra
de Boole significativa.
1.1. Conjuntos ordenados.
Como vimos en el caṕıtulo segundo, una relación R en un conjunto E es
de orden si satisface las propiedades reflexiva, antisimétrica y transitiva.
Suele convenir representar la relación de orden R con el śımbolo ≤, aun-
que es importante saber que ≤ representa según el caso que tratemos una
relación distinta, y no debe confundirse con la desigualdad usual a la que
3
Algebra de Boole y aplicaciones 4
estamos acostumbrados cuando tratamos números.
Formalmente,
Definición 1.1 Un conjunto ordenado es un par (E,≤) donde E es un
conjunto cualquiera y ≤ es una relación de orden en E.
Cuando tengamos que x ≤ y diremos que x precede, minora o que es
minorante de y. También que y es posterior mayora o es mayorante
de x.
Veamos algunos ejemplos básicos,
Ejemplo 1.1 Son conocidos conjuntos ordenados los siguientes,
(IR,≤), donde ≤ es la relación en los Reales definida como x ≤ y si
y − x es real positivo.
(ZZ+, |), donde | es la relacion “dividir”, en el conjunto de los Enteros
positivos.
(ZZ+, •), donde • es la relación “ser múltiplo de” también en el conjunto
de los enteros positivos.
(A,⊆), con la relación “estar incluido” establecida sobre cualquier sub-
conjunto de A.
En una relación de orden, a veces dos elementos cualesquiera están siempre
relacionados entre śı en otros casos no:
Definición 1.2 El conjunto ordenado (E,≤) es un conjunto totalmente
ordenado si,
∀x, y ∈ E, x ≤ y ó y ≤ x.
en caso contrario el conjunto es parcialmente ordenado.
El conjunto (IR,≤) está totalmente ordenado, (ZZ+, |) y (ZZ+, •) lo están
parcialmente.
Si E es finito, ≤ es también finita, y como en todas relaciones finitas
tenemos definido un grafo dirigido. A la hora de representarlo podemos
evitar el tener que asignar una orientación a cada arco del grafo si ponemos
los elementos que son posteriores a otros, en escalones superiores.
De esta forma, en un conjunto ordenado, el elemento x precederá a otro
y si es posible pasar del vertice x al vértice y a través de una sucesión
ascendente de arcos. Un grafo representado aśı se llama Diagrama de
Hasse.
Veamos un primer ejemplo,
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 5
Ejemplo 1.2 Sea A = {1, 2, 3, 5, 6, 8, 10, 15, 16, 20, 30}, con la relación de
orden “divide”.
j1
j2 j3 j5
j8 j6 j10 j15
j16 j20 j30
�
�
�
�
�
�
�
�
@
@
@
@
@
@
@
@
�
��
��
En el diagrama de Hasse que aparece
a la derecha, observamos que por ejem-
plo, el número 2 está relacionado con el
30 ya que existe al menos un camino as-
cendente: el 2−6−30, o el 2−10−30 que
los une. En cambio el 2 y el 15 no lo están
por no existir ese camino ascendente.
En los conjuntos totalmente ordena-
dos el diagrama de Hasse consiste en un
sólo camino o recta a través del cual
están alineados todos sus vértices. Tal es el caso de la recta Real.
1.1.1. Elementos notables en un conjunto ordenado.
Cuando se estudian conjuntos parcialmente ordenados observamos que
en él existen elementos que satisfacen propiedades concretas. Procedemos a
definirlas,
Definición 1.3 Sea el conjunto ordenado (E,≤),
1. Un elemento M ∈ E es maximal, si no posee más mayorante que él
mismo. Es decir, M es maximal si y sólo si,
∀x ∈ E, M ≤ x⇒M = x.
2. Un elemento m ∈ E es minimal, si no posee más minorantes que él
mismo. Es decir m es minimal si y sólo si,
∀x ∈ E, x ≤ m⇒ m = x.
3. Un elemento s ∈ E es el supremo o último elemento del conjunto
E si mayora a todos. Es decir, s es supremo si y sólo si,
∀x ∈ E x ≤ s.
4. Un elemento i ∈ E es el ı́nfimo o primer elemento del conjunto E
si minora a todos. Es decir, i es ı́nfimo si y sólo si,
∀x ∈ E i ≤ x.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 6
En el ejemplo 1.2 anterior, observando el diagrama de Hasse, vemos rápida-
mente que 16, 20, 30 son maximales, y que 1 es el único minimal. No tiene
supremo porque ningún elemento es mayor que todos los demás, y el ı́nfimo
es el 1.
Son de especial importancia ciertos elementos en conjuntos ordenados
que tienen ı́nfimo. Estos son,
Definición 1.4 Sea (E,≤) un conjunto ordenado con ı́nfimo i. Un ele-
mento a ∈ E es un átomo si es inmediatamente posterior al ı́nfimo. Es
decir, a es átomo si y sólo si
i 6= a y ∀x, a ≤ x.
En conjuntos ordenados con supremo, los elementos que son inmediatamente
anteriores al supremo de llaman superátomos.
El concepto de mayoración y minoración se generaliza también a un
subconjunto B de E. Diremos que un elemento x es cota superior de B si
lo es de cada uno de los elementos de B. Si el subconjunto B tiene al menos
una cota superior en E se dice que está acotado superiormente.
Todas estas ideas se trasladan de forma inmediata para las cotas inferio-
res.
Expresaremos con Cs(B), Ci(B) los conjuntos de las cotas superiores e
inferiores de B.
De nuevo en el ejemplo 1.2 anterior, el conjunto de los átomos es {2, 3, 5},
no existen super átomos al no existir supremo, y, si consideramos B =
{2, 10}, obtenemos de inmediato del diagrama que el conjunto Cs(B) de
cotas superiores de B, es Cs(B) = {10, 20, 30}, y el de las cotas inferiores es
Ci(B) = {1, 2}.
Son especialmente importantes, para el estudio de los conjuntos ordena-
dos la menor y mayor, respectivamente, de las cotas superiores e inferiores
si es que existen,
Definición 1.5 Sea (E,≤) un conjunto ordenado, sea B subconjunto de
E acotado superiormente, el extremo superior de B que representamos
por sup(B) es, si existe, la menor de las cotas superiores. Es decir sup(B)
es extremo superior si y sólo si,
∀x ∈ Cs(B), sup(B) ≤ x.
De forma similar definimos en un conjunto acotado inferiormente la mayor
de las cotas inferiores que expresamos como ı́nf(B).
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 7
Si el superior e inferior pertenecen al subconjunto, se llamarán respecti-
vamente máximo y mı́nimo.
Volviendo al ejemplo, tenemos que sup(B) = 10 y que ı́nf(B) = 2.
La utilidad del diagrama de Hasse se pone aqúı de manifiesto al observar
lo fácil que es determinar los extremos superior e inferior para un conjunto
cualquiera B = {b1, b2, . . . , bn}: El sup(B) es el “primer” vértice (vértice en
el escalón más bajo) 1 donde convergen los distintos caminos ascendentes que
parten de los b1, b2, . . . , bn y el ı́nf(B) el “primer vértice” donde convergen
los caminos descendentes que también parten desde b1, b2, . . . , bn.
Veamos algunos ejemplos más.
Ejemplo 1.3 Consideremos de nuevo el mismo conjunto A del ejemplo
1.2 anteriorpero con la relación “ser múltiplo de”.
j1
j2 j3 j5
j8 j6 j10 j15
j16 j20 j30
@
@
@
@
@
@
@
@
�
�
�
�
�
�
�
�
HH
HHH
Ahora, dado que por ejemplo 15 es
múltiplo de 5, es correcto escribir 15 ≤ 5
sin que ello deba llevar a confusión. Su
diagrama de Hasse es el que aparece di-
bujado a la derecha, y no es casualidad
que resulte ser idéntico al anterior pero
invertido. La justificación está en el he-
cho de que esta relación es justamente la
relación inversa de la anterior.
Ejemplo 1.4 En los ejemplos anteriores tenemos la relación de orden so-
bre un conjunto finito. Consideremos ahora la relación “divide” en los enteros
positivos, es decir (ZZ+, /).
Aqúı al tener infinitos elementos, el diagrama de Hasse no es trazable en
su totalidad, y cualquier representación parcial nos va a ser de poca utilidad.
El ı́nfimo es el 1 que es el único que divide a cualquier entero. Los áto-
mos son los números primos que sólo son divididos con anterioridad por el 1.
Si consideramos cualquier subconjunto B = {a1, a2, . . . , an} de ZZ+ resulta
que tiene por cotas superiores, cualquier entero que pueda ser dividido por
a1, a2, . . . an, es decir por un múltiplo común a todos ellos. Sus cotas inferio-
res son divisores comunes a todos ellos, por tanto el extremo superior será
el menor múltiplo común, y el extremo inferior es el mayor divisor común,
sup(B) = mcm(a1, a2, . . . , an)
ı́nf(B) = mcd(a1, a2, . . . , an)
1Ese “primer” vértice puede no existir aunque el conjunto de cotas superiores comunes
sea no vaćıo.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 8
Con todas estas definiciones y ejemplos estamos en condiciones de definir la
estructura ordenada de ret́ıculo.
1.2. Ret́ıculos.
No es dificil probar que cualquiera que sea B subconjunto de un conjunto
ordenado (E,≤), si existen, tanto sup(B) como ı́nf(B) son únicos. Podemos
considerar conjuntos B constituidos por sólo dos elementos, y aprovechar esa
unicidad para considerar el sup y el ı́nf como si fuesen operaciones binarias.
Definición 1.6 El conjunto ordenado (E,≤) se dice ret́ıculo ordenado
si para cualquier par de elementos x, y de E, existen en E el sup({x, y}) y
el ı́nf({x, y}).
Ejemplo 1.5 Sea X un conjunto y consideremos (P (X),⊆). Dados dos
elementos A,B de P (X) siempre existen A ∪ B, A ∩ B. Además A ∪ B es
mayorante de A y de B ya que A ⊆ A ∪ B y B ⊆ A ∪ B, y es el menor
mayorante ya que si C es otro mayorante común, A ⊆ C y B ⊆ C y
entonces AUB ⊆ C.
Por un razonamiento similar se concluye que A ∩ B es el mayor de los
minorantes. Por tanto (P (X),⊆) es un ret́ıculo ordenado. El supremo y el
ı́nfimo son respectivamente X y ∅.
∅
{a} {b} {c}
{a, b} {a, c} {b, c}
{a, b, c}
�
��
�
��
�
��
�
��
@
@@
@
@@
@
@@
@
@@
En particular si X = {a, b, c}, obtenemos
un ret́ıculo de ocho elementos, cuyo diagrama
de Hasse es el que aparece a la derecha.
Para los elementos {a, b}, {b, c} por ejem-
plo, puede comprobarse que
sup({{a, b}, {b, c}}) = {a, b} ∪ {b, c} = {a, b, c}
ı́nf({{a, b}, {b, c}}) = {a, b} ∩ {b, c} = {b}
La relación divide también nos proporciona ejemplos de ret́ıculo,
Ejemplo 1.6 Consideremos (ZZ+, |) el conjunto de los enteros positivos
con la relación divide. Dados a, b ∈ ZZ+ siempre existen en ZZ+ el mı́nimo
común múltiplo mcm(a, b) y el máximo común divisor mcd(a, b) de a, b.
El mcm(a, b) es mayorante común de a, b porque ambos lo dividen, y por
definición es el menor. El mcd(a, b) es minorante común al a y al b ya que
divide a los dos, y por definición es el mayor. El conjunto (ZZ+, |) es entonces
un ret́ıculo con ı́nfimo el 1, pero no tiene supremo. (¿Porqué?).
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 9
Es posible, también con la relación divide, tener un ret́ıculo con un núme-
ro finito de elementos,
Ejemplo 1.7 En particular vamos a considerar (D20, |), en donde D20
representa el conjunto de los divisores de 20.
1
2 5
4 10
20
�
�
�
�
@
@
@
@
��
�
��
Este ret́ıculo śı está acotado, el supremo es
20 y el ı́nfimo es 1. Cuando nos dispongamos
a trazarlo, hemos de tener en cuenta primero
cuántos divisores tiene: La descomposición de
20 en factores primos es 20 = 2251, por tanto
tiene en total (2+1)(1+1) = 6 divisores. A con-
tinuación, quiénes son los átomos, en este caso
el 2 y el 5. Finalmente comenzamos a dibujar,
poniendo primero el ı́nfimo 1, a continuación
sus átomos 2, 5 y por último las potencias de
los átomos 22, y las combinaciones entre estos, el 10 y el 20.
El conjunto ordenado (A, /) del ejemplo 1.2 inicial no es un ret́ıculo,
porque no existe en él entre otros, el superior de 6 y 8: su mı́nimo común
múltiplo es 24.
Observando las propiedades que satisfacen los elementos del ret́ıculo de
las partes un conjunto, podemos suponer que es posible otra definición equi-
valente para ret́ıculo, en donde se manejen el superior y el inferior como si
de operaciones binarias se tratasen.
Esta otra definición alternativa para un ret́ıculo nos la da el siguiente
teorema de equivalencia:
Teorema 1.1 Son equivalentes las siguientes afirmaciones:
(a) El par (E,≤) es un ret́ıculo ordenado.
(b) (E,∨,∧) es un Ret́ıculo Algebraico, es decir, E es un conjunto en el
que existen dos operaciones internas, respectivamente ∨, ∧ que satis-
facen las propiedades:{ a ∨ a = a
a ∧ a = a
Idempotencia.{
a ∨ b = b ∨ a
a ∧ b = b ∧ a
Conmutativa.{
a ∨ (b ∨ c) = (a ∨ b) ∨ c
a ∧ (b ∧ c) = (a ∧ b) ∧ c
Asociativa.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 10
{
a ∨ (a ∧ b) = a
a ∧ (a ∨ b) = a
Simplificativa.
Demostración: Probamos primero que (a) implica (b).
Es evidente que es posible definir operaciones internas en E, sin más que
considerar para cualquier par x, y ∈ E,
x ∨ y := sup({x, y})
x ∧ y := inf({x, y})
La unicidad de los extremos superior e inferior hacen a ∨ y a ∧ que sean
operaciones.
Se cumplen las propiedades, vamos a comprobar la primera de cada
una de las parejas. De forma inmediata verificamos la idempotencia: x ∨
x = sup({x, x} = sup({x}) = x y conmutativa: x ∨ y = sup({x, y}) =
sup({y, x}) = y ∨ x.
Veamos con más detenimiento la propiedad asociativa. La probamos
comprobando que se cumplen ambas desigualdades a ∨ (b ∨ c) ≤ (a ∨ b) ∨ c
y a ∨ (b ∨ c) ≥ (a ∨ b) ∨ c. Veamos por ejemplo esta última:
Como cualquier elemento es menor o igual que el superior de él mismo
con otro cualquiera, podemos poner
a ≤ a ∨ (b ∨ c) (1)
(b ∨ c) ≤ a ∨ (b ∨ c)
a su vez al ser b ≤ b ∨ c, y c ≤ b ∨ c tenemos
b ≤ a ∨ (b ∨ c) (2)
c ≤ a ∨ (b ∨ c) (3)
en (1) Y (2) se tiene que a ∨ (b ∨ c) es cota superior de a y que lo es de b,
por tanto a ∨ b ≤ a ∨ (b ∨ c) por ser a ∨ b la menor de todas. Esto último
junto con (3) de nuevo nos indica que a ∨ (b ∨ c) es cota superior de a ∨ b y
de c, con lo que
(a ∨ b) ∨ c ≤ a ∨ (b ∨ c).
La otra desigualdad a ∨ (b ∨ c) ≤ (a ∨ b) ∨ c, se prueba de forma similar 2.
Por último, la propiedad simplificativa:
2En virtud de estas propiedad, los paréntesis pueden omitirse si usamos sólo una ope-
ración, y, dado cualquier conjunto finito A = {a1, a2, . . . an} de elementos de un ret́ıculo,
podemos escribir su superior como sup(a1, a2 . . . , an) = a1 ∨ a2 ∨ . . . ∨ an.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 11
Se tiene que a ∧ b ≤ a y que a ≤ a, en particular a es cota superior del
extremo superior de ambos, a ∨ (a ∧ b) ≤ a. Al tener por otra parte que
siempre a ≤ a ∨ (a ∧ b), se obtiene la igualdad a = a ∨ (a ∧ b).
Las otras propiedades de cada pareja se prueban de forma semejante a
como hemos procedido con la primera.
Rećıprocamente, si un conjunto E satisface las condiciones expresadas
en (a), veamos que satisface (b). Para ello hemos de encontrar alguna forma
de definir en E una relación que sea de orden y posteriormente ver que con
ella existen siempre el sup y el ı́nf de dos elementoscualesquiera.
(E,∨,∧) es un conjunto ordenado para la siguiente relación
a ≤ b :⇔ a ∨ b = b.3
Veamos que es en efecto una relación de orden.
Es evidentemente reflexiva: ∀a, a ≤ a ya que a ∨ a = a. Antisimétrica:
a ≤ b y b ≤ a equivalen a que a ∨ b = b y que b ≤ a = a, y como ∨ es
conmutativa, b = a ∨ b = b ∨ a = a. Transitiva: a ≤ b y b ≤ c nos da que
a∨ b = b y b∨ c = c, sustituyendo, a∨ c = a∨ (b∨ c) = (a∨ b)∨ c = b∨ c = c.
Por último, veamos que dados dos elementos x, y cualesquiera existen el
sup({x, y}) y el ı́nf({x, y}) y van a ser respectivamente x ∨ x y x ∧ y:
Que x ∨ y existe, es obvio por ser ∨ en E una operación interna; x ∨ y
es cota superior común a x y a y ya que x∨ (x∨ y) = (x∨ x)∨ y = x∨ y, y
que y ∨ (x ∨ y) = y ∨ (y ∨ x) = (y ∨ y) ∨ x = y ∨ x = x ∨ y. Además x ∨ y es
la menor de las cotas superiores ya que si t es otra cota superior común a x
y a y, entonces (x ∨ y) ∨ t = x ∨ (y ∨ t) = a ∨ t = t por tanto x ∨ y ≤ t. (De
forma similar x ∧ y es la mayor de las cotas inferiores).
Por tanto es importante tener siempre en cuenta, que independiente-
mente de como venga definido un ret́ıculo, ya sea a partir de una relación
de orden (Ret́ıculo ordenado (E,≤)), o por medio de operaciones (ret́ıculo
algebraico (E,∨,∧)), tendremos siempre las dos cosas a la vez por tratarse
de conceptos equivalentes,
En (E,≤) tenemos operaciones
∨,∧ obtenidas de,
x ∨ y := sup({x, y})
x ∧ y := inf({x, y})
En (E,∨,∧) tenemos la relación de
orden definida
a ≤ b :⇔ a ∨ b = b
(O equivalentemente a ≤ b :⇔ a ∧
b = a)
y ambas cosas las usaremos a nuestro antojo a la hora de tratar con ret́ıculos.
Volvamos a los ejemplos,
3O equivalentemente a ≤ b :⇔ a ∧ b = a. ¡Probar esta equivalencia!
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 12
Ejemplo 1.8 El ret́ıculo ordenado (E, /) es también el ret́ıculo algebraico
(E,mcm,mcd). Aqúı las operaciones ∨ y ∧ son respectivamente el mı́nimo
común múltiplo mcm, y el máximo común divisor mcd.
Serán ciertas cualesquiera de las cuatro propiedades antes enunciados en
el teorema. Por ejemplo, la asociativa: amcm (bmcm c) = (amcm b) mcm c.
En realidad con la notación habitual esta propiedad dice
mcm(a,mcm(b, c)) = mcm(mcm(a, b), c).
Si hubiésemos querido demostrarla sólo con conceptos relativos a la divisi-
bilidad, veŕıamos que no nos resultaŕıa nada trivial.
Ejemplo 1.9 El ret́ıculo ordenado (P(E),⊆) es también el ret́ıculo alge-
braico (P(E),∪,∩). Las propiedades que se deducen ya las conoćıamos. Las
vimos en el primer tema.
No obstante en el conjunto de las partes de un conjunto se cumplen
otras propiedades que no las debe necesariamente satisfacer un ret́ıculo. Por
ejemplo no es necesario en un ret́ıculo la existencia del supremo o del ı́nfimo.
En (P(E),∪,∩) los tiene en el universal E y el vaćıo ∅. Como se vió en el
ejemplo de los enteros positivos con la relación divide, éste sólo teńıa ı́nfimo
1. Pero puede que no tenga ninguno de los dos. Veamos el ejemplo,
Ejemplo 1.10 En ZZ× ZZ se define la relación � como,
(a, b) � (c, d) :⇐⇒ a ≤ c y b ≤ d,
no es dif́ıcil probar que es, en efecto, una relación de orden y que es ret́ıculo
con las operaciones
(a, b) ∨ (c, d) = (máx{a, c},máx{b, d})
(a, b) ∧ (c, d) = (mı́n{a, c},mı́n{b, d})
.. .. .. .. .. .. .. ..
..
.
..
.
..
.
..
.
..
.
..
.
..
.
..
.
...
..
.
...
..
.
...
..
.
...
..
.
...
..
.
...
..
.
(−3, 0)
(−2, 0)
(−1, 0)
(0, 0)
(1, 0)
(2, 0)
(3, 0)
��
��
��
��
��
��
(−2,−1)
(−1,−1)
(0,−1)
(1,−1)
(2,−1)
(3,−1)
��
��
��
��
��
(−3, 1)
(−2, 1)
(−1, 1)
(0, 1)
(1, 1)
(2, 1)
��
��
��
��
��
(−2, 2)
(−1, 2)
(0, 2)
(1, 2)
��
��
��
(−1, 3)
(0, 3)
��
(−1,−2)
(0,−2)
(1,−2)
(2,−2)
��
��
��
(0,−3)
(1,−3)
��@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@
@@ @@
@@
@@
@@
@@
El diagrama de Hasse de este
ret́ıculo aparece a la derecha.
Podemos observar que al no es-
tar las funciones máximo y mı́nimo
acotadas en ZZ no existe entonces el
supremo y el ı́nfimo.
Los ret́ıculos con supremo e
ı́nfimo se llaman ret́ıculos acota-
dos. Tampoco es necesario que, co-
mo en el conjunto de las partes de
un conjunto, se verifiquen las pro-
piedades distributivas,
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 13
Definición 1.7 Un ret́ıculo es distributivo, si satisface las propiedades{
a ∨ (b ∧ c) = (a ∨ b) ∧ (a ∨ c)
a ∧ (b ∨ c) = (a ∧ b) ∨ (a ∧ c)
Distributiva
Los ejemplos de ret́ıculo de los divisores de n, (Dn, /) y el del conjunto
de las partes de un conjunto si son distributivos. El ejemplo que sigue es un
ret́ıculo no distributivo,
Ejemplo 1.11 Consideremos el ret́ıculo cuyo diagrama de Hasse es el que
aparece en la figura.
hi
ha hb hc
hs
�
�
�
�
@
@
@
@
Este ret́ıculo no es distributivo. Por ejemplo, para
los elementos a, b, c se tiene por una parte que
a ∧ (b ∨ c) = a ∧ s = a,
en cambio
(a ∧ b) ∨ (a ∧ c) = i ∨ i = i 6= a.
En lo que sigue reservamos el śımbolo 1 y el śımbolo
0 para representar respectivamente al supremo e ı́nfimo de cualquier ret́ıculo.
El siguiente teorema nos da nuevas propiedades de los ret́ıculos acotados.
Teorema 1.2 Sea E un ret́ıculo acotado, entonces:
1. 1, 0 son unicos.
2. a ∨ 1 = 1 a ∧ 0 = 0 Absorción
3. 0 ∨ a = a 1 ∧ a = a Identidad
Demostración. La demostración es dejada como sencillo ejercicio.
El concepto análogo al complementario de un conjunto, en el conjunto
de las partes de un conjunto es el siguiente,
Definición 1.8 Sea E un ret́ıculo acotado, con supremo 1 e ı́nfimo 0. Un
elemento a ∈ E posee complemento si existe en E al menos un elemento
a tal que a ∨ a = 1 y a ∧ a = 0.
Hay que observar que en la definición de complemento no se dice que
sea el complemento único. De hecho, en el ejemplo anterior de un ret́ıculo
no distributivo el elemento c posee dos complementos distintos, el a y el b.
De todas formas la unicidad está garantizada por la distributividad.
Teorema 1.3 Si E es distributivo, si a ∈ E posee complemento a, este es
único.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 14
Demostración. Supongamos que a posee dos complementos, sean éstos a1, a2.
Veamos que son necesariamente iguales.
Se tiene que a ∧ a1 = 0, por tanto, por un lado (a ∧ a1) ∨ a2 = 0 ∨ a2 =
(por el apartado 3 del anterior teorema) = a2.
Por otro lado, por distributividad, (a ∧ a1) ∨ a2 = (a ∨ a2) ∧ (a1 ∨ a2) =
1 ∧ (a1 ∨ a2) = (también por el apartado 3 del anterior teorema) = a1 ∨ a2.
Por tanto a2 = a1 ∨ a2.
Razonando de la misma forma se obtiene que a1 = a2∨a1. Como a1∨a2 =
a2 ∨ a1, entonces a1 = a2.
La condición de distributividad es necesaria para la unicidad del com-
plemento.
1.3. Algebras de Boole.
Los ret́ıculos que son distributivos y complementados se llaman ret́ıcu-
los booleanos o álgebras de boole. A partir de ahora cuando hagamos
referencia a las operaciones en estos ret́ıculos en lugar de poner ∨,∧ pondre-
mos respectivamente +, ·. (Incluso omitimos en las expresiones algebraicas
el uso del punto ·).
Además de las propiedades conocidas y que son comunes a cualquier
ret́ı culo, tenemos las siguientes:
Teorema 1.4 Sea (B,+, ·) un álgebra de boole, entonces para todo a, b de
B se tiene:
(1)
{
(a + b) = a · b
(a · b)′ = a + b
Leyes de Morgan
(2) (a) = a Doble negación
Demostración: (1) El complemento de a + b es ab si la suma y el producto
de ambos es respectivamente 1,0. Por una parte,
(a + b) + ab = ((a + b) + a)((a + b) + b) =
= ((b + a) + a)((a + b) + b) =
= (b + (a + a))(a + (b + b)) =
= (b + 1)(a + 1) = 11 = 1
por otra
(a + b)ab = aab + bab =
= 0b + 0a = 0 + 0 = 0.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 15
El resto se deja como ejercicio.
El ret́ıculo del ejemplo 1.5 del conjunto de las partes de A = {a, b, c}, es
un álgebra de Boole. Satisface ser distributivo, además el complemento de
cualquier conjuntoes justamente su complementario.
El ret́ıculo de los divisores de 20, a pesar de satisfacer la propiedad
distributiva, no es álgebra de Boole porque los elementos 2 y 10 no poseen
complemento. El complemento del 4 es el 5 y del 1 es el 20.
En el siguiente ejemplo se muestra el álgebra de Boole más simple. Des-
pués veremos su importancia
Ejemplo 1.12 El conjunto B = {0, 1} con las operaciones suma y pro-
ducto definidas como 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, 1 + 1 = 1, 00 = 0,
01 = 0, 10 = 0, 11 = 1 es un algebra de Boole con supremo 1 e infimo 0.
Este álgebra de Boole se llama álgebra de Boole trivial o de los dos
números. Es inmediato comprobar que Bn producto cartesiano de B, n veces,
es también con las operaciones inducidas, un álgebra de Boole.
1.3.1. Principio de Dualidad.
En las propiedades de los teoremas anteriores y que se resumen en la
tabla, se habrá observado que todas ellas vienen siempre en pareja,
{
a + b = b + a
ab = ba
Conmutativa{
a + (b + c) = (a + b) + c
a(bc) = (ab)c
Asociativa{
a + a = a
aa = a
Idempotencia{
a + (ab) = a
a(a + b) = a
Simplificativa{
a + (bc) = (a + b)(a + c)
a(b + c) = ab + ac
Distributiva{
a + 1 = 1
a1 = 1
Dominancia{
a + 0 = a
a1 = a
Identidad{
a + a = 1
aa = 0
Complemento{
(a + b) = ab
(ab)′ = a + b
Morgan
(a) = a Doble negación
esto no sucede por azar. Su justificación es la siguiente. Sea (E,≤) un conjun-
to ordenado, consideremos ≤−1 la relación inversa, de manera que a ≤−1 b
si y sólo si b ≤ a. Es inmediato probar que (E,≤−1) es también un conjunto
ordenado, y que si (E,≤) es un ret́ıculo, también lo es (E,≤−1).
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 16
Estos dos ret́ıculos ordenados y las operaciones definidas en ambos se
parecen mucho. En concreto la operación suma del ret́ıculo (E,≤) es la
operación multiplicación del ret́ıculo (E,≤−1) y la operación multiplicación
del ret́ıculo (E,≤) es la operación suma del ret́ıculo (E,≤−1).
Por lo tanto de cualquier enunciado válido que trate sobre propiedades
de los ret́ıculos se puede obtener otro reemplazando la relación ≤ por ≤−1 (o
por≥ ya que≤−1es la relación inversa de≤), la adición por la multiplicación,
y la multiplicación por la adición.
Definición 1.9 La expresión Dual P d de cualquier enunciado matemáti-
co P en la que vengan involucradas las operaciones booleanas +, ·, y las de-
sigualdades ≤,≥; se obtiene reemplazando el 0 por el 1, el 1 por el 0, el +
por el ·, el · por el + el ≤ por el ≥ y el ≥ por el ≤.
Ejemplo 1.13 En las propiedades de Morgan
{
1 := (a + b) = a · b
2 := (a · b) = a + b
el dual de la expresión 1 es la 2, y el dual de la expresión 2 es la 1. Podemos
poner 1d = 2, y que 2d = 1.
Ejemplo 1.14 Si 1 representa la expresión a ≤ a ∨ b, entonces 1d es a ≥
a ∧ b.
El dual del dual de cualquier enunciado P es evidente que coincide con
el propio P .
Supongamos ahora que T representa un teorema sobre álgebras de Boole.
Existe para ella una sucesión de enunciados que constituye una demostración
D. Entonces a la sucesión de enunciados que se obtiene al reemplazar por
su dual cada enunciado de D, se llama demostración dual de D. La
demostración dual de D sirve para demostrar el dual de T , es decir el teorema
T d.
Por tanto, cuando tengamos cualquier teorema T , también lo será su
dual T d. Probando cualquiera de ellos, estará automáticamente probado el
otro por dualidad.
Ejemplo 1.15 T d
1 , T
d
2 son los teoremas duales de T1, T2:
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 17
Teorema T1 Teorema T d
1
En un ret́ıculo acotado el extremo
superior s es único
En un ret́ıculo acotado el extremo
inferior i es único
Teorema T2 Teorema T d
2
Las condiciones (a), (b) son equi-
valentes
(a) a ≤ b
(b) a ∨ b = b
Las condiciones (a), (b) son equi-
valentes
(a) a ≥ b
(b) ab = b
1.3.2. Formas normales y teorema de Stone
El cardinal de una álgebra de Boole puede ser finito o infinito. Estudia-
mos el caso finito y vamos a ver que la estructura de estas álgebras finitas se
“parece” mucho al álgebra de Boole de las partes de un conjunto y tendrá
entonces un cardinal de 2n elementos.
Para probar estos resultados exponemos un teorema fundamental acerca
de la posibilidad de expresar cualquier elemento del álgebra como suma de
los átomos. Veamos primero algunos resultados acerca de los átomos:
Teorema 1.5 Sea B un álgebra de Boole,
(a) Si a es un átomo, entonces para todo b ∈ B se tiene, ab = 0 o ab = a
(b) Si a, b son átomos y a 6= b entonces ab = 0.
(c) Si B es finita y a1, a2, · · · an son todos sus átomos, a ∈ B, y se tiene
para todo i, (1 ≤ i ≤ n) que aia = 0, entonces a = 0
Demostración.
(a) Para cualquier par de elementos, a, b se tiene que ab ≤ a ya que
(ab)a = ab. Luego, en particular, si a es átomo y si ab ≤ a, entonces sólo es
posible que ab sea el 0, o el propio a.
(b) Ejercicio.
(c) Supongamos que al absurdo, a fuese distinto de 0. Consideremos el
conjunto A = {b ∈ B | 0 < b ≤ a}. A es no vaćıo ya que al menos contiene a a.
Como A es finito se puede elegir un elemento c ∈ A que sea inmediatamente
posterior al 0, es decir un átomo, y se tiene que ca = c 6= 0, lo que es una
contradicción.
Con esto, estamos en condiciones de poder enunciar y probar un teo-
rema fundamental acerca de la posibilidad expresar cualquier elemento del
álgebra de Boole en función de sus átomos, en lo que conoce como formas
normales.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 18
Teorema 1.6 Sea x 6= 0 elemento de un álgebra de Boole B finita. Si
a1, a2, · · · , ak son los átomos inferiores o iguales a x, entonces x = a1 +a2 +
· · ·+ ak, y es la única forma de expresar x como suma de atomos de B.
Demostración. El conjunto de los átomos inferiores o iguales a x es no
vaćıo, ya que los átomos de B son los elementos minimales del conjun-
to ordenado que se obtiene al suprimir de B el elemento 0. Expresemos
por {a1, a2, · · · , ak} el conjunto de esos átomos inferiores o iguales a x. Sea
y = a1 + a2 + · · ·+ ak. Probemos que y = x.
Es evidente que y ≤ x, ya que x es un mayorante común a a1, a2, · · · , ak
y mayorará a y que es el menor de los mayorantes.
Para probar la otra desigualdad, vemos que xy = 0 (¿porqué?). Para ello
haremos uso del apartado (c) del anterior teorema e intentaremos ver, que
para cualquier átomo a, axy = 0.
Consideramos axy con a átomo cualquiera, Según el teorema anterior,
apartado (a), ax es o bien 0 o bien a. Si es 0, ya se tiene que axy = 0y = 0,
y si es a, entonces a es uno de los átomos ai inferior o igual que x antes
considerados y en particular a ≤ y, es decir ay = a, por tanto, axy =
ayxy = 0. La igualdad x = y está probada.
Queda por ver que esta expresión, salvo permutación de los términos es
única. Supongamos que existen dos expresiones simultáneas x = a1 + a2 +
· · · + ak, x = b1 + b2 + · · · + br con ai, bj átomos. Un átomo cualquiera
ai, satisface aix = ai, pero sustituyendo la segunda expresión obtenemos
ai = aix = ai(b1 +b2 + · · ·+br) = aib1 +aib2 + · · ·+aibr. Dado que cada uno
de los términos aibj es un minorante de ai, y es producto de átomos, vale o
0 o ai. Si es ai al minorar a bj , necesariamente ai = bj . Como la suma no
es 0, podemos asegurar que en alguno de los sumandos obtenemos ai = bj ,
entonces cada uno de los ai es uno de los bj . Por tanto el conjunto de los ai
está en el de los bj .
Un razonamiento similar prueba que el conjunto de los bj está contenido
en los ai, los conjuntos coinciden y el teorema está probado.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 19
Ejemplo 1.16 Consideremos el álgebra de Boole B = (D210, /) de los
divisores de 210 con la relación divide.
1
2 3 5 7
6 10 14 15 21 35
30 42 70 105
210
�
�
�
�
�
��
A
AA
Q
Q
Q
Q
Q
Q
Q
Q
A
AA
�
��
�
�
�
�
�
��
�
��
�
��
�
��
�
��
�
��@
@@
@
@@
��
��
��
��
��
��
��
��
��
��
��
��
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
El conjunto de átomos de es-
te álgebra es {2, 3, 5, 7}. Considere-
mos un elemento al azar, por ejem-
plo el número 70. A través de los
caminos descendentes 70 − 10 − 2,
70− 35− 5, 70− 35− 7 que obser-
vamos en la figura, comprobamos
que los átomos inferiores o iguales
a 70, son 2, 5 y 7. Según el teorema
se tiene entonces que 70 = 2+5+7.
4
Una observación similar para
los demas elementos nos proporcio-
na que: 6 = 2 + 3, 10 = 2 + 5, 14 = 2 + 7, 15 = 3 + 5, 21 = 3 + 7, 35 = 5 + 7,
30 = 2 + 3 + 5, 42 = 2 + 3 + 7, 105 = 3 + 5 + 7, 210 = 2 + 3 + 5 + 7.
Cuando un elemento se expresa como suma de sus átomos menores o iguales
se dice que está expresado en forma normal disyuntiva.
Por el principio de dualidad también tenemos un teorema de unicidad
para el producto de superátomos:
Teorema 1.7 Sea x 6= 1 elemento de un álgebra de Boole B finita. Si
b1, b2, · · · , bk son los superátomos superiores o iguales a x, entonces x =
b1b2 · · · bk, y es la única forma de expresar x como producto de superátomos
de B.
Y cuando un elemento se expresa como producto de sus superátomos
mayores o iguales se dice que está expresado en forma normal conjuntiva.
En el ejemplo anterior, algunos de sus elementos expresados en forma
conjuntiva quedaŕıan como: 2 = 30 · 42 · 70, 3 = 30 · 42 · 105, 5 = 30 · 70 · 105,
7 = 42 · 70 · 105, . . .
En este caso a través de los caminos ascendentes buscamos los super-
átomos mayores o iguales. (De nuevo no debe haber confusión en la notación.
La operación producto se refiere al máximo común divisor).
Con todo lo expuesto hasta ahora podemos enunciar y probar el teorema
de Stone. Este teorema en esencia viene a decir que todas las álgebras de
4No debe haber confusión en el uso de la notación. La operación suma se refiere a la
operación mı́nimo común múltiplo, es decir mcm(2, 5, 7) = 70.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 20
Boole son “iguales” al algebra del conjunto de las partes de un conjunto.
No vamos a hacer la demostración para el caso de álgebras infinitas, pero
śı para el caso finito.
Previamente puntualizemos que en matemáticas decir que dos conjuntos
con operaciones en ellos definidas “son iguales”, significa que son isomorfos.
Un isomorfismo de álgebras de Boole entre B1, B2 es una aplicación
f : B1 → B2 que es homomorfismo y es biyectiva.
Teorema 1.8 Sea A el conjunto de los átomos de un álgebra de Boole B.
Entonces, B es isomorfa al álgebra de Boole (P(A),∪,∩) del conjunto de las
partes de sus átomos.
Demostración: Una demostración detallada con ayuda del teorema 1.6 de
que la aplicación: f : B → P(A) que asigna a cada elemento x de B el
conjunto {a1, a2, · · · , ak} de los átomos inferiores o iguales a x, se deja para
el lector.
Por tanto como el número de elementos del conjunto de las partes de
un conjunto de n elementos es 2n, todas las álgebras de Boole tienen ese
cardinal 5.
1.3.3. Subálgebras de Boole.
En esta sección presentamos la forma en que a partir de ciertos elementos
de un álebra B podemos generar otras álgebras.
Esta generación tendrá sus limitaciones: no será posible engendrar un
álebra de Boole infinita a partir de un número finito de elementos.
Es por este motivo por el que el estudio de las álgebras infinitas aunque
puedan tener interés en otras disciplinas más teóricas, no lo tienen tanto en
informática. Debemos comenzar por,
Definición 1.10 Un subconjunto S de un álgebra de Boole B es subálge-
bra de Boole, si, para las restricciones de las operaciones definidas en B,
S es también álgebra de Boole.
Es decir S está constituido por un conjunto de elementos de B cerrado
para las operaciones suma producto y complementación. De la definición se
deduce de forma inmmediata que los elementos 1, 0 pertenecen a cualquier
subálgebra S desde el momento en el que para cualquier elemento a de S,
S debe contener a y por tanto aa = 0 y a + a = 1.
5Puede probarse que este resultado es también cierto para el caso infinito, y aśı , el
cardinal de un álgebra de Boole infinita es al menos ℵ1 ya que corresponde al cardinal del
conjunto de las partes del menor conjunto infinito que es ℵ0
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 21
Ejemplo 1.17 Podemos considerar el algebra de Boole del conjunto de
las partes de A = {a, b, c}, y se tiene que S = {∅, {a}, {b, c}, {a, b, c}} es una
subálgebra suya.
En el ejemplo anterior hemos seleccionado adecuadamente algunos ele-
mentos que forman una subálgebra de Boole. Pero para encontrar una subálge-
bra de Boole también podemos hacer lo siguiente: tomar algunos elementos
del álgebra y calcular la menor subálgebra que los contenga. Considera-
mos dos elementos cualesquiera x, y de álgebra, si ambos pertenecen a una
subálgebra, deberán pertenecer también los elementos x+y, xy, x, y y cual-
quier operación entre todos ellos.
Pero, ¿Cuántas operaciones son necesarias para generar esa subálgebra?
¿Qué es una operación? La siguientes definiciones y el teorema que siguen,
nos lo aclara:
Definición 1.11 Sea (B,+, ·) álgebra de Boole. Una expresión boolea-
na sobre (B,+, ·) está definido recursivamente como,
1. Cualquier elemento de B es una expresión booleana.
2. Cualquier śımbolo de variable es una expresión booleana.
3. Si E, F son operaciones booleanas, también lo son E + F , EF , E.
Si la expresión booleana está formada exclusivamente por a1, a2, · · · ak
elementos de B la llamaremos operación booleana.
Ejemplo 1.18 En el conjunto (D6, /) de los divisores de 6 con la relación
“divide” si consideramos
((1 · 3) + 2) · 6
tenemos una operación booleana sobre esa álgebra de Boole.
En cambio si consideramos
((1 · x1) + 2) · x2
tenemos una expresión booleana sobre D6, que se convierte en operación
para cada par de valores x1, x2 que se les asigne.
En general si tenemos una expresión E(x1, x2, . . . xm) de m variables
sobre un álgebra de Boole B, con |B| = n elementos, entonces esta expresión
nos define nm operaciones.
Ejemplo 1.19 A la expresión booleana
E(x1, x2) = x1 + x2
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 22
sobre el álgebra de Boole (D6, /), le corresponden 42 operaciones, que son
las siguientes dependiendo de las asignaciones:
E(1, 1) = 1 + 1 = 1 + 6 = 6
E(1, 2) = 1 + 2 = 1 + 3 = 3
E(1, 3) = 1 + 3 = 1 + 2 = 2
E(1, 6) = 1 + 6 = 1 + 1 = 1
E(2, 1) = 2 + 1 = 2 + 6 = 6
E(2, 2) = 2 + 2 = 2 + 3 = 6
E(2, 3) = 2 + 3 = 2 + 2 = 2
E(2, 6) = 2 + 6 = 2 + 1 = 2
E(3, 1) = 3 + 1 = 3 + 6 = 6
E(3, 2) = 3 + 2 = 3 + 3 = 3
E(3, 3) = 3 + 3 = 3 + 2 = 6
E(3, 6) = 3 + 6 = 3 + 1 = 3
E(6, 1) = 6 + 1 = 6 + 6 = 6
E(6, 2) = 6 + 2 = 6 + 3 = 6
E(6, 3) = 6 + 3 = 6 + 2 = 6
E(6, 6) = 6 + 6 = 6 + 1 = 6
j1
j2 j3
j6
�
�
@
@
�
�
@
@
No está de más insistir de nuevo en que las ope-
raciones suma y producto corresponden respecti-
vamente al mı́nimo común múltiplo y al máximo
común divisor.
Al hacer los cálculos en esta álgebra, el uso del
diagrama de Hasse que aparece a la derecha evita
confusiones.
Ejemplo 1.20 Consideremos la expresión booleana de tres variables
E(x1, x2, x3) = ((x1 + x2) + x3)
sobre el álgebra de Boole trivial B = ({0, 1},+, ). La asignación de una terna
de valores a x1, x2, x3 de las 23 = 8 posibles en total nos da ocho operaciones.
Éstas son:
E(0, 0, 0) = ((0 + 0) + 0) = 0 = 1 E(0, 0, 1) = ((0 + 0) + 1) = 1 = 0
E(0, 1, 0) = ((0 + 1) + 0) = 1 = 0 E(0, 1, 1) = ((0 + 1) + 1) = 1 = 0
E(1, 0, 0) = ((1 + 0) + 0) = 1 = 0 E(1, 0, 1) = ((1 + 0) + 1) = 1 = 0
E(1, 1, 0) = ((1 + 1) + 0) = 1 = 0 E(1, 1, 1) = ((1 + 1) + 1) = 1 = 0
Si hubiésemos considerado la expresión F (x1, x2, x3) = (x1x2)x3 y pro-
cediéramos como en el ejemplo anterior a evaluarla, veŕıamos de inmediato
que obtenemos los mismosvalores. (Consecuencia de la Ley de Morgan).
Podemos por tanto formar una infinidad de expresiones aparentemente
distintas pero muchas de ellas al evaluarlas vemos que nos dan los mismos
valores. En estos casos diremos que las expresiones son equivalentes. Si dos
expresiones E, F de n variables lo son, escribimos,
E(x1, x2, . . . xn) = F (x1, x2, · · ·xn)
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 23
caso contrario se dirán que son no equivalentes.
Debemos preguntarnos entonces, ¿cuántas hay no equivalentes? Por su-
puesto el número dependerá del número de variables que tengan las expre-
siones.
Vamos a suponer primero que contiene una sóla variable x. Entonces es
evidente que sólamente existen 221 = 4 expresiones distintas:
E1(x) = 0 E2(x) = 1
E3(x) = x E4(x) = x
porque las operaciones · y + son cerradas sobre 1, 0, x, x sea cual sea el
valor de la variable x y no pueden entonces obtenerse otras expresiones no
equivalentes.
Para el caso de dos variables es algo más complicado de ver. El siguien-
te teorema nos aclarará esta cuestión. Necesitamos previamente hacer una
definición, y probar un lema que analiza el problema con 2 elementos y no
con 2 variables.
Definición 1.12 Una sugálgebra S de B se dice que esta generada por
a1, a2, · · · ak si todo x ∈ S es obtenido a traves de operaciones booleanas
efectuadas sobre a1, a2, · · · ak. Escribiremos 〈a1, a2, · · · ak〉.
Lema 1.1 El número de elementos del subálgebra de Boole S2 = 〈a, b〉
engendrada por los elementos a, b es finita y tiene a lo sumo 222 elementos.
Demostracion: Consideremos S ′2 = {0} ∪ {Sumas, con sumandos en ab, ab,
ab, ab}. Probemos que S ′2 = S2.
Por ser S2 álgebra de Boole y por contener a a, b contendra cualquier
operación con ellas, luego evidentemente S ′2 ⊆ S2.
Veamos que S2 ⊆ S ′2: los elementos a, a de S2 pueden expresarse a =
a(b + b) = ab + ab, a = ab + ab, igual para b, b. Por tanto están en S ′2.
Además resulta que S ′2 es estable para la suma por definición, lo es para
el producto por ser cero el producto de dos elementos distintos de entre
ab, ab, ab, ab, y lo es para la complementación por la ley de Morgan, (por
ejemplo, (ab) = a + b = ab + ab + ba + ba) Luego como cualquier operación
con a, b en S2 es a su vez una operación con elementos de S ′2, y al ser S ′2
cerrado para las operaciones booleanas, entonces S2 ⊆ S ′2, lo que prueba la
igualdad.
El número de elementos de S ′2 coincide con el del conjunto de las partes
de {ab, ab, ab, ab} porque cualquier suma de ellos se hace tomando una vez
cada sumando, y de cero hasta cuatro sumandos. Luego el cardinal de S ′2 es
222 , y el lema queda probado.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 24
La generalización de este lema para cualquier número k de elementos se
expresa en el siguiente corolario:
Corolario 1.9 El número de elementos de la subálgebra de Boole Sk en-
gendrada por los elementos a1, a2, · · · ak es finita y tiene a lo sumo 22k ele-
mentos.
Demostración: Considerando S ′k = {0}∪{Sumas, con sumandos en l1l2 · · · lk}
donde cada li representa o bien ai o bien ai. Como antes se tiene que Sk = S ′k.
Una demostración detallada del corolario es dejada como ejercicio.
Es importante observar que el teorema dice a lo sumo 22k elementos,
pudiendo según la naturaleza de los elementos elegidos, ser menos. Veamos
un ejemplo:
Ejemplo 1.21 Sea B el algebra de Boole de las partes de un conjunto E,
sean A,B dos subconjuntos. Los posibles casos de subálgebras engendra-
das, según la naturaleza de los conjuntos A y B son cuatro. Gráficamente
corresponden,
��
��
A ��
��
A
��
��
B
��
��
A
��
��
B
E E E E
|〈∅, ∅〉| = 2 |〈A, ∅〉| = 4 |〈A,B〉| = 8 |〈A,B〉| = 16
1. Si A = B = ∅ entonces evidentemente 〈A,B〉 = 〈∅, ∅〉 = {∅, E} tiene
sólo dos elementos.
2. Si uno de ellos es vaćıo y el otro no, 〈A, ∅〉 = {∅, A,A,E} tiene cuatro
elementos.
3. Si ambos son no vaćıos y disjuntos, A ∩ B = ∅ y por tanto en la
formación de uniones (Operación suma, +) esta interseción no inter-
viene. Aśı, sólo hay tres partes distintas para combinar: A ∩ B =
B, B ∩ A = A, A ∩ B, que nos dan 23 = 8 conjuntos que son
{∅, A,B,A,B,A ∩B,A ∪B,E}.
4. Si ambos son no vaćıos y no disjuntos disponemos de 4 = 22 partes
distintas, que al combinar por medio de uniones, nos dan los 24 = 16
conjuntos distintos.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 25
Teorema 1.10 El número de expresiones distintas de k variables es 22k .
Demostración: Si en lugar de considerar elementos a1, a2, . . . , ak, considera-
mos variables x1, x2, . . . xk las expresiones que son o bien el 0, o bien sumas
con sumandos en l1l2 . . . lk con cada li representando xi o bien xi son todas
expresiones distintas y como según el corolario anterior hay a lo sumo 22k ,
el teorema está probado.
Ejemplo 1.22 Las 222 = 16 expresiones distintas que podemos formar
con dos variables x, y son
E1(x, y) = 0 E2(x, y) = xy
E3(x, y) = xȳ E4(x, y) = x̄y
E5(x, y) = x̄ȳ E6(x, y) = xy + xȳ
E7(x, y) = xy + x̄y E8(x, y) = xy + x̄ȳ
E9(x, y) = xȳ E10(x, y) = xȳ + x̄ȳ
E11(x, y) = x̄y + x̄ȳ E12(x, y) = xy + xȳ + x̄y
E13(x, y) = xy + xȳ + x̄ȳ E14(x, y) = xy + x̄y + x̄ȳ
E15(x, y) = xȳ + x̄y + x̄ȳ E16(x, y) = xy + xȳ + x̄y + x̄ȳ
1.4. Funciones entre álgebras booleanas.
En esta sección estudiamos las funciones f :B1 → B2 entre álgebras de
Boole. Como sólo nos vamos a interesar en álgebras de Boole finitas, la
cantidad de estas funciones f va a ser finita. Pero ¿Cuántas de ellas pueden
escribirse por medio de una expresión booleana? Veremos que en un caso
todas. En ése en particular, mostraremos sus aplicaciones a la electrónica
digital. Resumiendo:
• Definimos y analizamos el conjunto F = {f | f :B1 → B2} de las fun-
ciones Booleanas.
• Buscamos las condiciones para que las funciones de F puedan escribirse
por medio de expresiones Booleanas.
• Se estudia en particular Fn = {f | f : {0, 1}n → {0, 1}} como ejemplo
de conjunto de funciones donde todas admiten una expresión booleana.
• Se estudian las aplicaciones del ejemplo anterior a los circuitos eléctri-
cos y redes de compuertas.
Teorema 1.11 El conjunto F = {f | f :B1 → B2} con las operaciones +, ·
definidas como
(f + g)(x) := f(x) + g(x) (f · g)(x) := f(x) · g(x) ∀x ∈ B1
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 26
es un álgebra de Boole 6.
Demostración: Verificar que (F ,+, ·) cumple las propiedades de idem-
potencia, conmutativa, asociativa, simplificativa y distributiva es sencillo.
Luego F es un ret́ıculo algebraico distributivo. El correspondiente ret́ıculo
ordenado (F ,≤), sabemos tiene definido el orden como
f ≤ g :⇔ f + g ≤ g
y como para que f +g = g, se debe tener para todo x de B1 que (f +g)(x) =
f(x) + g(x) = g(x) podemos entonces concluir que
f ≤ g ⇔ f(x) ≤ g(x) (∀x ∈ B1).
Si 0,1 son las funciones que asignan a cada elemento x de B1 respectivamente
al ı́nfimo 02 y al supremo 12 de B2
0: B1 → B2
x 7→ 0(x) = 02
1: B1 → B2
x 7→ 1(x) = 12
se tiene entonces que 0 y 1 son ı́nfimo y supremo de F , y por tanto es
un ret́ıculo distributivo acotado. El complemento f de una función también
existe y está necesariamente definido como
f : B1 → B2
x 7→ f(x) = f(x)
Por tanto (F ,+, ·) es un ret́ıculo distributivo con la propiedad de comple-
mento o álgebra de Boole.
Consideremos ahora que B1 y B2 son finitos con n,m átomos respectiva-
mente. Entonces |B1| = 2n y |B2| = 2m y el número de funciones entre ellos
es (2m)2n = 2m2n . Como según acabamos de ver todas juntas constituyen el
álgebra de Boole de las funciones, este algebra tendrá entonces m2n átomos.
Veamos un ejemplo.
Ejemplo 1.23 Consideremos las funciones entre el álgebra de Boole tri-
vial ({0, 1},+, ·) y el de las partes de {a, b} con las operaciones unión e
6No debe existir confusión alguna si usamos los mismosśımbolos de operadores +, ·,
para definir estas operaciones entre funciones.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 27
intersección (P({a, b}),∪,∩). Hay en total 42 = (22)21 = 24 = 16 funciones
y constituyen un álgebra de Boole con cuatro átomos. No es dif́ıcil deducir
que estas funciones átomos f1, f2, f3, f4 son las que se expresan en forma
tabular:
x f1(x) x f2(x) x f3(x) x f4(x)
0 ∅ 0 ∅ 0 {a} 0 {b}
1 {a} 1 {b} 1 ∅ 1 ∅
las demás funciones las podemos ir construyendo como sabemos por el teo-
rema 1.6, haciendo sumas con estas cuatro, y obtenemos
f5 := f1 + f2
f6 := f1 + f3
f7 := f1 + f4
f8 := f2 + f3
f9 := f2 + f4
f10 := f3 + f4
f11 := f1 + f2 + f3
f12 := f1 + f2 + f4
f13 := f1 + f3 + f4
f14 := f2 + f3 + f4
0
f1 f2 f3 f4
f5 f6 f7 f8 f9 f10
f11 f12 f13 f14
1
�
�
�
�
�
��
A
AA
Q
Q
Q
Q
Q
Q
Q
Q
A
AA
�
��
�
�
�
�
�
��
�
��
�
��
�
��
�
��
�
��
@
@@
@
@@
��
��
��
��
��
��
��
��
��
��
��
��
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
HH
que junto con las funciones 0 y 1
son en total 16.
El diagrama de Hasse de este
ret́ıculo aparece a la derecha. Pode-
mos observar que es muy parecido al
ret́ıculo de los divisores de 210 que an-
tes vimos. En realidad son los mismos,
es decir son dos ret́ıculos isomorfos.
Expresadas en tablas estas funcio-
nes son:
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 28
x f5 = f1 + f2 x f6 = f1 + f3 x f7 = f1 + f4
0 ∅ 0 {a} 0 {b}
1 {a, b} 1 {a} 1 {a}
x f8 = f2 + f3 x f9 = f2 + f4 x f10 = f3 + f4
0 {a} 0 {b} 0 {a, b}
1 {b} 1 {b} 1 ∅
x f11 = f1 + f2 + f3 x f12 = f1 + f2 + f4 x f13 = f1 + f3 + f4
0 {a} 0 {b} 0 {a, b}
1 {a, b} 1 {a, b} 1 {a}
x f14 = f2 + f3 + f4 x 0 x 1
0 {a, b} 0 ∅ 0 {a, b}
1 {b} 1 ∅ 1 {a, b}
1.4.1. Funciones booleanas.
Es evidente como acabamos de ver en el ejemplo anterior que resulta
tediosa la manipulación de funciones entre álgebras de Boole si ha de hacerse
por medio tablas.
Seŕıa deseable al igual que ocurre con las funciones de variable real,
disponer de fórmulas para poder expresarlas y operar con ellas. Con variables
en los reales, cualquier expresión en la que se vean involucradas sumas,
restas, productos, cocientes . . ., nos define una función f : IR→ IR. Podemos
aśı obtener una infinidad de ellas, que aunque evidentemente no son todas las
que existen, si lo son en cantidad suficiente para considerarlas en el estudio
del cálculo.
En cambio cualquier función f :B → B entre álgebras de Boole, de te-
ner alguna regla que permita asignar a cada x una fórmula f(x), será sólo
una de las 221 = 4 posibles expresiones que nos asegura el teorema 1.10,
concretamente, 0, 1, x, x.
Por tanto si el cardinal de B es 2k, existen entonces (2k)2k = 2k2k fun-
ciones de las cuales sólo cuatro de ellas son afortunadas de poder escribirse
como expresión booleana, a no ser que k = 1 con lo que lo seŕıan todas.
Si consideramos funciones f :Bn → B ocurre algo similar. Si queremos
una regla que asigne a cada (x1, x2, . . . , xn) una fórmula f(x1, x2, . . . , xn),
será sólo una de las 22n posibles que nos garantiza el teorema 010. Pero el
número de estas funciones es 2k2nk
, y de nuevo, sólo serán todas expresables
si k = 1.
Un análisis similar para funciones f :Bn → Bm nos hace ver que sólo
2m2n son expresables de un total de 2mk2nk
, y también si queremos que sean
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 29
todas, es necesario que k = 1.
Si k = 1 significa que B es el álgebra de boole trivial {0, 1} o cualquier
otra isomorfa a ella. Pero esta condición no va a ser sólo necesaria sino
también suficiente. Veámoslo.
Antes, vamos a formalizar los conceptos:
Definición 1.13 Una función f :Bn → Bm es función booleana si exis-
ten E1, E2, · · · , Em expresiones booleanas tales que para todo (x1, x2, . . . , xn)
de Bn
f(x1, x2, . . . , xn) =

E1(x1, x2, . . . , xn)
E2(x1, x2, · · · , xn)
...
Em(x1, x2, . . . , xn)

Aunque se expresa una definición para el caso general, todo el estudio que
sigue es para funciones f :Bn → B. En este caso f es función booleana si y
sólo si existe una expresión booleana E tal que para todo (x1, x2, . . . , xn)
de Bn, f(x1, x2, . . . , xn) = E(x1, x2, . . . , xn). Los resultados que se obtienen
pueden generalizarse de inmediato.
Ejemplo 1.24 Para las funciones f, g definidas de (D6, /)2 hacia (D6, /)
que se expresan en forma tabular
(x1, x2) f(x1, x2) (x1, x2) g(x1, x2)
(1, 1) 6 (1, 1) 1
(1, 2) 3 (1, 2) 1
(1, 3) 2 (1, 3) 6
(1, 6) 1 (1, 6) 1
(2, 1) 6 (2, 1) 6
(2, 2) 6 (2, 2) 2
(2, 3) 2 (2, 3) 3
(2, 6) 2 (2, 6) 3
(3, 1) 6 (3, 1) 3
(3, 2) 3 (3, 2) 6
(3, 3) 6 (3, 3) 1
(3, 6) 3 (3, 6) 2
(6, 1) 6 (6, 1) 2
(6, 1) 6 (6, 2) 3
(6, 1) 6 (6, 3) 2
(6, 6) 6 (6, 6) 3
resulta que f(x1, x2) = x1 + x̄2, por tanto es función booleana. En cambio
g no lo es por no existir expresión alguna para ella. ¿Porqué? La justifición
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 30
es la siguiente: Supongamos que existe una expresión E(x1, x2) para g. Pero
esta expresión define necesariamente la misma función que
E(x1, x2) = 6 · E(x1, x2)
= (x1 + x̄1)E(x1, x2) = x1E(x1, x2) + x̄1E(x1, x2)
= x1E(6, x2) + x̄1E(1, x2) (Porqué?)
y en particular si x1 = 2 y x2 = 3 entonces de una parte tendŕıamos
E(x1, x2) = E(2, 3) = 3 y de otra E(x1, x2) = 2 · E(6, 3) + 3 · E(1, 3) =
2 · 2 + 3 · 6 = 2 + 3 = 6 lo que es contradicción.
Ya sab́ıamos que hab́ıan, y acabamos de ver y probar un ejemplo de
función que no es booleana. Pero ¿Cómo se calcula la expresión para una
función booleana? Entre álgebras de boole como la del ejemplo anterior en
la que no todas las funciones son funciones booleanas, nos vemos obligados
a hacerlo por tanteo. Pero no va a ser aśı en el caso en que tratemos con un
álgebra de Boole de funciones donde todas las son booleanas.
El teorema que sigue nos proporciona un procedimiento constructivo
para el cálculo de la expresión booleana de una función.
Teorema 1.12 En el conjunto Fn = {f | f : {0, 1}n → {0, 1}} todas las
funciones son booleanas, y admiten como expresión
f = m1 + m2 + · · ·+ mr
donde cada mj, (1 ≤ j ≤ r) es de la forma mj = l1l2 . . . ln en donde los li,
(1 ≤ i ≤ n) representa o bien xi ó x̄i.
Demostración: Como sabemos por el teorema 1.6 todo elemento puede ex-
presarse como suma de los átomos inferiores. Si verificamos que en esta
álgebra de Boole Fn, los átomos son los mj el teorema estará probado.
Esto es inmediato. Existen 2n átomos en Fn. Cada uno de estos átomos
m viene definido de forma única por un elemento (a1, a2, . . . an) de {0, 1}n,
de la siguiente forma
m(x1, x2, . . . , xn) =
{
1 si (x1, x2, . . . , xn) = (a1, a2, . . . , an)
0 si (x1, x2, . . . , xn) 6= (a1, a2, . . . , an)
y entonces la función m = l1l2 . . . ln donde
li =
{
xi si ai = 1
x̄i si ai = 0
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 31
es una expresión booleana que define a m, ya que el producto de n elementos
sólo puede ser 1, cuando todos los sean, y esto se dará sólo para el elemento
(a1, a2, . . . an). El teorema está probado.
Las funciones átomos mj se llaman mintérminos, y tienen este nom-
bre porque los átomos son los elementos minimales que tiene Fn una vez
suprimido el ı́nfimo. Las funciones xi, x̄i se llaman literales. Una función
booleana f expresada en suma de mintérminos no es otra que la expresión
en forma normal disyuntiva de f . Escribiremos f.n.d
Ejemplo 1.25 Consideremos la función f ∈ F3 definida en la tabla,
(x1x2x3) f(x1x2x3)
(000) 1
(001) 0
(010) 1
(011) 0
(100) 0
(101) 0
(110) 1
(111) 0
esta función resulta ser la suma de tres funciones átomos m1, m2, m3:
(x1x2x3) m1(x1x2x3) (x1x2x3) m2(x1x2x3) (x1x2x3) m3(x1x2x3)
(000) 1 (000) 0 (000) 0
(001) 0 (001) 0 (001) 0
(010) 0 (010) 1 (010) 0
(011) 0 (011)0 (011) 0
(100) 0 (100) 0 (100) 0
(101) 0 (101) 0 (101) 1
(110) 0 (110) 0 (110) 0
(111) 0 (111) 0 (111) 0
m1(x1x2x3) = x̄1x̄2x̄3 m2(x1x2x3) = x̄1x2x̄3 m1(x1x2x3) = x1x̄2x3
por tanto la forma normal disyuntiva de esta función es
f(x1x2x3) = x̄1x̄2x̄3 + x̄1x2x̄3 + x1x̄2x3
Puede ser redactado el teorema dual del teorema 1.12 y resulta igualmente
que todas las funciones f de Fn admiten una expresión
f = M1 ·M2 · · · · ·Ms
donde cada Mj , (1 ≤ j ≤ s) es de la forma Mj = l1 + l2 + · · · + ln con li,
(1 ≤ i ≤ n) o bien xi, ó x̄i.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 32
Los términos Mj se llaman maxtérminos ya que son superátomos, es
decir, los elementos maximales que resultan al suprimir en Fn el supremo. Al
igual que con los átomos, un elemento (a1, a2, . . . an) define de forma única
un superátomo M , de la forma
M(x1, x2, . . . xn) =
{
1 si (x1, x2, . . . xn) 6= (a1, a2, . . . an)
0 si (x1, x2, . . . xn) = (a1, a2, . . . an)
cuya expresión booleana es Mj = l1 + l2 + · · · ln donde
li =
{
xi si ai = 0
x̄i si ai = 1
Volviendo de nuevo al ejemplo anterior, la función f al tomar valor cero
para los 5 elementos (001), (011), (100), (110), (111) puede ser expresada
como producto de 5 maxtérminos de la forma:
f(x1x2x3) = (x1+x2+x̄3)(x1+x̄2+x̄3)(x̄1+x2+x3)(x̄1+x̄2+x3)(x̄1+x̄2+x̄3)
Una funcióm expresada como producto de maxtérminos es la expresión
en forma normal conjuntiva. Escribiremos f.n.c
Es posible utilizar una notación más cómoda que nos va a permitir ex-
presar las f.n.d y f.n.c de una función booleana. Supongamos que en Fn
consideramos los elementos de Bn como números binaros, y los disponemos
siempre ordenados de menor a mayor para expresar una función en una
tabla.
De esta forma, por ejemplo en el caso n = 3, los ocho números binarios
ordenados corrresponden a los ocho números decimales 0, 1, 2, 3, 4, 5, 6, 7
Binario Decimal mintérmino maxtérmino
(x1x2x3) que define que define
000 0 x̄1x̄2x̄3 x1 + x2 + x3
001 1 x̄1x̄2x3 x1 + x2 + x̄3
010 2 x̄1x2x̄3 x1 + x̄2 + x3
011 3 x̄1x2x3 x1 + x̄2 + x̄3
100 4 x1x̄2x̄3 x̄1 + x2 + x3
101 5 x1x̄2x3 x̄1 + x2 + x̄3
110 6 x1x2x̄3 x̄1 + x̄2 + x3
111 7 x1x2x3 x̄1 + x̄2 + x̄3
y cada uno de estos números binarios x1x2x3 nos define de forma única
un mintérmino cuando para sólo en ese número la función vale 1, y un
maxtérmino cuando para sólo en ese número la función vale 0.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 33
Aśı entonces podemos expresar la f.n.d de una función como la del ejem-
plo 1.25 anterior de una manera más resumida como,
f(x1, x2, x3) =
∑
i=0,2,6
mi
donde mi es el mintérmino que define el elemento de B3 que en decimal se
expresa por i 7.
También podemos expresar la f.n.c de la función del mismo ejemplo como
f(x1x2x3) =
∏
i=1,3,4,5,7
Mi
donde Mi es el maxtérmino que define el elemento de B3 que en decimal
se expresa por i. Por supuesto podemos pensar que cuando n es grande al
ser el valor de i cualquiera entre 0 y 2n − 1, que esta notación tampoco es
de mucha utilidad. Sin embargo, tal y como vamos a ver en un próximos
ejemplos el uso de funciones de Fn para valores de n superiores a 6 no se
hace con mucha frecuencia 8.
Estas notaciones son muy útiles para poder pasar indistintamente de la
f.n.c a la f.n.d y viceversa por tratarse de conceptos duales. Bastará sus-
tituir entre
∑
y
∏
, mi y Mi, y el conjunto de valores i por el conjunto
complemento.
Ejemplo 1.26 La función f :B4 → B cuya f.n.c es
f(x1x2x3x4) =
∏
i=0,2,3,7,11,12,13
Mi
tiene como f.n.d
f(x1x2x3x4) =
∑
i=1,4,5,6,8,9,10,14,15
mi
Hasta este momento todas las funciones de Fn que hemos dado y mane-
jado en los ejemplos se han hecho por medio de tablas, y desde ella sabemos
encontrar su formas normales. Pero también es posible que las funciones
nos vengan dadas por una expresión booleana cualquiera. Para encontrar
7En muchos textos, se suele utilizar la notación
∑
m(0, 2, 6) para expresar lo mismo.
Nosotros preferimos usar esta otra que nos parece más correcta.
8Hay que tener en cuenta que el cardinal de Fn aumenta muy rápidamente cuando lo
hace n. Se tiene que |F3| = 223 = 256 que no es muy grande, |F4| = 224 = 65,536 que
ya śı lo es, pero los cardinales |F5| = 4,292,967,296 y |F6| = 18,446,744,073,709,551,616
se disparan. Existe cantidad sufuciente de funciones, cada una con propiedades distintas,
para poder elegir.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 34
la forma normal podemos proceder de dos formas. Una de ellas es escribir
la tabla y hacer como antes (proceso largo para n > 3), y la otra, usar las
leyes del álgebra de Boole y manipular las expresiones. Veamos un par de
ejemplos.
Ejemplo 1.27 Dada f(x, y, z, w) = yz̄w + xy calcula su f.n.d 9.
Solución: Se examina cada sumando y se transforma en suma de otros
dos con un literal más, hasta que contenga los cuatro literales:
• yz̄w = 1yz̄w = (x + x̄)yz̄w = xyz̄w + x̄yz̄w (1)
• xy = xy1 = xy(z + z̄) = xyz + xyz̄
◦ xyz = xyz1 = xyz(w + w′) = xyzw + xyzw′ (2)
◦ xyz̄ = xyz1 = xyz̄(w + w′) = xyz̄w + xyz̄w′ (3)
y después teniendo en cuenta la propiedad idempotente, la suma de las
expresiones (1) (2) (3) una vez ordenadas nos da
f(x, y, z, w) = x̄yz̄w + xyz̄w′ + xyz̄w + xyzw′ + xyzw
cuya expresión con notación de sumatoria es
f(x, y, z, w) =
∑
i=5,12,13,14,15
mi
Ejemplo 1.28 Dada f(x, y, z) = (x + z̄)y, calcula su f.n.c
Solución: Aqúı realizamos el proceso dual al anterior, es decir, examina-
mos los productos por separado, y los transformamos en producto de otros
dos con un literal más, hasta que contenga los tres literales
• x + z̄ = x + z̄ + 0 = x + z̄ + (yȳ) = (x + y + z̄)(x + ȳ + z̄)
• y = y + 0 = y + (zz̄) = (y + z)(y + z̄)
◦ y + z = 0 + y + z = (xx̄) + y + z = (x + y + z)(x̄ + y + z)
◦ y + z̄ = 0 + y + z̄ = (xx̄) + y + z̄ = (x + y + z̄)(x̄ + y + z̄)
el producto de las expresiones una vez ordenadas nos da
f(x, y, z) = (x + y + z)(x + y + z̄)(x̄ + y + z̄)(x + ȳ + z̄)(x̄ + y + z)
que en notación de producto resulta
f(x, y, z) =
∏
i=0,1,2,3,4
Mi
9Este cambio en la notación se hace con objeto de facilitar la manipulación de las
variables.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 35
Está claro que las expresiones inicialmente dadas en los ejemplos ante-
riores resultaban ser más sencillas y económicas de escribir que sus formas
normales.
En general, como vamos a ver en la próxima sección, el problema que
más interesa es el rećıproco. Es decir, dada cualquier expresión, deseamos
poder “simplificarla” al máximo. La necesidad de la simplificación queda
aún más justificada en los ejemplos de funciones entre álgebras de boole que
seguidamente siguen: Los circuitos eléctricos y las redes de compuertas.
Circuitos eléctricos.
Consideremos un circuito eléctrico en el que pueden disponerse junto con
una fuente de alimentación, sólo cables e interruptores dispuestos en serie y
en paralelo. Analizémoslo desde sus partes más elementales:
1. Un interruptor puede ser considerado como una variable x, en el senti-
do de que puede tomar el valor si si el interruptor está dispuesto para
que pueda fluir la corriente, y el valor no si lo está en caso contrario
de forma que la corriente no fluye.
Por tanto si consideramos el conjunto {no, si} establecemos en él el
orden no ≤ si, y deducimos de este orden las operaciones +, ·, entonces
x es una variable del álgebra de Boole de dos elementos
{{no, si},+, ·}
También entonces x̄ designará una variable que valdrá si si la corriente
no pasa, y no en caso contrario.
Dos interruptores pueden ser considerados a su vez como una variable
(x1, x2) del conjunto producto del anterior
{{no, si}2,+, ·}
y en general (x1, x2, . . . , xn) es una variable de
{{no, si}n,+, ·}
2. Una vez analizados los interruptores, analizemos circuitosque los con-
tienen.
Consideremos el circuito C de la figura. Lo que nos interesa de él
es saber cuándo dejará pasar la corriente de un extremo del mismo
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 36
hasta el otro. Por supuesto dependerá de la disposiciones de los tres
interruptores que hay en el circuito. En total hay 8 alternativas, y para
cada una de ellas la corriente “si” fluye o “no” fluye.
Todas las posibilidades se resumen en la tabla,
-
x3
x1 x2
-
Circuito C.
x1x2x3 fc(x1x2x3)
no no no no
no no si si
no si no no
no si si si
si no no no
si no si si
si si no si
si si si si
Podemos por tanto considerar el circuito C como el elemento fc del
algebra de Boole de las funciones
F = {f : {no, si}3 → {no, si}}
que aparece descrita en dicha tabla.
Si un circuito es entonces una función, ¿qué funciones representan a
los circuitos que son la disposiciones en paralelo y en serie de otros
dos A y B? En el primer caso como la corriente fluye cuando lo hace
en alguno de los dos A, o B corresponderá a la operación de F que
hayamos identificado como la suma. Como de circuitos se trata, pode-
mos denominarla PAR de “paralelo”. En el segundo como la corriente
pasa sólo si lo hace por ambos, corresponde a la operación producto y
aqúı la llamaremos SER de “serie”. Y rećıprocamente dada una función
de (F , PAR, SER) es posible trazar un circuito, disponiendo en serie los
tramos que estén ligados por SER y en paralelo los que lo estén por
PAR.
Por tanto el circuito que resulta de la función
f(x1x2x3) = (x1SERx2)PARx3
es el circuito C de la figura.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 37
Pero, por otra parte, el circuito C dado que está representado por la
función fc de la tabla admite la expresión booleana en f.n.c
f(x1, x2, x3) = (x̄1SERx̄2SERx3)PAR(x̄1SERx2SERx3)PAR
PAR (x1SERx̄2SERx3)PAR(x1SERx2SERx̄3)PAR
PAR (x1SERx2SERx3)
que si a su vez lo volvemos a dibujar obtenemos
x̄1 x̄2 x3
x̄1 x2 x3
x1 x̄2 x3
x1 x2 x̄3
x1 x2 x3
- -
circuito que aunque de distinto aspecto al anterior, tiene las mismas
propiedades. En este caso también los llamamos equivalentes.
En general un circuito C con n interruptores, será entonces una función
de
F = {f : {no, si}n → {no, si}}
3. Resumiendo, si identificamos no con el 0, y si con el 1, tenemos que
{{no, si}n,+, ·} y F no son otros sino {{0, 1}n,+, ·} y Fn, y todo lo
expuesto puede enunciarse como
Teorema 1.13 A cada circuito C con n interruptores le corresponde
de forma única una función fc de Fn, y rećıprocamente.
El siguiente ejemplo nos muestra ¡por fin! una utilidad a toda la teoŕıa
desarrollada:
Ejemplo 1.29 Se desea diseñar un circuito que conste de 4 interruptores,
en los que cada uno sirva para decidir votar a favor o en contra a cuatro
miembros 1, 2, 3, 4 de un tribunal, de forma que
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 38
1. En caso de empate se considera no superada la votación a no ser que
4 haya votado favorable.
2. El votante 1 tiene derecho a veto.
Podemos considerar que los votantes 1, 2, 3, 4 disponen cada uno de un in-
terruptor x1, x2, x3x4 que cerrarán si quieren votar si y no tocarán en caso
contrario. Supongamos que el votante 1 es el que tiene tiene derecho a veto.
Es este caso, el circuito que satisface estas exigencias, es aquél que define la
función f que se expresa en la tabla:
x1x2x3x4 Decimal f(x1x2x3)
0000 0 0
0001 1 0
0010 2 0
0011 3 0
0100 4 0
0101 5 0
0110 6 0
0111 7 0
1000 8 0
1001 9 1
1010 10 0
1011 11 1
1100 12 0
1101 13 1
1110 14 1
1111 15 1
entonces la función es
f(x1x2x3) =
∑
i=9,11,13,14,15
mi
= x1x̄2x̄3x4 + x1x̄2x3x4 + x1x2x̄3x4 + x1x2x3x̄4 + x1x2x3x4
con lo que tendŕıamos resuelto el problema del diseño del circuito.
Pero es evidente que este circuito debe de poder hacerse de forma me-
nos compleja: Si tenemos en cuenta que podemos permutar y repetir los
mintérminos mi, tenemos que
f(x1x2x3) = (m9 + m13) + (m11 + m15) + (m14 + m15)
= (x1x̄3x4) + (x1x3x4) + (x1x2x3)
= x1x4 + x1x2x3
expresión equivalente a la anterior que nos proporciona un ahorro conside-
rable a la hora de construir el circuito que deseamos.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 39
Redes de compuertas
En el diseño y construcción del hardware de ordenadores y otros aparatos
electrónicos, es necesario obener redess que puedan producir salidas con valor
0 o 1 a partir de n entradas dadas, con valores también 0,1. Es decir, circuitos
que representan funciones de Fn. Para ello, se usan unos dispositivos (en
realidad microcircuitos), que son funciones de F1 y de F2 y que son llamados
compuertas lógicas. Principalmente las compuertas que se usan con mayor
frecuencia son las seis básicas que siguen, representadas esquematicamente:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
y
x
y
x
x
y
x
y
x
y
x
OR(x, y)
AND(x, y)
NOT(x)
NOR(x, y)
NAND(x, y)
XOR(x, y)��
HH
�
�
�
�
d
d
d
cada una de ellas, salvo la NOT que es función de F1, es una función de F2.
Concretamente,
NOT(x) = x
OR(x, y) = x + y
NOR(x, y) = x + y := x ↑ y
AND(x, y) = xy
NAND(x, y) = xy := x ↓ y
XOR(x, y) = xy + xy := x⊕ y
Si tomamos por ejemplo las funciones NOT, AND y OR y las considera-
mos como simples operadores (sólo nos fijamos en la regla con que se obtiene
un elemento a partir de otros dos dados), como cualquier función de Fn se
expresa con esos tres operadores podemos construir otras funciones de Fn.
Veamos un sencillo ejemplo:
Ejemplo 1.30 Expresar un circuito con dispositivos NOT, AND y OR que
represente la función de F3, f(x, y, z) = x + yz.
Dado que x+ yz = OR(x, yz) = OR(NOT(x),AND(y, z)) entonces su co-
rrespondiente red se construye observando de derecha a izquierda la anterior
expresión y trazándose las respectivas compuertas. La red que resulta es:
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 40
-
-
-
-
z
y
x x + yz��
HH
�
�
d
Es cierto que |F2| = 16, y que podemos entonces tener hasta 16 compuertas
distintas, pero, la eficacia y economı́a de costo de los circuitos construidos
principalmente con estas seis compuertas hace que sean las más usados 10.
El desarrollo y estudio exaustivo de las redes de compuertas no tiene ca-
bida en este texto, y se tratan en otras materias como base de la electrónica.
No nos extendemos más, pero no obstante, por último vamos a exponer un
ejemplo interesante de cómo son usados estos dispositivos para fabricar una
circuito que sirva para sumar números binarios en un ordenador.
Ejemplo 1.31 Al sumar dos números binarios vamos a obtener dos d́ıgitos
binarios. Uno de ellos será la suma parcial y el otro el acarreo. Como
podemos observar en la tabla,
x y Acarreo Suma
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0
10En este texto no se analiza la forma en que estas compuertas pueden ser construidas, es
objeto de estudio de otras materias. Nosotros aqúı nos limitamos a tratar una compuerta
fijándonos exclusivamente en las propiedades de la función que define.
Es interesante observar no obstante que es posible con sólo compuertas del tipo NAND
o con sólo del tipo NOR, trazar cualquier circuito. Este hecho puede ser enunciado como
un teorema,
Teorema 1.14 Para sintetizar una función booleana cualquiera siempre es posible
construir un circuito compuesto únicamente por compuertas NAND, o bien por compuertas
NOR.
Demostración: Es suficiente mostrar que las compuertas NOT, OR, AND pueden ser expre-
sadas en función de aquellas. Veamos la expesión en función de NAND. La función NOT
se obtiene, NOT(x) = x = xx = x ↓ x,
La función OR(x, y) = x + y = x̄ȳ = x̄ ↓ ȳ = (x ↓ x) ↓ (y ↓ y) y la función AND(x, y) =
xy = xy + xy = xy · xy = (x ↓ y) ↓ (x ↓ y).
Las expresiones de estas tres en función de compuertas NOR, es dejada como ejerci-
cio.
Departamento deMatemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 41
“acarreo” y “suma” resultan ser funciones booleanas de F2, respectivamente
A(x, y) = xy, S(x, y) = xy + xy = x⊕ y.
-
-
-
-
y
x
xy A
x⊕ y S
�
�
•
•
Definimos entonces Se-
misumador como una fun-
ción de {0, 1}2 en {0, 1}2 que
a cada par (x, y) hace co-
responder su suma binaria
(xy, x⊕y). El correspondien-
te circuito semisumador que
aparece a la derecha, tiene dos salidas A,S (una por función), y proporciona
la suma AS.
Al sumar tres números binarios, también obtenemos dos d́ıgitos binarios,
suma parcial S, y acarreo A. La tabla correspondiente es,
x y z Acarreo Suma
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
Observándola, resulta que S = (x ⊕ y) ⊕ z = x ⊕ y ⊕ z 11, y que A =
xyz+xyz+xyz+xyz = (xyz+xyz)+(xyz+xyz)+(xyz+xyz) = xy+xz+yz.
Definimos pues Sumador a una función de {0, 1}3 en {0, 1}2 que asigna
a cada terna (x, y, z) el par (xy + xz + yz, x⊕ y ⊕ z). Si tomamos en lugar
de xy+xz + yz la expresión equivalente xy+ z(x+ y), la red que representa
el sumador puede dibujarse con una compuerta menos. Es la siguiente:
-
-
-
-
-
z
y
x
xy + z(x + y)
x⊕ y ⊕ z
A
S�
 �
•
•
•
•
•
11Es fácil comprobar que ⊕ considerado como operador es asociativo.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 42
Finalmente, usando los circuitos semisumadores y sumadores podemos fa-
bricar otros que sirvan para sumar números binarios de cualquier longitud
de d́ıgitos. En particular para tres, si queremos sumar X = x3x2x1 con
Y = y3y2y1, la red
-
-
-
-
-
-
-
-
-
-
y3
x3
y2
x2
y1
x1
z4
z3
z2
z1
Semisumador
Sumador
Sumador
proporciona la suma X + Y = z4z3z2z1. Obsérvese que lo hace de la misma
forma que el algoritmo común de suma de números, es decir, teniendo en
cuenta que el bit que “se lleva” se considera en la próxima suma binaria.
1.4.2. Simplificación de expresiones booleanas. Diagramas
de Karnaugh
En esta sección expondremos lo necesario para abordar métodos de sim-
plificación de fórmulas.
Observemos la función f(x, y, z) = xȳz̄+xȳz+xyz̄+xyz. Utilizando las
propiedades distributiva y de complemento podemos deducir que f(x, y, z) =
xȳ(z̄ + z) + xy(z̄ + z) = xȳ + xy = x(ȳ + y) = x.
En este caso un breve tanteo ha sido suficiente para llegar rápidamente
a comprobar que f era simplemente x. Pero seŕıamos optimistas si preten-
diésemos encontrar con la misma rapidez una simplificación de la fórmula
f(x, y, z, w) = (xyz̄ + x̄y(y + z + w) + xz)wy.
En primer lugar, si no establecemos condiciones sobre la naturaleza de
las fórmulas que representan a una misma función, existen demasiados ca-
sos, y la búsqueda de la “fórmula más simple” es un problema dif́ıcil que no
sabremos resolver en general. No obstante, śı que se disponen de procedi-
mientos para encontrar fórmulas más simples de entre las que son de cierto
tipo. Veamos a cuáles.
Para ello hemos de hacer previamente algunas definiciones:
Definición 1.14 Una función booleana es un cubo si es una función cons-
tante a 1 o es un producto de literales.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 43
Por ejemplo en F3, xyz̄, x, ȳz son cubos. En particular xyz̄ es un mintérmino.
Si m y M son cubos, diremos que m es absorbido por M si m ≤ M .
Por ejemplo xyz es absorbido por xy. En general m es absorbido por M si
los literales que intervienen en la formación del cubo m contienen los de la
formación M .
El número de cubos que existen con n variables es 3n ya que al formar
un cubo, cada variable x puede ser no elegida, elegida como tal x o elegida
complementada x̄. En el caso de dos variables, existen 32 cubos que son
1, x, x̄, y, ȳ, xy, xȳ, x̄y, x̄ȳ.
Una función booleana se dice que está expresada como fórmula poli-
nomial si es una suma de cubos. La fórmula polinomial se dice reducida si
ningun cubo de la fórmula absorbe a ningún otro. Por ejemplo xȳz+xȳ+ x̄z
es una fórmula polinomial pero no es reducida porque xȳz es absorbido por
xȳ. En cambio xȳz + x̄z si es una fórmula polinomial reducida. Vamos a
buscar entre todas las fórmulas polinomiales reducidas, aquella que es más
simple. Previamente definamos este concepto:
Definición 1.15 Sea f función booleana, y sean p1 ≡ m1 +m2 + · · ·+mr,
p2 ≡ M1 + M2 + · · · + Ms dos expresiones de f en fórmulas polinomiales
reducidas. Se dirá que p1 es más simple que p2 si r ≤ s y si cada mi absorbe
al menos un Mj.
Por ejemplo la función f , cuya f.n.d. es xyz+xȳz̄+xyz̄+ x̄yz̄ tiene otra
fórmula polinomial xyz + xz̄ + yz̄ que es más simple porque tiene menos de
cuatro cubos y cada uno de ellos absorbe a algunos de los otros de la f.n.d.
En otras palabras una fórmula polinomial reducida de f es más simple
que otra si tiene menos cubos y con menos literales.
No es dif́ıcil comprobar que la relación “ser más simple” establecida entre
las fórmulas polinomiales reducidas de una función es una relación de orden
12. Esta relación no tiene porqué ser nesesariamente total. En particular
para la función del ejemplo anterior tenemos un total de siete fórmulas
polinomiales reducidas (¿Cómo las hemos calculado?):
�
�
�
��
�
�
�
@
@
@
@@ @
@
@
p7
p6p4
p5
p2 p3
p1
p1 ≡ xyz + xȳz̄ + xyz̄ + x̄yz̄
p2 ≡ xyz + xz̄ + x̄yz̄
p3 ≡ xyz + xȳz̄ + yz̄
p4 ≡ x̄yz̄ + xy + xz̄
p5 ≡ xyz + xz̄ + yz̄
p6 ≡ xȳz̄ + xy + yz̄
p7 ≡ xy + xz̄ + yz̄ •
• •
•
•
•
•
12Ojo, la relación se establece entre las fórmulas polinomiales reducidas de una misma
función booleana.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 44
que aparecen ordenadas en el diagrama de hasse de la derecha. Podemos
entonces decir que una fórmula polinomial reducida es la más simple si es
una fórmula minimal por la relación anterior 13.
En el ejemplo anterior p7 es minimal y por tanto es la fórmula polinomial
reducida más simple de f . A continuación exponemos un procedimiento para
calcular fórmulas minimales.
Método de los diagramas de Karnaugh.
El método va a permitir con ayuda de un diagrama encontrar fórmulas
polinomiales minimales de funciones de F3 y F4. El procedimiento puede
generalizarse para funciones de F5 y F6 pero la complicación es tal que el
método carece de interés.
Enpezamos viendo lo que es un diagrama de Karnaug de una función
booleana. Observemos las figuras,
110 100 000 010
111 101 001 011
1100 1000 0000 0100
1101 1001 0001 0101
1110 1010 0010 0110
1111 1011 0011 0111
y y y y y y
w
w
w
x x
x x
z
z
z
z
en la primera cada elemento de {0, 1}3 está representado en una casilla, y en
la segunda están los de {0, 1}4, y están dispuestos con la siguiente intención:
dos elementos representados en casillas adyacentes difieren en exactamente
una cifra.
Podemos no obstante ver que los elementos 1101 y 0101 aunque difieren
en una cifra, no son adyacentes. En cambio, śı lo son si extendemos el con-
cepto de adyacencia y lo aplicamos a figura que resulta de yustaponer en los
lados otras figuras idénticas.
1101 0101
Casillas
adyacentes�
�	
��������9
�
�	
��������9
Cuando hablemos de adyacen-
cia pues, lo haremos en el sentido
extendido.
Con esta disposición de los ele-
mentos, podemos representar en la
figura una función booleana sin
13El elemento minimal no necesariamente es mı́nimo, es decir no tiene porqué ser único.
Departamento de Matemática Aplicada José Luis Leal Ruperto
Algebra de Boole y aplicaciones 45
más que marcar las casillas que co-
rresponden a los elementos que to-
man valor 1. La figura que resulta
se llama Diagrama de Karnaugh.
×
× × ×
xy xȳ x̄ȳ x̄y
z̄
z
f = xyz̄ + xȳz + x̄ȳz + x̄yz
Por ejemplo, la figura que aparece a la
derecha es el diagrama de Karnaugh de la
función de F3 f(x, y, z) = xȳz+ x̄yz+xyz̄+
x̄ȳz.
Podemos observar de forma inmediata
algunas propiedades de estos diagramas:

Continuar navegando