Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CARRERA:
INGENERIA INFORMATICA
MATERIA.
MATEMATICAS DISCRETAS
TEMA:
ALGEBRA BOOLEANA
CATEDRATICO:
MTRO. JESUS DE JESUS VALENCIA V.
PRESENTA:
KEVIN CONSTANTINO GOMEZ
A continuación se tomaran temas sobre datos booleanos, que son datos lógicos que solo puede
existir dos posibles resultado, que sea verdadero o de lo contrario sea falso, que importancia
tiene eso en nuestras vidas, al menos si lo enfocamos a programación seria la base de todo lo que
conocemos en informática, pero en este enfoque nos ayudara más a entender en como se aplican
y las gran variedad de funcionalidades que tiene comprender, ya que se verán tomas como
algebra booleana, y se verán sus aplicaciones y mucho más temas relacionada a los datos lógicos
de tipo booleanos.
Para reducir el total de términos de una expresión booleana existen técnicas como los mapas de
Karnaugh o el método de Quine-McCluskey pero en programación generalmente es suficiente
con las leyes del álgebra de Boole. Teniendo en cuenta que la condición lógica AND es el
producto booleano, OR es la suma y NOT el complemento (que se puede representar con los
símbolos o ¬), las leyes son:
Idempotencia:
x+x=x
x*x=x
Doble complemento:
¬x (doble negación) = x
x+0=x
x*1=x
x*0=0
x + (y + z) = (x + y) + z
x * (y * z) = (x * y) * z
x + y * z = (x + y) * (x +z)
x * (y + z) = x * y + x * z
0 0 0 0 0 0 0 0
0 0 1 0 0 1 0 0
0 1 0 0 1 0 0 0
1 0 0 0 1 1 1 1
0 1 1 1 1 1 1 1
1 0 1 0 1 1 1 1
1 1 0 0 1 1 1 1
1 1 1 1 1 1 1 1
Leyes de De Morgan:
x+y=x*y
0 0 1 1 0 1 1
0 1 1 0 1 0 0
1 0 0 1 1 0 0
1 1 0 0 1 0 0
Estas leyes se pueden generalizar a más de dos variables. Además, podemos ver que x * y ≠ x*y
Ley de absorción:
x(x + y) = x
x y x + y x(x + y)
0 0 0 0
0 1 1 0
1 0 1 1
1 1 1 1
x + xy = x
x + xy = x + y
x+x=1
x*x=0
Si bien las dos últimas son evidentes, para las dos primeras podemos crear sus correspondientes
tablas de verdad en caso de duda.
También es conveniente conocer un teorema acerca del complemento de una función booleana y
para ello hay que explicar primero qué es una función booleana. Una función booleana es algo
tan sencillo como las tablas de verdad que hemos visto antes: dadas unas variables x, y, z… se
obtiene un resultado F. El grado de la función es el número de variables. Este es un ejemplo de
una función grado dos F2→F:
x y F(x, y)
0 0 0
0 1 1
1 0 1
1 1 1
La expresión booleana que produce tal resultado F es: x* y + x*y + x*y Aunque cómo encontrar
la expresión booleana a partir de una tabla de verdad es otro tema. Ahora que ya sabemos qué es
una función booleana, dejemos esta función de momento a un lado y volvamos entonces al
teorema:
Nota:
Las leyes de álgebra de Boole están en estrecha relación con la lógica de predicados o de primer
orden y con la teoría de conjuntos; esto es debido a que ambas pertenecen a este tipo de
estructura algebraica. Dos ejemplos a modo ilustrativo: la ley de absorción es el modus ponens y
las leyes de De Morgan también aplican a los conjuntos. Estas últimas son:
A∪B=A∩B
A∩B=A∪B
Veamos la segunda ley. Ésta nos dice que la intersección de todos los elementos que no son de A
con la de todos los que no son de B equivale a la unión de todos los que no son de A con todos
los elementos que no son de B. Su demostración es:
Una consecuencia muy interesante de las leyes de De Morgan es que AND se puede expresar
mediante OR y NOT y viceversa: OR con AND y NOT. Por lo tanto, toda función booleana se
puede expresar mediante una de estas combinaciones de tan solo dos condiciones lógicas. Esto se
ve más claramente si se expresan en la forma de sustitución:
x + y = ¬x * ¬y
x * y = ¬x + ¬y
Por consiguiente, se puede crear una CPU con tan solo dos de los tres tipos de puertas lógicas
capaz de ejecutar cualquier programa, por complejo que sea. Eso sí, no lograría la misma
velocidad de ejecución.
Planteamiento.
Por ejemplo, queremos que se mueva una mesa de trabajo hacia la derecha o a la izquierda
ordenada por 2 botones pulsadores, además que cuente con interruptores de límite en ambos
sentidos, que los movimientos sean determinados por el giro de un motor eléctrico y cuando
dejemos de presionar los pulsadores la mesa pare.
Este circuito de control es la base de nuestro circuito final, “MD” y “MI” son las bobinas de los
contactores que ordenaran el cierre de contactos en el circuito de potencia que determinan el giro
del Motor eléctrico.
También nos faltarían los elementos de protección contra cortocircuitos y sobrecarga.
Para una función booleana de n variables x1,...xn, un producto booleano en el que cada una de
las n variables aparece una sola vez (negada o sin negar) es llamado minterms. Es decir, un
minterms es una expresión lógica de n variables consistente únicamente en el operador
conjunción lógica (AND) y el operador complemento o negación (NOT).
Por ejemplo, abc, ab'c y abc' son ejemplos de minterms para una función booleana con las tres
variables a, b y c.
En general, uno asigna a cada minterm (escribiendo las variables que lo componen en el mismo
orden), un índice basado en el valor binario del minterm. un término negado, como a' es
considerado como el numero binario 0 y el término no negado a es considerado como un 1. Por
ejemplo, se asociaría el número 6 con a b c'(1102), y nombraríamos la expresión con el nombre
m6. Entonces m0 de tres variables es a'b'c'(0002) y m7 debería ser a bc(1112).
Función equivalente
Se puede observar que cada minterm solo devuelve 'verdadero' con una sola entrada de las
posibles. Por ejemplo, el minterm 5, a b' c, es verdadero solo cuando a y c son ciertos y bes falso
- la entrada a = 1, b = 0, c = 1 da resultado 1.
Si tenemos una tabla de verdad de una función lógica, es posible escribir la función como "suma
de productos". Por ejemplo, dada la tabla de verdad
a b f(a, b)
001
010
101
110
Observamos que las filas con resultado 1 son la primera y la tercera, entonces podremos escribir
f como la suma de los minterms m0 y m2.
f(a,b) = m0 + m2 = (a'b')+(ab')
Maxitérminos
a+b'+c
a'+b+c
m1' = M1
(a'b)' = a+b'
Para indexar maxterms lo haremos justo de la forma contraria a la que seguimos con los
minterms. Se asigna a cada maxterm un índice basado en el complemento del número binario
que representa (otra vez asegurándonos que las variables se escriben en el mismo orden,
usualmente alfabético). Por ejemplo, podemos asignar M6 (Maxterm 6) al maxterm a'+b'+c. De
forma similar M0 de tres variables debería ser a+b+c y M7 es a'+b'+c'.
Función equivalente
Si tenemos una tabla de verdad de una función lógica, es posible escribir la función como
"producto de sumas". Por ejemplo, dada la tabla de verdad
a b f(a, b)
001
010
101
110
Observamos que las filas que tiene como salida un 0 son la segunda y la cuarta, entonces
podemos escribir f como un producto de maxterms M1 y M3.
f(a,b) = M1 M3 = (a+b')(a'+b')
Mapa de Karnaugh
Los mapas de Karnaugh pueden aplicarse a dos, tres, cuatro y cinco variables. Para más
variables, la simplificación resulta tan complicada que conviene en ese caso utilizar teoremas
mejor. Para efectos de clase, veremos las simplificaciones de dos, tres y cuatro variables.
El Álgebra de Boole, resuelve problemas que dependiendo del número de términos que tenía la
función canónica, siendo el número de compuertas lógicas utilizadas igual al número de
términos obtenidos MÁS UNO; por lo tanto, los circuitos obtenidos son de dos niveles de
conmutación con un tiempo mínimo de retardo, pero que de ninguna manera es el más sencillo ni
el más económico.
Los mapas de Karnaugh es uno de los métodos más prácticos. Se puede decir que es el más
poderoso, cuando el número de variables de entrada es menor o igual a seis; más allá, ya no es
tan práctico. En general, el mapa de Karnaugh se considera como la forma gráfica de una tabla
de verdad o como una extensión del diagrama de Venn.
- Una expresión más simple es más fácil de entender y tiene menos posibilidades de error a la
hora de su interpretación.
- Una expresión simplificada suelen ser más eficiente y efectiva cuando se implementan en la
práctica, como en el caso de circuitos eléctricos o en determinados algoritmos.
Una expresión booleana se compone de variables y términos. Para este método las variables sólo
podrán tener un valor numérico de cero (el correspondiente al valor de verdad false) o uno (el
correspondiente al valor de verdad true) y se designarán mediante una letra.
Como notación se designará x si la variable contiene el valor uno, x’ en caso deque contenga el
valor cero.
Por otra parte, las variables se relacionarán entre sí únicamente mediante operaciones lógicas and
para formar términos y mediante or para relacionarse con otros términos constituyendo una suma
de productos. Ésta debe de ser canónica, es decir:
- Cada variable se usa una vez en cada término. A dichos términos se les llama
términoscanónicos.
Circuito Combinacional
Analizando el circuito, con compuertas digitales, que se muestra a continuación, se puede ver
que la salida de cada una de las compuertas que se muestra depende únicamente de sus entradas.
Un bloque lógico es una representación simbólica gráfica de una o más variables de entrada a un
operador lógico para obtener una señal de salida. En electronica, estos bloques lógicos son las
Compuertas.
En la compuerta anterior, A y B son señales que entran a la compuerta y pueden tener un valor de 1 ó
0 dependiendo de si existe o no la señal. Estos dos generan una sola salida, que también es 1 ó 0
dependiendo de la compuerta que se trate y de los valores de entrada
Las compuertas básicas AND, OR y NOT son equivalentes alos conectores 'Y', 'O' y 'NO' de la lógica
proposicional, respectivamente
Compuerta AND
Compuerta OR
Compuerta NOT
Generalmente, los circuitos digitales se construyen con compuertas NAND y NOR, pues son más
fáciles de encontrar en el mercado, son más comunes desde el punto de vista del hardware y están
disponibles en la forma de circuitos integrados.
Compuerta NAND
Compuerta NOR
Compuerta XNOR
Ya llegamos al final de los temas de la algebra booleana, donde descubrimos que es un elemento
lógico donde es implementada en circuitos, y esto esta muy relacionado a las tablas de verdad y a
las condiciones que se pueden presentar en diferentes casos, Esto es implementado
principalmente en los circuitos integrados, que estos son el principio de las computadoras, ya que
gracias a los circuitos integrados esta todo lo que conocemos como dispositivos electrónicos, en
pocas palabras esto se refrentaría con los elementos del lenguaje binario que el “1” es igual a
encendido (verdadero), y el “0” es igual a off que es apagado(falso), y concluimos que sin el
estudio de las integrales booleanas no ubiramos logrados los avances tecnológicos que hoy en día
existen.
http://sedici.unlp.edu.ar/bitstream/handle/10915/3835/B_-_Funciones_booleanas.pdf?
sequence=10&isAllowed=y
RECUPERADO DE:
https://coparoman.blogspot.com/2014/12/aplicacion-del-algebra-booleana.html
RECUPARADO DE:
http://tutoriales-isc.blogspot.com/2018/11/431-mini-y-maxi-terminos.html
RECUPERADO DE: