Está en la página 1de 14

Teorema de

1. Introduccin
algebra de
Las lgebras booleanas, estudiadas por primera vez en detalle por George Boole ,
Boole
constituyen un rea
de las matemticas que ha pasado a ocupar un lugar prominente con el
advenimiento de la computadora digital. Son usadas ampliamente en el diseo de circuitos
de distribucin y computadoras, y sus aplicaciones van en aumento en muchas otras reas.
En el nivel de lgica digital de una computadora, lo que comnmente se llama hardware, y
que est formado por los componentes electrnicos de la mquina, se trabaja con
diferencias de tensin, las cuales generan funciones que son calculadas por los circuitos que
forman el nivel. stas funciones, en la etapa de disea del hardware, son interpretadas
como funciones de boole.
En el presente trabajo se intenta dar una definicin de lo que es un lgebra de boole; se
tratan las funciones booleanas,
haciendo una correlacin con las frmulas proposicionales. Asimismo, se plantean dos
formas cannicas de las funciones booleanas, que son tiles para varios propsitos, tales
como el de determinar si dos expresiones representan o no la misma funcin. Pero para
otros propsitos son a menudo engorrosas, por tener ms operaciones que las necesarias.
Particularmente, cuando estamos construyendo los circuitos electrnicos con que
implementar funciones booleanas, el problema de determinar una expresin mnima para
una funcin es a menudo crucial. No resultan de la misma eficiencia en dinero y tiempo,
principalmente, dos funciones las cuales calculan lo mismo pero donde una tiene menos
variables y lo hace en menor tiempo. Como solucin a este problema, se plantea un mtodo
de simplificacin, que hace uso de unos diagramas especiales llamados mapas o diagramas
de Karnaugh, y el cual tiene la limitacin de poder trabajar adecuadamente slo con pocas
variables.
Se realizan estas presentaciones con el fin de demostrar la afinidad existente entre el
lgebra de boole y la lgica proposicional, y con el objeto de cimentar el procedimiento de
simplificacin presentado en la lgica de proposiciones.
2. Resea Histrica
A mediados del siglo XIX, George Boole (1815-1864), en sus libros: "The Mathematical
Analysis of Logic" (1847) y "An Investigation of te Laws of Thought" (1854), desarroll la
idea de que las proposiciones lgicas podan ser tratadas mediante herramientas
matemticas. Las proposiciones lgicas (asertos, frases o predicados de la lgica clsica)
son aquellas que nicamente pueden tomar valores Verdadero/Falso, o preguntas cuyas
nicas respuestas posibles sean S/No. Segn Boole, estas proposiciones pueden ser
representadas mediante smbolos y la teora que permite trabajar con estos smbolos, sus
entradas (variables) y sus salidas (respuestas) es la Lgica Simblica desarrollada por l.
Dicha lgica simblica cuenta con operaciones lgicas que siguen el comportamiento de
reglas algebraicas. Por ello, al conjunto de reglas de la Lgica Simblica se le denomina
LGEBRA DE BOOLE.

A mediados del siglo XX el lgebra Booleana result de una gran importancia prctica,
importancia que se ha ido incrementando hasta nuestros das, en el manejo de informacin
digital (por eso hablamos de Lgica Digital). Gracias a ella, Shannon (1930) pudo formular
su teora de la codificacin y John Von Neumann pudo enunciar el modelo de arquitectura
que define la estructura interna de los ordenadores desde la primera generacin.
Todas las variables y constantes del lgebra booleana, admiten slo uno de dos valores en
sus entradas y salidas: S/No, 0/1 o Verdadero/Falso. Estos valores bivalentes y opuestos
pueden ser representados por nmeros binarios de un dgito (bits), por lo cual el lgebra
booleana se puede entender cmo el lgebra del Sistema Binario. Al igual que en lgebra
tradicional, tambin se trabaja con letras del alfabeto para denominar variables y formar
ecuaciones para obtener el resultado de ciertas operaciones mediante una ecuacin o
expresin booleana. Evidentemente los resultados de las correspondientes operaciones
tambin sern binarios.
Todas las operaciones (representadas por smbolos determinados) pueden ser materializadas
mediante elementos fsicos de diferentes tipos (mecnicos, elctricos, neumticos o
electrnicos) que admiten entradas binarias o lgicas y que devuelven una respuesta
(salida) tambin binaria o lgica. Ejemplos de dichos estados son: Abierto/Cerrado
(interruptor), Encendida/Apagada (bombilla), Cargado/Descargado (condensador) , Nivel
Lgico 0/Nivel lgico 1 (salida lgica de un circuito semiconductor), etctera.
Los dispositivos con los cuales se implementan las funciones lgicas son llamados puertas
(o compuertas) y, habitualmente, son dispositivos electrnicos basados en transistores.
Estos dispositivos, y otros que veremos a lo largo de esta unidad, son los que permiten el
diseo, y la ulterior implementacin, de los circuitos de cualquier ordenador moderno, as
como de muchos de los elementos fsicos que permiten la existencia de las
telecomunicaciones modernas, el control de mquinas, etctera. De hecho, pensando en los
ordenadores como una jerarqua de niveles, la base o nivel inferior sera ocupada por la
lgica digital (en el nivel ms alto del ordenador encontraramos los actuales lenguajes de
programacin de alto nivel).
En esta unidad se representan las puertas lgicas elementales, algunas puertas complejas y
algunos ejemplos de circuitos digitales simples, as como algunas cuestiones de notacin.
Por otra parte se plantean actividades de trabajo, muchas de las cuales implican una
respuesta escrita en vuestro cuaderno de trabajo. El deseo del autor es que os resulte
sencillo y ameno adentraros en el mundo de la lgica digital y despertaros la curiosidad,
tanto por ella, como por la matemtica que subyace en ella.

3. lgebra Booleana
El lgebra booleana es un sistema matemtico deductivo centrado en los valores cero y uno
(falso y verdadero). Un operador binario " " definido en ste juego de valores acepta un
par de entradas y produce un solo valor booleano, por ejemplo, el operador booleano AND
acepta dos entradas booleanas y produce una sola salida booleana.

Para cualquier sistema algebraico existen una serie de postulados iniciales, de aqu se
pueden deducir reglas adicionales, teoremas y otras propiedades del sistema, el lgebra
booleana a menudo emplea los siguientes postulados:

Cerrado. El sistema booleano se considera cerrado con respecto a un operador


binario si para cada par de valores booleanos se produce un solo resultado booleano.

Conmutativo. Se dice que un operador binario " " es conmutativo si A B = B A


para todos los posibles valores de A y B.

Asociativo. Se dice que un operador binario " " es asociativo si (A B) C = A (B


C) para todos los valores booleanos A, B, y C.

Distributivo. Dos operadores binarios " " y " % " son distributivos si A (B % C) =
(A B) % (A C) para todos los valores booleanos A, B, y C.

Identidad. Un valor booleano I se dice que es un elemento de identidad con respecto


a un operador binario " " si A I = A.

Inverso. Un valor booleano I es un elemento inverso con respecto a un operador


booleano " " si A I = B, y B es diferente de A, es decir, B es el valor opuesto de A.
Para nuestros propsitos basaremos el lgebra booleana en el siguiente juego de operadores
y valores:
- Los dos posibles valores en el sistema booleano son cero y uno, a menudo llamaremos a
stos valores respectivamente como falso y verdadero.
- El smbolo representa la operacin lgica AND. Cuando se utilicen nombres de
variables de una sola letra se eliminar el smbolo , por lo tanto AB representa la
operacin lgica AND entre las variables A y B, a esto tambin le llamamos el producto
entre A y B.
- El smbolo "+" representa la operacin lgica OR, decimos que A+B es la operacin
lgica OR entre A y B, tambin llamada la suma de A y B.
- El complemento lgico, negacin NOT es un operador unitario, en ste texto
utilizaremos el smbolo " ' " para denotar la negacin lgica, por ejemplo, A' denota la
operacin lgica NOT de A.
- Si varios operadores diferentes aparecen en una sola expresin booleana, el resultado de la
expresin depende de la procedencia de los operadores, la cual es de mayor a menor,
parntesis, operador lgico NOT, operador lgico AND y operador lgico OR. Tanto el
operador lgico AND como el OR son asociativos por la izquierda. Si dos operadores con
la misma procedencia estn adyacentes, entonces se evalan de izquierda a derecha. El
operador lgico NOT es asociativo por la derecha.

Utilizaremos adems los siguientes postulados:

P1 El lgebra booleana es cerrada bajo las operaciones AND, OR y NOT

P2 El elemento de identidad con respecto a es uno y con respecto a + es cero. No


existe elemento de identidad para el operador NOT

P3 Los operadores y + son conmutativos.

P4 y + son distributivos uno con respecto al otro, esto es, A (B+C) = (AB)+
(AC) y A+ (BC) = (A+B) (A+C).

P5 Para cada valor A existe un valor A' tal que AA' = 0 y A+A' = 1. ste valor es el
complemento lgico de A.

P6 y + son ambos asociativos, sto es, (AB) C = A (BC) y (A+B)+C = A+ (B+C).

Es posible probar todos los teoremas del lgebra booleana utilizando stos postulados,
adems es buena idea familiarizarse con algunos de los teoremas ms importantes de los
cuales podemos mencionar los siguientes:

Teorema 1: A + A = A

Teorema 2: A A = A

Teorema 3: A + 0 = A

Teorema 4: A 1 = A

Teorema 5: A 0 = 0

Teorema 6: A + 1 = 1

Teorema 7: (A + B)' = A' B'

Teorema 8: (A B)' = A' + B'

Teorema 9: A + A B = A

Teorema 10: A (A + B) = A

Teorema 11: A + A'B = A + B

Teorema 12: A' (A + B') = A'B'

Teorema 13: AB + AB' = A

Teorema 14: (A' + B') (A' + B) = A'

Teorema 15: A + A' = 1

Teorema 16: A A' = 0

Los teoremas siete y ocho son conocidos como Teoremas de DeMorgan en honor al
matemtico que los descubri.
Caractersticas:
Un lgebra de Boole es un conjunto en el que destacan las siguientes caractersticas:
1- Se han definido dos funciones binarias (que necesitan dos parmetros) que llamaremos
aditiva (que representaremos por x
+ y) y multiplicativa (que representaremos por xy) y una funcin monaria (de un solo
parmetro) que representaremos por x'.
2- Se han definido dos elementos (que designaremos por 0 y 1)
Y 3- Tiene las siguientes propiedades:

Conmutativa respecto a la primera funcin: x + y = y + x


Conmutativa respecto a la segunda funcin: xy = yx
Asociativa respecto a la primera funcin: (x + y) + z = x + (y +z)
Asociativa respecto a la segunda funcin: (xy)z = x(yz)
Distributiva respecto a la primera funcin: (x +y)z = xz + yz
Distributiva respecto a la segunda funcin: (xy) + z = (x + z)( y + z)
Identidad respecto a la primera funcin: x + 0 = x
Identidad respecto a la segunda funcin: x1 = x
Complemento respecto a la primera funcin: x + x' = 1
Complemento respecto a la segunda funcin: xx' = 0

Propiedades Del lgebra De Boole


1. Idempotente respecto a la primera funcin: x + x = x
Idempotente respecto a la segunda funcin: xx = x
Maximalidad del 1: x + 1 = 1
Minimalidad del 0: x0 = 0
Involucin: x'' = x
Inmersin respecto a la primera funcin: x + (xy) = x
Inmersin respecto a la segunda funcin: x(x + y) = x
Ley de Morgan respecto a la primera funcin: (x + y)' = x'y'
Ley de Morgan respecto a la segunda funcin: (xy)' = x' + y'
Funcin Booleana
Una funcin booleana es una de A x A x A x....A en A, siendo A un conjunto cuyos
elementos son 0 y 1 y tiene estructura de lgebra de Boole.

Supongamos que cuatro amigos deciden ir al cine si lo quiere la mayora. Cada uno puede
votar si o no. Representemos el voto de cada uno por xi. La funcin devolver s (1) cuando
el numero de votos afirmativos sea 3 y en caso contrario devolver 0.
Si x1 vota 1, x2 vota 0, x3 vota 0 y x4 vota 1 la funcin booleana devolver 0.
Producto mnimo (es el nmero posible de casos) es un producto en el que aparecen todas
las variables o sus negaciones.
El nmero posible de casos es 2n.
Siguiendo con el ejemplo anterior. Asignamos las letras A, B, C y D a los amigos. Los
posibles casos son:
Votos
Resultado
ABCD
1111
1
1110
1
1101
1
1100
0
1011
1
1010
0
1001
0
1000
0
0111
1
0110
0
0101
0
0100
0
0011
0
0010
0
0001
0
0000
0
Las funciones booleanas se pueden representar como la suma de productos mnimos
(minterms) iguales a 1.
En nuestro ejemplo la funcin booleana ser:
f(A,B,C,D) = ABCD + ABCD' + ABC'D + AB'CD + A'BCD
Diagramas De Karnaugh
Los diagramas de Karnaugh se utilizan para simplificar las funciones booleanas.
Se construye una tabla con las variables y sus valores posibles y se agrupan los 1
adyacentes, siempre que el nmero de 1 sea potencia de 2.
En esta pgina tienes un programa para minimizacin de funciones booleanas mediante
mapas de Karnaugh

4. lgebra Booleana y circuitos electrnicos


La relacin que existe entre la lgica booleana y los sistemas de cmputo es fuerte, de
hecho se da una relacin uno a uno entre las funciones booleanas y los circuitos
electrnicos de compuertas digitales. Para cada funcin booleana es posible disear un
circuito electrnico y viceversa, como las funciones booleanas solo requieren de los
operadores AND, OR y NOT podemos construir nuestros circuitos utilizando
exclusivamente stos operadores utilizando las compuertas lgicas homnimas
Un hecho interesante es que es posible implementar cualquier circuito electrnico
utilizando una sola compuerta, sta es la compuerta NAND
Para probar que podemos construir cualquier funcin booleana utilizando slo compuertas
NAND, necesitamos demostrar cmo construir un inversor (NOT), una compuerta AND y
una compuerta OR a partir de una compuerta NAND, ya que como se dijo, es posible
implementar cualquier funcin booleana utilizando slo los operadores booleanos AND,
OR y NOT. Para construir un inversor simplemente conectamos juntas las dos entradas de
una compuerta NAND. Una vez que tenemos un inversor, construir una compuerta AND es
fcil, slo invertimos la salida de una compuerta NAND, despus de todo, NOT ( NOT (A
AND B)) es equivalente a A AND B. Por supuesto, se requieren dos compuertas NAND
para construir una sola compuerta AND, nadie ha dicho que los circuitos implementados
slo utilizando compuertas NAND sean lo ptimo, solo se ha dicho que es posible hacerlo.
La otra compuerta que necesitamos sintetizar es la compuerta lgica OR, sto es sencillo si
utilizamos los teoremas de DeMorgan, que en sntesis se logra en tres pasos, primero se
reemplazan todos los "" por "+" despus se invierte cada literal y por ltimo se niega la
totalidad de la expresin:
A OR B
A AND B.......................Primer paso para aplicar el teorema de DeMorgan
A' AND B'.....................Segundo paso para aplicar el teorema de DeMorgan
(A' AND B')'..................Tercer paso para aplicar el teorema de DeMorgan
(A' AND B')' = A' NAND B'.....Definicin de OR utilizando NAND
Si se tiene la necesidad de construir diferentes compuertas de la manera descrita, bien hay
dos buenas razones, la primera es que las compuertas NAND son las ms econmicas y en
segundo lugar es preferible construir circuitos complejos utilizando los mismos bloques
bsicos. Observe que es posible construir cualquier circuito lgico utilizando slo
compuertas de tipo NOR (NOR = NOT(A OR B)). La correspondencia entre la lgica
NAND y la NOR es ortogonal entre la correspondencia de sus formas cannicas. Mientras
que la lgica NOR es til en muchos circuitos, la mayora de los diseadores utilizan lgica
NAND.
5. Circuitos Combinacionales
Un circuito combinacional es un sistema que contiene operaciones booleanas bsicas
(AND, OR, NOT), algunas entradas y un juego de salidas, como cada salida corresponde a
una funcin lgica individual, un circuito combinacional a menudo implementa varias

funciones booleanas diferentes, es muy importante recordar ste echo, cada salida
representa una funcin booleana diferente.
Un ejemplo comn de un circuito combinacional es el decodificador de siete segmentos, se
trata de un circuito que acepta cuatro entradas y determina cul de los siete segmentos se
deben iluminar para representar la respectiva entrada, de acuerdo con lo dicho en el parrafo
anterior, se deben implementar siete funciones de salida diferentes, una para cada
segmento. Las cuatro entradas para cada una de stas funciones booleanas son los cuatro
bits de un nmero binario en el rango de 0 a 9. Sea D el bit de alto orden de ste nmero y
A el bit de bajo orden, cada funcin lgica debe producir un uno (para el segmento
encendido) para una entrada dada si tal segmento en particular debe ser iluminado, por
ejemplo, el segmento e debe iluminarse para los valores 0000, 0010, 0110 y 1000.
En la siguiente tabla se puede ver qu segmentos deben iluminarse de acuerdo al valor de
entrada, tenga en cuenta que slo se estn representando valores en el rango de 0 a 9, los
decodificadores para las pantallas de siete segmentos comerciales tienen capacidad para
desplegar valores adicionales que corresponden a las letras A a la F para representaciones
hexadecimales, sin embargo la mecanica para iluminar los respectivos segmentos es similar
a la aqu representada para los valores numricos.

0 a bc de f

bc

2 a b

de

3 a bc d

bc

f g

5 a

c d

c de f g

7 a bc

f g

8 a bc de f g

9 a bc

f g

Los circuitos combinacionales son la base de muchos componentes en un sistema de


cmputo bsico, se puede construir circuitos para sumar, restar, comparar, multiplicar,
dividir y muchas otras aplicaciones ms.
Circuitos Secuenciales
Un problema con la lgica secuencial es su falta de "memoria". En teora, todas las
funciones de salida en un circuito combinacional dependen del estado actual de los valores
de entrada, cualquier cambio en los valores de entrada se refleja (despus de un intervalo de
tiempo llamado retardo de propagacin) en las salidas. Desafortunadamente las
computadoras requieren de la habilidad para "recordar" el resultado de clculos pasados.
ste es el dominio de la lgica secuencial. Una celda de memoria es un circuito electrnico
que recuerda un valor de entrada despus que dicho valor ha desaparecido. La unidad de
memoria ms bsica es el flip-flop Set/Reset. Aunque recordar un bit sencillo es
importante, la mayora de los sistemas de cmputo requieren recordar un grupo de bits, sto
se logra combinando varios flip-flop en paralelo, una conexin de ste tipo recibe el
nombre de registro. A partir de aqu es posible implementar diferentes circuitos como
registros de corrimiento y contadores, stos ltimos tambin los conocemos como circuitos
de reloj. Con los elementos mencionados es posible construir un microprocesador
completo.
6. Relacin entre la lgica combinacional y secuencial con la programacin
En sta leccin hemos dado una repasada muy bsica a los elementos que forman la base de
los modernos sistemas de cmputo, en la seccin dedicada al diseo electrnico
estudiaremos a profundidad los conceptos aqu presentados, pero para aquellos que estn
ms interesados en el aspecto programtico podemos decir que con los elementos vistos en
sta leccin es posible implementar mquinas de estado, sin embargo la moraleja de sta
leccin es muy importante: cualquier algoritmo que podamos implementar en software, lo
podemos a su vez implementar directamente en hardware. sto sugiere que la lgica
booleana es la base computacional en los modernos sistemas de cmputo actuales.
Cualquier programa que Usted escriba, independientemente del lenguaje que utilice, sea
ste de alto bajo nivel, se puede especificar como una secuencia de ecuaciones booleanas.

Un hecho igualmente interesante es el punto de vista opuesto, es posible implementar


cualquier funcin de hardware directamente en software, en la actualidad sta es la funcin
principal del lenguaje ensamblador y otros con capacidad de trabajar directamente en
hardware, como el C y el C++. Las consecuencias de ste fenmeno apenas se estn
explotando, se infiere la existencia de un futuro muy prometedor para el profesional de la
programacin, especialmente aquellos dedicados a los sistemas incrustados (embedded
systems), los microcontroladores y los profesionales dedicados a la Programacin
Orientada a Objetos. Para tener xito en stos campos de la investigacin es fundamental
comprender las funciones booleanas y la manera de implementarlas en software. An y
cuando Usted no desee trabajar en hardware, es importante conocer las funciones booleanas
ya que muchos lenguajes de alto nivel procesan expresiones booleanas, como es el caso de
los enunciados if-then los bucles while.
7. Los Teoremas Bsicos Del Algebra Booleana
Los Teoremas Bsicos del lgebra Booleana son:
TEOREMA 1
Ley Distributiva
A (B+C) = AB+AC

TEOREMA 2
A+A = A
AA = A

TEOREMA 3
Redundancia
A+AB = A

A (A+B) = A

TEOREMA 4
0+A = A
Equivalente a una compuerta OR con una de sus terminales conectada a tierra

1A = A
Equivalente a una compuerta AND con una de sus terminales conectada a 1

1+A = 1

0A = 0

También podría gustarte