1. El documento explica el álgebra de Boole, incluyendo sus valores, operadores lógicos y propiedades. 2. También describe cómo se pueden simplificar expresiones booleanas usando teoremas de álgebra de Boole y mapas de Karnaugh. 3. Finalmente, discute aplicaciones del álgebra de Boole en áreas como electrónica y computación.
1. 1
Universidad Autónoma de Nuevo León
Facultad de Contaduría Pública y Admiración
Producto Integrador De Aprendizaje
Técnicas Cuantitativas 1
Realidad Aumentada
“Algebra Booleana “
Equipo #7
García Pardo Alan Israel Mat: 1663656
Eivet Cuéllar David Alejandro Mat: 1660790
López Martínez Luis Roberto Mat: 1686566
Grupo: 12
ME. María Teresa Tovar Morales
3. 3
Introducción
En este trabajo explicaremos a fondo sobre el tema de Algebra Booleana sobre en
qué consiste, sus diferentes propiedades de los valores booleanos. También
hablamos acerca de los operadores lógicos como AND (Multiplicación lógica), ORD
(Suma lógica), NOT (Negación) que más adelante explicaremos como identificarlos,
sus símbolos y como usarlos correctamente para los problemas que se vean en el
futuro.
Que estas mismas son utilizadas como las compuertas lógicas que son AND, ORD,
NOT y también están NAND, NOR y XOR que son los operadores lógicos
compuestos, un dato importante de las compuertas es que todos los símbolos que
tienen las entradas se encuentran a la izquierda y las salidas a la derecha.
Después mostramos como se puede aplicar la Algebra Booleana en diferentes
áreas como en la de computación, ingeniería, electrónica o cualquier otra área
donde se relacione sobre este tema. Aparte de que investigamos de las diferentes
maneras de simplificar las expresiones booleanas usando los teoremas del algebra
de Boole y los mapas de Karnaugh.
Esperemos haberlo explicado correctamente todo, que la información investigada
sea útil y que se entienda bien los puntos requeridos para este trabajo.
4. 4
Antecedentes
Álgebra de Boole también llamada álgebra booleana, en informática y matemática
es una estructura algebraica que esquematiza las operaciones lógicas Y, O, NO y
SI (AND, OR, NOT, IF), así como el conjunto de operaciones unión, intersección y
complemento.
Las expresiones booleanas se usan para determinar si un conjunto de una o más
condiciones es verdadero o falso, y el resultado de su evaluación es un valor de
verdad.
Los operados de una expresión booleana pueden ser cualquiera de los siguientes:
Expresiones relacionales: que comparan dos valores y determinan si existe o no
una cierta relación entre ellos (ver más adelante), tal como mfn<10;
Funciones booleanas: tal como p (v24), que regresa un valor de verdad (estos se
explican bajo "Funciones booleanas").
Las expresiones relacionales permiten determinar si una relación dada se verifica
entre dos valores. La forma general de una expresión relacional es:
Expresión-1 operador-de-relación expresión-2
Dónde:
Expresión-1 es una expresión numérica o de cadena
Operador-de-relación es uno de los siguientes:
= Igual
No igual (diferente de)
< Menor que
<= Menor o igual que
Mayor que
>= Mayor o igual que
: Contiene (puede ser usado sólo en expresiones de cadena)
5. 5
Una expresión booleana es una sucesión de símbolos que incluye 0,1, algunas
variables y las operaciones booleanas.
Para ser más precisos definamos una expresión booleana en n variable x1, x2..., xn
recursivamente como:
- Los símbolos 0 y 1 y x1, x2,..., xn son expresiones booleanas en x1, x2,... xn.
- Si E1 y E2 son expresiones booleanas en x1, x2,... xn también lo son E1 + E2; E1
E2 y E1í.
Las expresiones booleanas 0 y 1 pueden verse como expresiones en cualquier
número de variables.
El número de variables de una expresión booleana es el número de letras distintas
que aparezcan en la expresión, sin tener en cuenta si están o no complementadas.
Propiedades de las expresiones booleanas
a) Formadas con variables booleanas
b) Valores de 1 (verdadero) ó 0 (falso)
c) Puede tener constantes booleanas (1 ó 0)
d) Puede tener operadores lógicos: AND (&, ^), OR (V) y NOT (¬, ‘ , -, ~)
• Multiplicación lógica: AND
xy = x ∙ y = (x)(y)
• Suma lógica: OR
x + y
• Complemento (negación): NOT
x’
e) Se puede obtener el resultado lógico de una expresión booleana aplicando las
tablas de verdad (valores de certeza)
f) Se puede aplicar la Ley de Morgan
Las expresiones booleanas poseen las siguientes propiedades:
1.-Están compuestas de literales (A, B, C, ...) y cada una de e§ representa la señal
de un sensor. Un ejemplo es F = A'B,DAB'CD.
2.-El valor de las señales o de la función sólo puede ser 0 o 1, í= falso o verdadero.
3.-Además de literales, en la expresión booleana se puede tener valor de 0 o 1. Por
ejemplo: F = A'BDl + AB'CD + 0.
6. 6
Todas las compuertas lógicas vistas hasta el momento poseen una representación
normalizada, la cual se muestra en la figura siguiente:
Toda puerta lógica consta de 1 o más entradas y 1 o 2 salidas (puede darse el caso
de proporcionarse la salida y su negada). En todos los símbolos las entradas se
encuentran a la izquierda y las salidas a la derecha.
Estas puertas las podemos encontrar empaquetadas dentro de distintos circuitos
integrados. Por ejemplo, para la familia lógica TTL tenemos las siguientes
referencias:
54/74 (LS) 00 Cuádruple puerta NAND de dos entradas
54/74 (LS) 02 Cuádruple puerta NOR de dos entradas
54/74 (LS) 04 Séxtuple puerta NOT
54/74 (LS) 08 Cuádruple puerta AND de dos entradas
54/74 (LS) 10 Triple puerta NAND de tres entradas
54/74 (LS) 11 Triple puerta AND de tres entradas
7. 7
54/74 (LS) 20 Doble puerta NAND de cuatro entradas
54/74 (LS) 21 Doble puerta AND de cuatro entradas
54/74 (LS) 27 Triple puerta NOR de tres entradas
54/74 (LS) 30 Puerta NAND de ocho entradas
54/74 (LS) 32 Cuádruple puerta OR de dos entradas
Las puertas lógicas más frecuentes, baratas, y fáciles de encontrar son las NAND.
Debido a esto se suelen implementar circuitos digitales con el mayor número de
dichas puertas.
- Mediante teoremas del algebra de Boole
Los teoremas que se utilizan se derivan de los postulados del algebra booleana y
permiten simplificar las expresiones lógicas o transformarlas en otras que son
equivalentes.
Una expresión simplificada se puede implementar con menos equipo y su circuito
es más claro que el que corresponde a la expresión no simplificada.
Para obtener el ''dual'' de un teorema se convierte cada 0 en 1 y cada 1 en 0 los
signos (+) se convierten en paréntesis, o simplemente no se ponen, y los puntos en
signos más. Además de esto, las variables no se complementan ya que al hacerlo
se obtendría el complemento en lugar del dual.
- Mediante Mapas de Karnaugh
Creados en 1950 por Maurice Karnaugh (físico y matemático de los Laboratorios
Bell).
• Evita hacer cálculos (aprovecha la capacidad humana del reconocimiento de
patrones).
• Son representaciones bidimensionales de la tabla de verdad de la función a
simplificar
8. 8
• Un mapa es un diagrama compuesto de celdas, donde cada una representa un
mini término
• La cantidad de celdas del mapa es 2n; donde n representa la cantidad de variables
• Se recomiendan para expresiones de hasta 6 variables
• Generan expresiones en una de las formas estándar: suma de productos ó
producto de sumas
9. 9
Desarrollo de aplicaciones
- Área de la electrónica
Álgebra de Boole también llamada álgebra booleana, en informática y matemática
es una estructura algebraica que esquematiza las operaciones lógicas Y, O, NO y
SI (AND, OR, NOT, IF), así como el conjunto de operaciones unión, intersección y
complemento.
Se dice que una variable tiene valor booleano cuando, en general, la variable
contiene un 0 lógico o un 1 lógico. Esto, en la mayoría de los lenguajes de
programación, se traduce en false (falso) o true (verdadero), respectivamente.
Una variable puede no ser de tipo booleano, y guardar valores que, en principio, no
son booleanos; ya que, globalmente, los compiladores trabajan con esos otros
valores, numéricos normalmente aunque también algunos permiten cambios desde,
incluso, caracteres, finalizando en valor booleano.
El 0 lógico
El valor booleano de negación suele ser representado como false, aunque también
permite y equivale al valor natural, entero y decimal (exacto) 0, así como la cadena
"false", e incluso la cadena "0".
El 1 lógico
En cambio, el resto de valores apuntan al valor booleano de afirmación,
representado normalmente como true, ya que, por definición, el valor 1 se tiene
cuando no es 0. Cualquier número distinto de cero se comporta como un 1 lógico, y
lo mismo sucede con casi cualquier cadena (menos la "false", en caso de ser ésta
la correspondiente al 0 lógico).
Ejemplos
El álgebra de Boole más importante tiene sólo dos elementos, 0 y 1, y se define por
las reglas
0 1 0 1 ---- ---- 0 | 0 1 0 | 0 0 1 | 1 1 1 | 0 1
Tiene aplicaciones en la lógica, donde 0 se interpreta como "falso", 1 como
"verdadero", como "y", como "o", y ¬ es "no". Las expresiones que involucran
variables y operadores booleanos representan proposiciones, y se puede demostrar
que dos expresiones son equivalentes usando los axiomas citados anteriormente si
y sólo si las correspondientes proposiciones son lógicamente equivalentes.
El álgebra de Boole de dos elementos también se utiliza para diseño de circuitos en
ingeniería electrónica; aquí 0 y 1 representan los dos posibles estados en circuitos
10. 10
digitales con respecto al voltaje: 0=no conduce (circuito abierto); 1=conduce (circuito
cerrado).
El álgebra de Boole de dos elementos también se utiliza para diseño de circuitos en
ingeniería electrónica; aquí 0 y 1 representan los dos posibles estados en circuitos
digitales con respecto al voltaje: 0=no conduce (circuito abierto); 1=conduce (circuito
cerrado).
Los circuitos se describen mediante expresiones que contienen variables, y dos de
estas expresiones son iguales si y sólo si los correspondientes circuitos tienen el
mismo comportamiento de entrada y salida. Además, cada posible comportamiento
de entrada-salida puede ser expresado mediante una expresión booleana.
El álgebra de Boole de dos elementos también es importante en la teoría general
de las álgebras de Boole, porque una ecuación que implica varias variables es cierta
en todas las álgebras booleanas si y sólo si es cierta en un álgebra booleana de dos
elementos (lo cual siempre puede ser verificado utilizando el algoritmo trivial de
fuerza bruta). Esto puede aplicarse para demostrar que las siguientes leyes
(Teoremas del consenso) son válidos en todas las álgebras booleanas:
(a b) (¬a c) (b c) = (a b) (¬a c)
(a b) (¬a c) (b c) = (a b) (¬a c)
El conjunto de partes de un conjunto dado S forma el álgebra de Boole con las dos
operaciones = unión and = intersección. El elemento mínimo 0 es el conjunto vacío
y el elemento máximo 1 es el propio conjunto S.
•El conjunto formado por todos los subconjuntos de S que son finitos o cofinitos es
el álgebra de Boole.
•Para todo número natural n, el conjunto de todos sus divisores positivos forma una
retícula distributiva si definimos a ≤ b como a divide a b. Esta retícula es el álgebra
de Boole si y sólo si n es libre de cuadrados. El elemento mínimo 0 de este álgebra
es el número natural 1; el elemento máximo 1 de este álgebra booleana 1 es el
número natural n.
•Otros ejemplos del álgebra de Boole surgen de los espacios topológicos: si X es
un espacio topológico, entonces la colección de todos los sub espacios de X que
son tanto abiertos como cerrados forman un álgebra booleana con las operaciones
= unión y = intersección.
•Si R es un anillo y definimos el conjunto de idempotentes centrales como
A = { e en R : e² = e y ex = xe para todo x en R }
entonces el conjunto A se convierte en el álgebra booleana con las operaciones e f
= e + f − ef y e f = ef.
11. 11
•Si R es un anillo y definimos el conjunto de idempotentes centrales como
A = { e en R : e² = e y ex = xe para todo x en R }
entonces el conjunto A se convierte en el álgebra booleana con las operaciones e f
= e + f − ef y e f = ef
- Área de la computación
La relación que existe entre la lógica booleana y los sistemas de cómputo es fuerte,
de hecho se da una relación uno a uno entre las funciones booleanas y los circuitos
electrónicos de compuertas digitales. Para cada función booleana es posible
diseñar un circuito electrónico 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 lógicas
homónimas
Un hecho interesante es que es posible implementar cualquier circuito electrónico
utilizando una sola compuerta, ésta es la compuerta NAND
Para probar que podemos construir cualquier función booleana utilizando sólo
compuertas NAND, necesitamos demostrar cómo 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 función booleana utilizando sólo 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 fácil, sólo invertimos la salida
de una compuerta NAND, después 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 sólo utilizando
compuertas NAND sean lo óptimo, solo se ha dicho que es posible hacerlo. La otra
compuerta que necesitamos sintetizar es la compuerta lógica OR, ésto es sencillo
si utilizamos los teoremas de De Morgan, que en síntesis se logra en tres pasos,
primero se reemplazan todos los "·" por "+" después se invierte cada literal y por
último se niega la totalidad de la expresión:
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'.....Definición de OR utilizando NAND
12. 12
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 más
económicas y en segundo lugar es preferible construir circuitos complejos utilizando
los mismos bloques básicos. Observe que es posible construir cualquier circuito
lógico utilizando sólo compuertas de tipo NOR (NOR = NOT(A OR B)). La
correspondencia entre la lógica NAND y la NOR es ortogonal entre la
correspondencia de sus formas canónicas. Mientras que la lógica NOR es útil en
muchos circuitos, la mayoría de los diseñadores utilizan lógica NAND.
Un circuito combinacional es un sistema que contiene operaciones booleanas
básicas (AND, OR, NOT), algunas entradas y un juego de salidas, como cada salida
corresponde a una función lógica individual, un circuito combinacional a menudo
implementa varias funciones booleanas diferentes, es muy importante recordar éste
hecho, cada salida representa una función booleana diferente.
Un ejemplo común de un circuito combinacional es el decodificador de siete
segmentos, se trata de un circuito que acepta cuatro entradas y determina cuál de
los siete segmentos se deben iluminar para representar la respectiva entrada, de
acuerdo con lo dicho en el párrafo 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 número binario en el rango
de 0 a 9. Sea D el bit de alto orden de éste número y A el bit de bajo orden, cada
función lógica 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 sólo se están 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 mecánica
para iluminar los respectivos segmentos es similar a la aquí representada para los
valores numéricos.
0 a b c d e f
1 b c
2 a b d e g
3 a b c d e g
4 b c f g
5 a c d f g
6 c d e f g
7 a b c
8 a b c d e f g
13. 13
9 a b c f g
Los circuitos combinacionales son la base de muchos componentes en un sistema
de cómputo básico, se puede construir circuitos para sumar, restar, comparar,
multiplicar, dividir y muchas otras aplicaciones más.
Circuitos Secuenciales
Un problema con la lógica secuencial es su falta de "memoria". En teoría, 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 (después
de un intervalo de tiempo llamado retardo de propagación) en las salidas.
Desafortunadamente las computadoras requieren de la habilidad para "recordar" el
resultado de cálculos pasados. Éste es el dominio de la lógica secuencial. Una celda
de memoria es un circuito electrónico que recuerda un valor de entrada después
que dicho valor ha desaparecido. La unidad de memoria más básica es el flip-flop
Set/Reset. Aunque recordar un bit sencillo es importante, la mayoría de los sistemas
de cómputo requieren recordar un grupo de bits, esto se logra combinando varios
flip-flop en paralelo, una conexión 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 también los conocemos como circuitos de reloj. Con los
elementos mencionados es posible construir un microprocesador completo.
14. 14
Conclusiones
Esto fue la información y las aplicaciones que investigamos aunque fue complicado
al principio porque es un tema que no habíamos visto en la clase y no sabíamos si
nuestra investigación era correcta o por lo menos si íbamos por un buen camino ya
después nos dimos cuenta que nuestra información era correcta para así poder
continuar con el trabajo.
Gracias a esto pudimos entender más sobre este tema y al momento de verlo en
clase ya sabíamos la mayoría de las cosas solo nos queda practicar más lo practico
pero en general este tema nos gustó investigar y hablar sobre el ojala hayamos
abarcado bien para que quedara claro lo que es el Algebra Booleana, sus
características, los métodos y operadores que utiliza, etc.