Logo Studenta

Álgebra de Boole.

¡Este material tiene más páginas!

Vista previa del material en texto

República Bolivariana de Venezuela
Ministerio del Poder Popular para la Educación Universitaria
Universidad Politécnica Territorial del Estado Trujillo “Mario Briceño Iragorry”
Núcleo “Barbarita de la Torre”
Trujillo – Edo – Trujillo
Cátedra: Matemática I
Álgebra de Boole
Elaborado por:
Ojeda, R. Rosimar
V- 27.466.011
PNF en Informática
Trayecto I – Trimestre II
Mayo, 2022
Introducción
 La lógica booleana, es la lógica más simple con aplicación a la computación. Representa una inmejorable introducción a la lógica formal como herramienta para la representación formal de la información y la resolución de problemas. Detrás de la sencillez de los conceptos que utiliza está la potencia del rigor de las matemáticas que caracteriza a la lógica formal desde su comienzo. El tema central es la representación y el razonamiento con información que involucra sólo dos valores para todas las variables en juego.
 Se descubrirán conceptos teóricos fundamentales y la necesidad de formalización de los fundamentos de la ciencia de la computación.
 Una de las características especiales del álgebra booleana es el uso de notaciones y símbolos diferentes para los mismos conceptos. Esto es consecuencia de la aplicabilidad de esta lógica a los más diversos contextos, hecho que ha generado notaciones específicas para cada uno de ellos. Se presenta también la estructura matemática abstracta que se construye a partir de la lógica booleana y que se conoce con el nombre de Álgebra de Boole. 
 El Álgebra de Boole es una herramienta de fundamental importancia en el mundo de la computación. Las propiedades que se verifican en ella sirven de base al diseño y la construcción de las computadoras que trabajan cuyos valores son discretos, es decir, las computadoras digitales, en particular las binarias (en las cuales los objetos básicos tienen sólo dos valores posibles) las que son, en definitiva, la totalidad de las computadoras de uso corriente.
Origen
 Se denomina así en honor a George Boole (2 de noviembre de 1815 a 8 de diciembre de 1864), matemático inglés autodidacta, que fue el primero en definirla como parte de un sistema lógico, inicialmente en un pequeño folleto: The Mathematical Analysis of Logic, publicado en 1847, en respuesta a una controversia en curso entre Augustus De Morgan y William Hamilton.
 George Boole argumentó que la definición de los valores numéricos 0 y 1 corresponde, en el campo de la lógica, a la interpretación Nada y Universo respectivamente. La intención de George Boole fue definir, a través de las propiedades del álgebra, las expresiones de la lógica proposicional necesarias para tratar con variables de tipo binario. En 1854 se publican los apartados más significativos del álgebra booleana en el libro “Una investigación de las leyes del pensamiento sobre las que se fundamentan las teorías matemáticas de la lógica y probabilidad”. Este curioso título sería resumido más adelante como “The laws of thought” (“Las leyes del pensamiento”). El título saltó a la fama debido a la inmediata atención que tuvo por parte de la comunidad matemática de la época.   En 1948 Claude Shannon la aplicó en el diseño de circuitos de conmutación eléctrica biestables. Esto sirvió como introducción a la aplicación del álgebra booleana dentro de todo el esquema electrónico-digital.
Álgebra de Boole
 La manipulación de las expresiones booleanas, sus reglas y propiedades definen una estructura matemática abstracta que se puede aplicar a otros contextos, tanto de la matemática como de la informática. Esa estructura abstracta se llama álgebra de Boole y, aunque está inspirada en la lógica booleanas, es más compleja y abstracta.
 El concepto de álgebra de Boole es una generalización de la lógica booleana. La generalización consiste en identificar los elementos característicos de la estructura que subyace a la lógica booleana: los dos valores (uno opuesto al otro), los operadores booleanos primitivos y sus tablas de verdad. Por tanto, cualquier generalización de la lógica booleana, y en particular la llamada álgebra de Boole, habrá de contener dos valores significativos equivalentes a 0 y a 1; y unas operaciones equivalentes a un conjunto primitivo de operadores booleanos que operando sobre los valores 0 y 1 produzcan el mismo resultado que en las tablas de verdad booleanas.
 Así, un álgebra de Boole es una estructura matemática formada por un conjunto A que contiene, en particular, dos elementos diferentes, que vamos a llamar cero y uno (0 y 1, aunque podrían escribirse con otros símbolos), una operación unaria (se puede simbolizar ∼) y dos operaciones binarias (que vamos a simbolizar + y ·) y que han de cumplir una serie de propiedades o axiomas. Obsérvese que el conjunto A puede contener más elementos además del 0 y 1. 
 Á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. El álgebra de Boole fue un intento de utilizar las técnicas algebraicas para tratar expresiones de la lógica proposicional. El Álgebra de Boole es el álgebra de 2 valores. Normalmente tienen el valor “0” y “1”, pero también pueden tener los valores de “falso” y “verdadero”.
 Se llama Álgebra de Boole a la estructura matemática formada por un conjunto A, que tiene al menos dos elementos diferentes (0 y 1) y sobre el que se definen tres operaciones (+, *, ∼) que cumplen las propiedades 1) a 5) siguientes, donde x, y, z representan elementos cualesquiera del conjunto A.
Postulados
 Existen teoremas que rigen las leyes lógicas estructurales del álgebra booleana. De igual forma se tienen postulados para conocer los resultados posibles en diferentes combinaciones de variables binarias, según la operación que se realice.
· Suma (+): El operador OR cuyo elemento lógico es la unión (U) queda definido para variables binarias de la siguiente manera:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 1
· Producto (*): El operador AND cuyo elemento lógico es la intersección (∩) queda definido para variables binarias de la siguiente manera:
0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1
· Opuesto (NOT): El operador NOT cuyo elemento lógico es el complemento (X)’ queda definido para variables binarias de la siguiente manera:
NOT 0 = 1
NOT 1 = 0
 Muchos de los postulados difieren de sus equivalentes en el álgebra convencional. Esto es debido al dominio de las variables. Por ejemplo, la adición de elementos universo en álgebra booleana (1 + 1) no puede arrojar el resultado convencional de 2, debido a que no pertenece a los elementos del conjunto binario.
Teoremas
· Regla del cero y la unidad
 Toda operación simple que involucre a un elemento con las variables binarias, queda definida:
0 + A = A
1 + A = 1
0 * A = 0
1 * A = A
· Potencias iguales o idempotencia
 Las operaciones entre variables iguales quedan definidas como:
A + A = A
A * A = A
· Complementación
 Toda operación entre una variable y su complemento queda definida como:
A + NOT A = 1
A * NOT A = 0
· Involución o doble negación
 Toda doble negación será considerada como la variable natural.
NOT (NOT A) = A
· Conmutativa
A + B = B + A; Conmutatividad de la suma.
A * B = B * A; Conmutatividad del producto.
· Asociativa
A + (B + C) = (A + B) + C = A + B + C; Asociatividad de la suma.
A * (B * C) = (A * B) * C = A * B * C; Asociatividad del producto.
· Distributiva
A + (B * C ) = ( A + B ) * ( A + C ); Distributividad de la suma con respecto al producto.
A * (B + C ) = (A * B) + ( A + C ); Distributividad del producto con respecto a la suma.
· Leyes de absorción
Existen muchas leyes de absorción entre múltiples referencias, algunas de las más conocidas son:
A * ( A + B ) = A
A * (NOT A + B) = A * B
NOT A (A + B) = NOT A * B
(A + B) * (A + NOT B) = A
A + A * B = A
A + NOT A * B = A + B
NOT A + A * B = NOT A + B
A * B + A * NOT B = A
· Teorema de Morgan
Son leyes de transformación,que manejan pares de variables que interactúan entre las operaciones definidas del álgebra booleana (+, *).
NOT (A * B) = NOT A + NOT B
NOT (A +B) = NOT A * NOT B
A + B = NOT (NOT A + NOT B)
A * B = NOT (NOT A * NOT B)
· Dualidad
Todos los postulados y teoremas poseen la facultad de la dualidad. Esto implica que al intercambiar las variables y operaciones se verifica la proposición resultante. Es decir, que al intercambiar 0 por 1 y AND por OR o viceversa; se crea una expresión que también será completamente válida.
Por ejemplo, si se toma el postulado
1 * 0 = 0
Y se le aplica la dualidad
0 + 1 = 1
Se obtiene otro postulado perfectamente válido.
Aplicaciones
 Su mayor escenario de aplicación es la rama digital, donde sirve para estructurar los circuitos que componen a las operaciones lógicas involucradas. El arte de la simplicidad de circuitos en pro de optimizar los procesos, es el resultado de la correcta aplicación y practica del álgebra booleana.
 Desde la elaboración de tableros eléctricos, pasando por la transmisión de datos, hasta llegar a la programación en diferentes lenguajes, podemos encontrar frecuentemente el álgebra de Boole en todo tipo de aplicaciones digitales.
 Las variables booleanas son muy comunes en la estructura de la programación. Dependiendo del lenguaje de programación utilizado, existirán operaciones estructurales del código que usen dichas variables. Los condicionales y argumentos de cada lenguaje admiten variables booleanas para definir los procesos.
Álgebra Booleana y su aplicación en la Informática y 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.
 Uno de los principales campos de aplicación del álgebra de Boole es la informática en virtud del hecho de que la lógica de la computadora se basa en el sistema binario. En los circuitos electrónicos de un ordenador la información se tratará esencialmente como una secuencia de ceros y unos.
 Son usadas ampliamente en el diseño de circuitos de distribución y computadoras, y sus aplicaciones van en aumento en muchas otras áreas. En el nivel de lógica digital de una computadora, lo que comúnmente se llama hardware, y que está formado por los componentes electrónicos de la máquina, se trabaja con diferencias de tensión, las cuales generan funciones que son calculadas por los circuitos que forman el nivel. Éstas funciones, en la etapa de diseña del hardware, son interpretadas como funciones de Boole.
Álgebra de Boole aplicada a la informática
 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).
Función Booleana
 Una función 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 mayoría. Cada uno puede votar sí o no. Representemos el voto de cada uno por xi. La función devolverá sí (1) cuando el número 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 función booleana devolverá 0. Producto mínimo (es el número posible de casos) es un producto en el que aparecen todas las variables o sus negaciones. El número posible de casos es 2n.
 Las funciones booleanas se pueden representar como la suma de productos mínimos (minterms) iguales a 1.
Álgebra Booleana y los Circuitos Electrónicos
 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, esto es sencillo si utilizamos los teoremas 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 Morgan A' AND B'.....................Segundo paso para aplicar el teorema de Morgan (A' AND B')'..................Tercer paso para aplicar el teorema de Morgan (A' AND B')' = A' NAND B'.....Definición 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 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.
Conclusión
 Se ha argumentado la necesidad de un lenguaje y una semántica formal (una lógica) para poder expresar de una manera libre de ambigüedades los conceptos en informática y en las ingenierías, en general; y hemos presentado la más simple de las lógicas con aplicación a la informática: la lógica booleana.
 El lenguaje formal de la lógica booleana consiste en nombrar con símbolos cualquier expresión y en formalizar rigurosamente la manera como se generan nuevas expresiones a partirde las dadas con los operadores booleanos. 
 Paralelamente a la presentación de los diferentes operadores, se han introducido los dos valores de significado booleanos, simbolizados con 0 y 1, es decir, se ha introducido la semántica booleana. Éste es el rasgo más característico de la lógica booleana: sólo tiene dos valores de significado o valores de verdad. 
 Para generar los valores de verdad correspondientes a las expresiones complejas se usan las tablas de verdad; así, se han definido las de los operadores básicos y se ha explicado cómo construir las tablas de verdad de expresiones complejas.
 Posteriormente se han presentado algunas aplicaciones de la lógica booleana a la informática y se ha desarrollado la de los circuitos lógicos.
 Finalmente, se ha definido la estructura matemática de álgebra de Boole como una generalización de la estructura que subyace a la lógica booleana. Un álgebra de Boole es un conjunto que contiene un 0 y un 1, y en el que se definen tres operaciones que cumplen las mismas propiedades que los operadores booleanos de negación, disyunción y conjunción. Así definida, la lógica booleana se puede ver como un álgebra de Boole con sólo dos elementos: 0 y 1.
Bibliografía
· Ben-Ari, M. (2004). Mathematical Logic for Computer Science. Springer. 
· Gajsky, D.D. (1997). Principios de Diseño Digital. Prentice Hall.
· Martín, F., Sánchez, J.L., Paniagua, E. (2003). Lógica computacional. Paraninfo. 
· Roth, C.H. (2005). Fundamentos de diseño lógico. Thomson. 
· https://www.mecatronicalatam.com/es/tutoriales/teoria/algebra-booleana/#:~:text=El%20%C3%A1lgebra%20booleana%20fue%20inventada,como%20%22Cambio%20de%20%C3%A1lgebra%22.
· http://upel-ipmmatdiscre.blogspot.com/2014/01/algebra-booleana-y-su-relacion-con-la.html
· https://www.bbvaopenmind.com/tecnologia/visionarios/george-boole-el-arquitecto-de-la-revolucion-digital/

Continuar navegando

Materiales relacionados

143 pag.
ELT2680 Tema3 Algebra de Boole sept2021

User badge image

HUANCA MARZA ALVARO DANIEL

49 pag.
Apuntes de Lógica

User badge image

Materiales Generales

9 pag.
235861816

User badge image

Natalia Manya