Algebra de boole
ÁLGEBRA DE BOOLE
Álgebra de Boole también llamada álgebra booleana, en informática y matemática es una estructura algebraica que esquematiza las operaciones lógicas.
Historia
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,1 publicado en 1847, en respuesta a una controversia en curso entre Augustus De Morgan y sir William Rowan Hamilton. El álgebra de Boole fue un intento de utilizar las técnicas algebraicas para tratar expresiones de la lógica proposicional. Más tarde fue extendido como un libro más importante: An Investigation of the Laws of Thought on Which are Founded the Mathematical Theories of Logic and Probabilities (también conocido como An Investigation of the Laws of Thought2 o simplemente The Laws of Thought3), publicado en 1854.
Las interpretaciones respectivas de los símbolos 0 y 1 en el sistema de lógica son Nada y Universo.
En la actualidad, el álgebra de Boole se aplica de forma generalizada en el ámbito del diseño electrónico. Claude Shannon fue el primero en aplicarla en el diseño de circuitos de conmutación eléctrica biestables, en 1948. Esta lógica se puede aplicar a dos campos:
- Al análisis, porque es una forma concreta de describir como funcionan los circuitos.
- Al diseño, ya que teniendo una función aplicamos dicha álgebra, para poder desarrollar una implementación de la función.
Definición
Dado un conjunto en el que se han definido dos leyes de composición interna . La estructura es un álgebra de Boole si y solo si es un Retículo distributivo,5 esto es:
- es distributiva respecto a :
- es distributiva respecto a
Basándose en esta definición se determina lo siguiente.
Principio
Dado un conjunto: formado cuando menos por los elementos: en el que se ha definido:
- Una operación unaria interna, que llamaremos complemento:
En esta operación definimos una aplicación que, a cada elemento a de B, le asigna un b de B.
Para todo elemento a en B, se cumple que existe un único b en B, tal que b es el complemento de a.
- La operación binaria interna, que llamaremos suma:
por la que definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.
Para todo par ordenado (a, b) en B por B, se cumple que existe un único c en B, tal que c es el resultado de sumar a con b.
- La operación binaria interna, que llamaremos producto:
Con lo que definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.
Para todo par ordenado (a, b) en B por B, se cumple que existe un único c en B, tal que c es el resultado del producto a y b.
Dada la definición del álgebra de Boole como una estructura algebraica genérica, según el caso concreto de que se trate, la simbología y los nombres de las operaciones pueden variar.
Axiomas necesarios
Diremos que este conjunto y las operaciones así definidas: son un álgebra de boole, si cumple las siguientes axiomas:
- 1a: La ley asociativa de la suma:
- 1b: La ley asociativa del producto:
- 2a: Existencia del elemento neutro para la suma:
- 2b: Existencia del elemento neutro para el producto:
- 3a: La ley conmutativa de la suma:
- 3b: La ley conmutativa del producto:
- 4a: Ley distributiva de la suma respecto al producto:
- 4b: Ley distributiva del producto respecto a la suma:
- 5a: Existe elemento complemento para la suma:
- 5b: Existe elemento complemento para el producto:
Teoremas fundamentales
Partiendo de los cinco axiomas anteriores, se pueden deducir y demostrar los siguientes teoremas fundamentales:
- Ley de idempotencia para la suma:
- Ley de idempotencia para el producto:
- Ley de absorción para la suma:
- Ley de absorción para el producto:
- Ley de identidad para la suma:
- Ley de identidad para el producto:
- Ley de involución:
- 10: Ley del complemento:
- 11: Leyes de De Morgan:
Orden en el álgebra de Boole
Sea: un álgebra de Boole, sean a, b dos elementos del conjunto, podremos decir entonces que a antecede a b y lo denotamos:
si se cumple alguna de las siguientes condiciones:
Estas cuatro condiciones se consideran equivalentes y el cumplimiento de una de ellas implica necesariamente el cumplimiento de las demás. Definiendo un conjunto parcialmente ordenado.
Si se cumple que:
Para los valores a, b de , que cumplen que a antecede a b, o que b antecede a a, se dice que a y b son comparables.
Si se cumple que:
Para los valores a, b de , que cumplen que a no antecede a b, y que b no antecede a a, se dice que a y b son no comparables.
Principio de dualidad
El concepto de dualidad permite formalizar este hecho: a toda relación o ley lógica le corresponderá su dual, formada mediante el intercambio de los operadores suma con los de producto, y de los con los .
Adición Producto 1 2 3 4 5 6 7 8 9
Otras formas de notación del álgebra de Boole
En Lógica binaria se suele emplear la notación , común en la tecnología digital, siendo la forma más usual y la más cómoda de representar.
Por ejemplo las leyes de De Morgan se representan así:
Cuando el álgebra de Boole se emplea en electrónica, suele emplearse la misma denominación que para las puerta lógica AND (Y), OR (O) y NOT (NO), ampliándose en ocasiones con X-OR (O exclusiva) y su negadas NAND (NO Y), NOR (NO O) y X-NOR (equivalencia). las variables pueden representarse con letras mayúsculas o minúsculas, y pueden tomar los valores {0, 1}
Empleando esta notación las leyes de De Morgan se representan:
En su aplicación a la lógica se emplea la notación y las variables pueden tomar los valores {F, V}, falso o verdadero, equivalentes a {0, 1}
Con la notación lógica las leyes de De Morgan serían así:
En el formato de Teoría de conjuntos el Álgebra de Boole toma el aspecto:
En esta notación las leyes de De Morgan serían así:
Otra forma en la álgebra de conjuntos del Álgebra de Boole, las leyes de De Morgan serían así:
Desde el punto de vista práctico existe una forma simplificada de representar expresiones booleanas. Se emplean apóstrofos (') para indicar la negación, la operación suma (+) se representa de la forma normal en álgebra, y para el producto no se emplea ningún signo, las variables se representan, normalmente con una letra mayúscula, la sucesión de dos variables indica el producto entre ellas, no una variable nombrada con dos letras.
La representación de las leyes de De Morgan con este sistema quedaría así, con letra minúsculas para las variables:
y así, empleando letras mayúsculas para representar las variables:
Todas estas formas de representación son correctas, se utilizan de hecho, y pueden verse al consultar bibliografía. La utilización de una u otra notación no modifica el álgebra de Boole, solo su aspecto, y depende de la rama de las matemáticas o la tecnología en la que se esté utilizando para emplear una u otra notación.
Estructuras algebraicas que son álgebra de Boole
Hay numerosos casos de distintos análisis de estructuras algebraicas que corresponden al álgebra de Boole, aunque en apariencia son muy diferentes, su estructura es la misma. Vamos a ver algunos de ellos, con el propósito de hacer palpable las similitudes en la estructura y los distintos ámbitos de aplicación y distinta terminología para referirse a las operaciones o a las variables.
Lógica binaria
Una serie de temas, aparentemente tan distintos, tiene dos cosas en común, la lógica binaria basada en los ceros y los unos y el álgebra de Boole, posiblemente la forma más conocida de esta álgebra, que en ocasiones da lugar a la interpretación que el álgebra de Boole es la lógica binaria exclusivamente, así el conjunto en este caso está formado por dos elementos {0,1}, o {F, V}, o {no, sí}, dos valores contrapuestos, que son las dos posibles alternativas entre dos situaciones posibles, aquí, sin pérdida de la generalidad, tomaremos el conjunto: {0,1} como ya hemos dicho:
Donde:
- La operación unaria interna, que llamaremos negación:
La operación unaria interna negación, definimos una aplicación que a cada elemento a de {0,1}, le asigna un b de {0,1}.
Para todo elemento a en {0.1}, se cumple que existe un único b en {0,1}, tal que b es la negación de a. Como se ve en la tabla.
- La operación binaria interna, que llamaremos suma:
Con la operación suma definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.
Para todo par ordenado (a,b) en B por B, se cumple que existe un único c en B, tal que c es el resultado de sumar a con b.
- la operación binaria interna, que llamaremos producto:
Con la operación producto definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.
Para todo par ordenado (a, b) en B por B, se cumple que existe un único c en B, tal que c es el resultado del producto a y b. Como se puede ver en la tabla.
Axiomas
Así es un álgebra de Boole al cumplir los siguientes axiomas:
- 1a: La ley asociativa de la suma:
- 1b: La ley asociativa del producto:
- 2a: Existencia del elemento neutro para la suma:
- 2b: Existencia del elemento neutro para el producto:
- 3a: La ley conmutativa de la suma:
- 3b: La ley conmutativa del producto:
- 4a: Ley distributiva de la suma respecto al producto:
- 4b: Ley distributiva del producto respecto a la suma:
- 5a: Existe elemento complementario para la suma:
- 5b: Existe elemento complementario para el producto:
Luego es álgebra de Boole.
Teoremas fundamentales
Partiendo de estos axiomas se puede demostrar los siguientes teoremas:
- 6a: Ley de idempotencia para la suma:
- 6b: Ley de idempotencia para el producto:
- 7a: Ley de absorción para la suma:
- 7b: Ley de absorción para el producto:
- 8a: Ley de identidad para la suma:
- 8b: Ley de identidad para el producto:
- 9: Ley de involución:
- 10: Ley del complemento:
- 11: Leyes de De Morgan:
Orden en el álgebra de Boole
Partiendo de álgebra de Boole, dadas dos variables binarias: a, b, que cumplen alguna de estas condiciones:
entonces a es menor o igual que b. Dados los valores binarios 0 y 1, podemos ver:
Estas cuatro condiciones son equivalentes y el cumplimiento de una de ellas supone el cumplimiento de las otras, en este caso es sencillo comprobarlas todas. Luego podemos decir que 0 antecede a 1 y lo denotamos:
Si además sabemos que 0 y 1 son valores distintos:
El valor binario 0 es menor que el valor binario 1.
Operaciones en álgebra de Boole
El álgebra de Boole se basa en un conjunto en el que se han definidos tres operaciones internas: una unaria y dos binarias, como ya hemos visto, siendo cómoda esta definición. Estrictamente hablando solo son necesarias dos, la unaria y una de las binarias, así, por ejemplo, en la lógica binaria con la negación y el producto podemos definir la suma.
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
Con la ley de De Morgan:
Esta expresión resulta más compleja, pero partiendo de la negación y el producto binarios define la suma binaria.
En la imagen de la derecha podemos ver un circuito en paralelo de dos pulsadores a y b, que corresponde a la suma binaria de a y b, y su equivalente en un circuito en serie de a y b, los dos dan como resultado la misma tabla de verdad, y por tanto son equivalentes, lo artificioso el circuito serie para obtener el mismo resultado que en un circuito paralelo deja ver lo conveniente de considerar esa función, la posibilidad de obtener la suma de dos variables binarias mediante la negación y el producto señalan que, de forma primaria, el álgebra de Boole se basa solo en dos operaciones, y que cualquier expresión en la que intervenga la suma puede transformarse en otra equivalente en la que solo intervienen la negación y el producto.
En el caso de la teoría de conjuntos con el complemento y la intersección podemos definir la unión:
De una forma similar al álgebra binaria, o cualquier otra álgebra de Boole, La definición del álgebra con solo dos operaciones complica las expresiones, pero permite determinar ciertas relaciones muy útiles, así como otras operaciones distintas.
En el álgebra de Boole definido en un conjunto las operaciones son internas, dado que parte de elemento de , para obtener un resultado en .
Sin perdida de la generalidad, y dado los distintos formas que puede adoptar el álgebra de Boole consideraremos la lógica proposicional con las proposiciones: a, c, b, etc. Que pueden tomar los valores verdadero: V o falso: F. Y las conectivas lógicas sobre esas proposiciones que dan como resultado otras proposiciones lógicas, cada proposición: a, b, c, etc. Define un conjunto A, B, C, etc. Que podemos representar de forma gráfica en un diagrama de Venn.
Operaciones nularias
Una operación nularia es la que devuelve un valor sin necesidad de argumentos, podemos ver tautología y contradicción
![]() |
La tautología presenta el valor verdadero sin necesidad de argumentos o independientemente de las variables sobre la que se calcule. En teoría de conjuntos corresponde al conjunto universal.
En lógica proposicional corresponde al valor: verdadero:
En un circuito de conmutación corresponde a una conexión fija o puente cerrado.
![]() |
![]() |
![]() |
La contradicción, por el contrario, presenta siempre el valor falso, sin necesitar argumentos o independientemente de los argumentos presentados. En teoría de conjuntos corresponde al conjunto vacío.
En lógica proposicional corresponde al valor: falso:
En un circuito de conmutación, corresponde a la no conexión o puente abierto.
![]() |
![]() |
Operaciones unarias
Una operación unaria es la que solo necesita un argumento para presentar un resultado, podemos ver dos operaciones unarias: identidad y negación.
![]() |
La operación identidad de una afirmación presenta el valor de la variación.
Esta operación se puede hacer con el dispositivo electrónico amplificador buffer.
![]() |
En un circuito de conmutación corresponde a un interruptor normalmente abierto: Interruptor NA.
![]() |
![]() |
La operación negación lógica de una variable presenta el valor contrario del argumento, o los casos contrarios de los recogidos en el argumento.
Esta operación se hace con la Puerta NOT.
![]() |
En un circuito de conmutación corresponde a un interruptor normalmente cerrado: Interruptor NC.
![]() |
Operaciones binarias
La operación binaria es la que necesita dos argumentos, de hecho es la forma más generalizada de operación, normalmente cuando nos referimos a operaciones, nos referimos a operaciones binarias, en el álgebra de Boole podemos ver las siguientes operaciones binarias:
![]() |
- La Conjunción lógica presenta resultado verdadero solo cuando sus dos argumentos son verdaderos.
Normalmente representado:
La conjunción lógica de proposiciones es equivalente a la intersección de conjuntos en teoría de conjuntos, o a la puerta lógica AND:
![]() |
en circuitos de conmutación seria un circuito en serie de interruptores.
![]() |
![]() |
- La Conjunción opuesta presenta resultado verdadero en todos los casos excepto cuando sus dos argumentos son verdaderos. Esta operación es la negación de la conjunción.
La conjunción lógica de proposiciones es equivalente a la puerta lógica NAND.
![]() |
![]() |
![]() |
- La Disyunción lógica acepta dos argumentos presentando como resultado verdadero si uno u otro de los argumentos es verdadero.
La disyunción puede expresarse:
La operación disyunción lógica de proposiciones, es equivalente a la unión de conjuntos en teoría de conjuntos, a la puerta lógica OR:
![]() |
![]() |
![]() |
- La Disyunción opuesta presenta resultado verdadero solo cuando sus dos argumentos son falsos. Esta operación es la negación de la disyunción.
La negación conjunta de proposiciones es equivalente a la puerta lógica NOR.
![]() |
![]() |
![]() |
- La Implicación presenta resultado falso si el primer argumento es verdadero y el segundo falso, en el resto de los casos presenta resultado verdadero, esta operación no es conmutativa y puede expresarse:
A esta operación también se llama implicación: a implica b:
- si a es verdadero b es verdadero.
- si a es falso y b es verdadero, la implicación es falsa.
- si a es falsa, la implicación es verdadera independientemente el valor de b.
A esta operación le corresponde un conjunto de puertas lógicas complejas:
![]() |
![]() |
![]() |
![]() |
- La Adjunción lógica presenta resultado verdadero si el primer argumento es verdadero y el segundo falso, en el resto de los casos presenta resultado falso, esta operación no es conmutativa y es la negación de la condicional material, también suele llamarse diferencia de a y b, puede expresarse:
A esta operación le corresponde un conjunto de puertas lógicas complejas:
![]() |
![]() |
![]() |
- La Implicación opuesta es la operación que presenta resultado falso si el primer argumento es falso y el segundo verdadero, en el resto de los casos presenta resultado verdadero, esta operación no es conmutativa y es el resultado de permutar a y b en la condicional material, puede expresarse:
A esta operación le corresponde un conjunto de puertas lógicas complejas:
![]() |
![]() |
![]() |
- La Adjunción opuesta presenta resultado verdadero si el primer argumento es falso y el segundo verdadero, en el resto de los casos presenta resultado falso, esta operación no es conmutativa y es la negación de la condicional inverso, también suele llamarse diferencia: b - a, puede expresarse:
A esta operación le corresponde un conjunto de puertas lógicas complejas:
![]() |
![]() |
![]() |
- La Bicondicional presenta resultado verdadero si los dos argumentos son iguales, esto es: si a y b son verdaderos o si a y b son falsos.
Le corresponde la Puerta XNOR.
![]() |
![]() |
![]() |
- La Disyunción exclusiva presenta resultado verdadero si los dos argumentos son dispares, esto es si de los dos argumentos uno es verdadero y otro falso, es la negación de la bicondicional:
Esta operación también se llama o exclusivo, uno o el otro pero no los dos, le corresponde la puerta lógica: XOR.
![]() |
![]() |
Fórmula de Boole bien formada
Partiendo de un conjunto: y donde a, b, c, d, ... son variables o constantes que pueden tomar valores del conjunto , donde se han definido las siguientes operaciones internas:
podemos decir que son fórmulas bien formadas: fbf:
1: Una variable o constante:
2: La negación de una variable o constante:
3: La operación binaria entre dos variables o constantes:
4: El resultado de sustituir en una fórmula bien formada, una variable o constante por una fórmula bien formada:
La aplicación repetida de estos criterios dará siempre una fórmula bien formada.
ejemplo:
Se podrán emplear tantos paréntesis como sean necesarios para evitar ambigüedades, evitando siempre la utilización superflua de paréntesis.
Jerarquía de los operadores
Al evaluar una expresión booleana, deben realizarse las operaciones de acuerdo con su nivel jerárquico, realizando primero la de mayor jerarquía. Si existen paréntesis, deben resolverse primero los más internos y trabajar hacia fuera. En ausencia de paréntesis, la jerarquía de las operaciones es, de mayor a menor, la siguiente:
Si se tienen varias operaciones con la misma jerarquía, éstas pueden ser evaluadas de derecha a izquierda o de izquierda a derecha, el resultado será el mismo.
Como ejemplo, considérese la evaluación de las siguientes expresiones booleanas:
0 comentarios: