Álgebra de Boole

De Wikipedia, la enciclopedia libre
(Redirigido desde «Álgebra booleana»)
Saltar a: navegación, búsqueda

Á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.

Interruptor lógico 032.svg
Interruptor lógico 072.svg

Historiaeditar

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 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 como un libro más importante: The Laws of Thought,2 publicado en 1854.

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óneditar

Dado un conjunto:  \mathfrak{B} formado cuando menos por los elementos:  \varnothing, \; U en el que se ha definido:


   \begin{array}{rrcl}
      \sim : & \mathfrak{B} & \to & \mathfrak{B} \\
             &    a         & \to & b = \sim a
   \end{array}

En esta operación definimos una aplicación que, a cada elemento a de B, le asigna un b de B.


   \forall a \in \mathfrak{B}
   \, : \quad
   \exists !  b \in \mathfrak{B}
   \; / \quad
   b = \sim a

Para todo elemento a en B, se cumple que existe un único b en B, tal que b es el complemento de a.


   \begin{array}{rrcl}
      \oplus : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
              & (a,b)                            & \to & c = a \oplus b
   \end{array}

por la que definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.


   \forall (a,b) \in \mathfrak{B} \times \mathfrak{B}
   \, : \quad
   \exists !  c \in \mathfrak{B}
   \; / \quad
   c = a \oplus 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:

   \begin{array}{rrcl}
      \odot : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
             & (a,b)                            & \to & c = a \odot b
   \end{array}

Con lo que definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.


   \forall (a,b) \in \mathfrak{B} \times \mathfrak{B}
   \, : \quad
   \exists !  c \in \mathfrak{B}
   \; / \quad
   c = a \odot 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 necesarioseditar

Diremos que este conjunto y las operaciones así definidas:  (\mathfrak{B}, \sim, \oplus, \odot) son un álgebra de boole, si cumple las siguientes axiomas:


   \forall a, b, c \in \mathfrak{B}
   : \;
   (a \oplus b) \oplus c = a \oplus (b \oplus c)
  • 1b: La ley asociativa del producto:

   \forall a, b,c \in \mathfrak{B}
   : \;
   (a \odot b) \odot c = a \odot (b \odot c)

   \forall a \in \mathfrak{B}
   : \;
   a \oplus \varnothing = a
  • 2b: Existencia del elemento neutro para el producto:

   \forall a \in \mathfrak{B}
   : \;
   a \odot U = a

   \forall a, b \in \mathfrak{B}
   : \;
   a \oplus b = b \oplus a
  • 3b: La ley conmutativa del producto:

   \forall a, b \in \mathfrak{B}
   : \;
   a \odot b = b \odot a

   \forall a, b, c \in \mathfrak{B}
   : \;
   a \oplus (b \odot c) = (a \oplus b) \odot (a \oplus c)
  • 4b: Ley distributiva del producto respecto a la suma:

   \forall a, b, c \in \mathfrak{B}
   : \;
   a \odot (b \oplus c) = (a \odot b) \oplus (a \odot c)
  • 5a: Existe elemento complemento para la suma:

   \forall a \in \mathfrak{B}
   ; \;
   \exists \sim a \in \mathfrak{B}
   : \;
   a \oplus \sim a = U
  • 5b: Existe elemento complemento para el producto:

   \forall a \in \mathfrak{B}
   ; \;
   \exists \sim a \in \mathfrak{B}
   : \;
   a \odot \sim a = \varnothing

Teoremas fundamentaleseditar

Partiendo de los cinco axiomas anteriores, se pueden deducir y demostrar los siguientes teoremas fundamentales:


   \forall a \in \mathfrak{B}
   : \;
   a \oplus  a = a
  • 6b: Ley de idempotencia para el producto:

   \forall a \in \mathfrak{B}
   : \;
   a \odot  a = a

   \forall a \in \mathfrak{B}
   : \;
   a \oplus U = U
  • 7b: Ley de absorción para el producto:

   \forall a \in \mathfrak{B}
   : \;
   a \odot \varnothing = \varnothing
  • 8a: Ley de identidad para la suma:

   \forall a \in \mathfrak{B}
   : \;
   a \oplus \varnothing = a
  • 8b: Ley de identidad para el producto:

   \forall a \in \mathfrak{B}
   : \;
   a \odot U = a

   \forall a \in \mathfrak{B}
   : \;
   \sim (\sim a) = a
  • 10: Ley del complemento:

   \sim U = \varnothing

   \sim \varnothing = U

   \forall a, b \in \mathfrak{B}
   : \;
   \sim ( a \oplus b) = \sim a \odot \sim b

   \forall a, b \in \mathfrak{B}
   : \;
   \sim ( a \odot b) = \sim a \oplus \sim b

Orden en el álgebra de Booleeditar

Sea:  (\mathfrak{B}, \sim, \oplus, \odot) un álgebra de Boole, sean a, b dos elementos del conjunto, podremos decir entonces que a antecede a b y lo denotamos:


   a \precsim b

si se cumple alguna de las siguientes condiciones:

  1. 
   a \oplus b = b
  2. 
   a \odot b = a
  3. 
   \sim a \oplus b = U
  4. 
   a \odot \sim b = \varnothing

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.

Principio de dualidadeditar

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  U \; con los  \varnothing .

Adición Producto
1  a \oplus \sim {a} = U \,  a \odot \sim {a} = \varnothing
2  a \oplus \varnothing = a \,  a \odot U = a \,
3  a \oplus U = U \,  a \odot \varnothing = \varnothing \,
4  a \oplus a = a \,  a \odot a = a \,
5  a \oplus b = b \oplus a \,  a \odot b = b \odot a \,
6  a \oplus (b \oplus c) = (a \oplus b) \oplus c \,  a \odot (b \odot c) = (a \odot b) \odot c \,
7  a \oplus ( b \odot c ) = (a \oplus b) \odot (a \oplus c) \,  a \odot (b \oplus c) = a \odot b \oplus a \odot c \,
8  a \oplus a \odot b = a \,  a \odot (a \oplus b) = a \,
9  \sim {(a \oplus b)} = \sim {a} \odot \sim {b}  \sim {(a \odot b)} = \sim {a} \oplus \sim {b} \,


Otras formas de notación del álgebra de Booleeditar

En Lógica binaria se suele emplear la notación  (\{0,1\}, \bar{}, + , \cdot) , 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í:

 \overline {a + b}= \bar {a} \cdot \bar {b} \,
 \overline {a \cdot b} = \bar {a}+ \bar {b} \,

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:

 \mbox{NOT }(a \mbox{ OR } b)= \mbox{NOT } a \mbox{ AND } \mbox{NOT } b \,
 \mbox{NOT }(a \mbox{ AND } b) = \mbox{NOT } a \mbox{ OR } \mbox{NOT } b \,

En su aplicación a la lógica se emplea la notación  \land \lor \lnot 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í:

 \lnot {(a \lor b)}= \lnot {a}  \land \lnot {b} \,
 \lnot {(a \land b)} = \lnot {a} \lor \lnot {b} \,

En el formato de Teoría de conjuntos el Álgebra de Boole toma el aspecto:  (\mathcal{P}(U), \sim, \cup , \cap)

En esta notación las leyes de De Morgan serían así:

 \sim {(a \cup b)} = \; \sim {a} \; \cap \sim {b} \,
 \sim {(a \cap b)} = \; \sim {a} \; \cup \sim {b} \,

Otra forma en la álgebra de conjuntos del Álgebra de Boole, las leyes de De Morgan serían así:

 {(A \cup B)}^C = \; {A}^C \cap {B}^C
 {(A \cap B)}^C = \; {A}^C \cup {B}^C

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:

 (a + b)' = a' b' \,
 (a b)' = a' + b' \,

y así, empleando letras mayúsculas para representar las variables:

 (A + B)' = A' B' \,
 (A B)' = A' + B' \,

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 Booleeditar

Hay numerosos casos de distintas 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, veámoslos.

Lógica binariaeditar

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 este álgebra, que en ocasiones da lugar a la interpretación que el álgebra de Boole es la lógica binaria exclusivamente, así el conjunto  \mathfrak{B} 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 perdida de la generalidad, tomaremos el conjunto: {0,1} como ya hemos dicho:


   \mathfrak{B} = \{0, 1 \}

Donde:


   \varnothing = 0

   U = 1 \;
  • La operación unaria interna, que llamaremos negación:

   \begin{array}{c|c}
      a & \bar{a} \\
      \hline
      0 & 1 \\
      1 & 0
   \end{array}

   \begin{array}{rrcl}
      \bar{ } : & \mathfrak{B} & \to & \mathfrak{B} \\
             &    a         & \to & b = \bar a
   \end{array}

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}.


   \forall a \in \mathfrak{B}
   \, : \quad
   \exists !  b \in \mathfrak{B}
   \; / \quad
   b = \bar{a}

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:

   \begin{array}{c|cc}
      + & 0 & 1 \\
      \hline
      0 & 0 & 1 \\
      1 & 1 & 1
   \end{array}

   \begin{array}{rrcl}
      + : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
              & (a,b)                            & \to & c = a + b
   \end{array}

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.


   \forall (a,b) \in \mathfrak{B} \times \mathfrak{B}
   \, : \quad
   \exists !  c \in \mathfrak{B}
   \; / \quad
   c = a + 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:

   \begin{array}{c|cc}
      \cdot & 0 & 1 \\
      \hline
      0 & 0 & 0 \\
      1 & 0 & 1
   \end{array}

   \begin{array}{rrcl}
      \cdot : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
             & (a,b)                            & \to & c = a \cdot b
   \end{array}

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.


   \forall (a,b) \in \mathfrak{B} \times \mathfrak{B}
   \, : \quad
   \exists !  c \in \mathfrak{B}
   \; / \quad
   c = a \cdot 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.

Axiomaseditar

Así  (\{0,1\}, \bar{}, +, \cdot) es un álgebra de boole al cumplir los siguientes axiomas:

  • 1a: La ley asociativa de la suma:

   \forall a, b, c \in \{0,1\}
   : \;
   (a + b) + c = a + (b + c)
  • 1b: La ley asociativa del producto:

   \forall a, b,c \in \{0,1\}
   : \;
   (a \cdot b) \cdot c = a \cdot (b \cdot c)
  • 2a: Existencia del elemento neutro para la suma:

   \forall a \in \{0,1\}
   : \;
   a + 0 = a
  • 2b: Existencia del elemento neutro para el producto:

   \forall a \in \{0,1\}
   : \;
   a \cdot 1 = a
  • 3a: La ley conmutativa de la suma:

   \forall a, b \in \{0,1\}
   : \;
   a + b = b + a
  • 3b: La ley conmutativa del producto:

   \forall a, b \in \{0,1\}
   : \;
   a \cdot b = b \cdot a
  • 4a: Ley distributiva de la suma respecto al producto:

   \forall a, b, c \in \{0,1\}
   : \;
   a + (b \cdot c) = (a + b) \cdot (a + c)
  • 4b: Ley distributiva del producto respecto a la suma:

   \forall a, b, c \in \{0,1\}
   : \;
   a \cdot (b + c) = (a \cdot b) + (a \cdot c)
  • 5a: Existe elemento complementario para la suma:

   \forall a \in \{0,1\}
   ; \;
   \exists \bar{a} \in \{0,1\}
   : \;
   a + \bar{a} = 1
  • 5b: Existe elemento complementario para el producto:

   \forall a \in \{0,1\}
   ; \;
   \exists \bar{a} \in \{0,1\}
   : \;
   a \cdot \bar{a} = 0

Luego  (\{0,1\}, \bar{}, +, \cdot) es álgebra de boole.

Teoremas fundamentaleseditar

Partiendo de estos axiomas se puede demostrar los siguientes teoremas:

  • 6a: Ley de idempotencia para la suma:

   \forall a \in \{0,1\}
   : \;
   a + a = a
  • 6b: Ley de idempotencia para el producto:

   \forall a \in \{0,1\}
   : \;
   a \cdot  a = a
  • 7a: Ley de absorción para la suma:

   \forall a \in \{0,1\}
   : \;
   a + 1 = 1
  • 7b: Ley de absorción para el producto:

   \forall a \in \{0,1\}
   : \;
   a \cdot 0 = 0
  • 8a: Ley de identidad para la suma:

   \forall a \in \{0,1\}
   : \;
   a + 0 = a
  • 8b: Ley de identidad para el producto:

   \forall a \in \{0,1\}
   : \;
   a \cdot 1 = a
  • 9: Ley de involución:

   \forall a \in \{0,1\}
   : \;
   \bar{ \bar{a}} = a
  • 10: Ley del complemento:

   \bar{1}= 0

   \bar{0} = 1
  • 11: Leyes de De Morgan:

   \forall a, b \in \{0,1\}
   : \;
   \overline{ a + b} = \bar{a} \cdot \bar{b}

   \forall a, b \in \{0,1\}
   : \;
   \overline{a \cdot b} = \bar{a} + \bar{b}

Orden en el álgebra de Booleeditar

Partiendo de  (\{0,1\}, \bar{ }, + , \cdot) álgebra de Boole, dadas dos variables binarias: a, b, que cumplen alguna de estas condiciones:


   \left .
      \begin{array}{l} 
         a + b= b \\
         a \cdot b = a \\
         \bar{a} + b = 1 \\
         a \cdot \bar{b} = 0
      \end{array} 
   \right \} 
   \longrightarrow \quad
   a \le b

entonces a es menor o igual que b. Dados los valores binarios 0 y 1, podemos ver:

  1. 
   0 + 1 = 1
  2. 
   0 \cdot 1 = 0
  3. 
   \bar{0} + 1 = 1
  4. 
   0 \cdot \bar{1} = 0

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:


   0 \le 1

Si además sabemos que 0 y 1 son valores distintos:


   \left .
      \begin{array}{l} 
           0 \le 1 \\
           0  \ne 1
      \end{array} 
   \right \} 
   \longrightarrow \quad
   0 < 1

El valor binario 0 es menor que el valor binario 1.

Álgebra de conjuntoseditar

DosConjuntos100.svg

Partiendo de un conjunto U, cualesquiera, llamamos conjunto potencia de U, al conjunto de todos los subconjuntos posibles de U y lo denotamos  \mathcal{P}(U) .

A título de ejemplo podemos considerar:


   U =
   \{a, b, c, d, e, f \} \,

Que tiene como conjunto potencia:


   \mathcal{P}(U) =
   \Big\{
    \varnothing ,\{a\},\{b\},\dots ,
   \{a,b\}, \{a,c\}, \dots ,
   \{a,b,c,d,e\}, \dots ,
   U
   \Big\}

Donde podemos definir:


   \mathfrak{B} = \mathcal{P}(U)

Y como es obvio:


   \varnothing = \varnothing

   U = U \;
  • La operación unaria interna, que llamaremos complemento:
UnConjunto02.svg

   \begin{array}{rrcl}
      {}^C : & \mathcal{P}(U) & \to & \mathcal{P}(U) \\
             &    A         & \to & B = A^C
   \end{array}

En esta operación definimos una aplicación que, a cada elemento A de P(U), le asigna un B de P(U).


   \forall A \in \mathcal{P}(U)
   \, : \quad
   \exists ! B \in \mathcal{P}(U)
   \; / \quad
   B = A^C

Para todo elemento A en P(U), se cumple que existe un único B en P(U), tal que B es el complemento A.

Definiendo el complemento de un conjunto así:


   B = A^C
   \longrightarrow \quad
   \forall x \in B
   : \quad
   x \in U \; \and \; x \notin A

B es el complemento de A, si se cumple que para todo x que pertenezca a B, x pertenece a U y x no pertenece a A.

  • La primera operación binaria la llamaremos unión:
DosConjuntos02.svg

   \begin{array}{rrcl}
      \cup : & \mathcal{P}(U) \times \mathcal{P}(U)  & \to & \mathcal{P}(U) \\
              & (A,B)                            & \to & C = A \cup B
   \end{array}

Con esta operación binaria interna definimos una aplicación que, a cada par ordenado (A, B) de P(U) por P(U), le asigna un C de P(U).


   \forall (A,B) \in \mathcal{P}(U) \times \mathcal{P}(U)
   \, : \quad
   \exists !  C \in \mathcal{P}(U)
   \; / \quad
   C = A \cup B

Para todo par ordenado (A,B) en P(U) por P(U), se cumple que existe un único C en P(U), tal que C es la unión A y B.

Definiendo la unión de dos conjuntos como:


   C = A \cup B
   \longrightarrow \quad
   \forall x \in C
   : \quad
   x \in A \; \or \; x \in B

El conjunto C es la unión de A y B, si para todo elemento x de C, se cumple que x es elemento de A o de B

  • La segunda operación binaria la llamaremos intersección:
DosConjuntos08.svg

   \begin{array}{rrcl}
      \cap : & \mathcal{P}(U)  \times \mathcal{P}(U)  & \to & \mathcal{P}(U)  \\
             & (A,B)                            & \to & C = A \cap B
   \end{array}

Con lo que definimos una aplicación que, a cada par ordenado (A, B) de P(U) por P(U), le asigna un C de P(U).


   \forall (A,B) \in \mathcal{P}(U) \times \mathcal{P}(U)
   \, : \quad
   \exists !  C \in \mathcal{P}(U)
   \; / \quad
   C = A \cap B

Para todo par ordenado (A,B) en P(U) por P(U), se cumple que existe un único C en P(U), tal que C es la intersección A y B.

Definiendo la intersección de dos conjuntos como:


   C = A \cap B
   \longrightarrow \quad
   \forall x \in C
   : \quad
   x \in A \; \and \; x \in B

El conjunto C es la intersección de A y B, si para todo elemento x de C, se cumple que x es elemento de A y de B.

Axiomaseditar

Con lo que podemos plantear:  (\mathcal{P}(U), {}^C,\cup, \cap) , para un U conocido, como álgebra de boole si cumple las siguientes axiomas:

  • 1a: La ley asociativa de la unión:

   \forall A, B, C \in \mathcal{P}(U)
   : \;
   (A \cup B) \cup C = A \cup (B \cup C)
  • 1b: La ley asociativa de la intersección:

   \forall A, B, C \in \mathcal{P}(U)
   : \;
   (A \cap B) \cap C = A \cap (B \cap C)
  • 2a: Existencia del elemento neutro para la unión:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cup \varnothing = A
  • 2b: Existencia del elemento neutro para la intersección:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cap U = A
  • 3a: La ley conmutativa de la unión:

   \forall A, B \in \mathcal{P}(U)
   : \;
   A \cup B = B \cup A
  • 3b: La ley conmutativa de la intersección:

   \forall A, B \in \mathcal{P}(U)
   : \;
   A \cap B = B \cap A
  • 4a: Ley distributiva de la unión respecto de la intersección:

   \forall A, B, C \in \mathcal{P}(U)
   : \;
   A \cup (B \cap C) = (A \cup B) \cap (A \cup C)
  • 4b: Ley distributiva de la intersección respecto a la unión:

   \forall A, B, C \in \mathcal{P}(U)
   : \;
   A \cap (B \cup C) = (A \cap B) \cup (A \cap C)
  • 5a: Existe elemento complementario para la unión:

   \forall A \in \mathcal{P}(U)
   ; \;
   \exists A^{C} \in \mathcal{P}(U)
   : \;
   A \cup A^{C} = U
  • 5b: Existe elemento complementario para la intersección:

   \forall A \in \mathcal{P}(U)
   ; \;
   \exists A^{C} \in \mathcal{P}(U)
   : \;
   A \cap A^{C} = \varnothing

Concluyendo que  (\mathcal{P}(U),{}^C, \cup, \cap) es un álgebra de boole.

Teoremas fundamentaleseditar

Partiendo de estos axiomas se puede demostrar los siguientes teoremas:

  • 6a: Ley de idempotencia para la unión:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cup A = A
  • 6b: Ley de idempotencia para la intersección:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cap A = A
  • 7a: Ley de absorción para la unión:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cup U = U
  • 7b: Ley de absorción para la intersección:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cap \varnothing = \varnothing
  • 8a: Ley de identidad para la unión:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cup \varnothing = A
  • 8b: Ley de identidad para la intersección:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cap U = A
  • 9: Ley de involución:

   \forall A \in \mathcal{P}(U)
   : \;
   {{A}^C}^C = A
  • 10: Ley del complemento:

   {U}^C = \varnothing

   {\varnothing}^C = U
  • 11: Leyes de De Morgan:

   \forall A, B \in \mathcal{P}(U)
   : \;
   {(A \cup B)}^C = {A}^C \cap {B}^C

   \forall a, b \in \mathcal{P}(U)
   : \;
   {(A \cap B)}^C = {A}^C \cup {B}^C

Orden en el álgebra de Booleeditar

Dado  (\mathcal{P}(U),{}^C, \cup, \cap) álgebra de Boole, podemos comprobar:

  1. 
   A \cup B = B
  2. 
   A \cap B = A
  3. 
   {A}^C \cup B = U
  4. 
   A \cap {B}^C = \varnothing

Para los conjuntos A y B que cumplen estas propiedades, podemos decir que A antecede a B, que en el caso de conjuntos se diría A es igual o un subconjunto de B y lo denotamos:


   A \subseteq  B

Entendiéndose que A es igual o un subconjunto de B cuando:

DosConjuntos218.svg

   A \subseteq B
   \longrightarrow \quad
   \forall x \in A
   : \;
   x \in B

El conjunto A es igual o un subconjunto de B, si para todo elemento x que pertenezca a A, x pertenece a B.

También se puede comprobar:


   \forall A \in \mathcal{P}(U)
   : \;
  \begin{array}{|l}
      A \cup U = U \\
      A \cap U = A \\
      {A}^C \cup U = U \\
      A \cap {U}^C = \varnothing
   \end{array} 
   \longrightarrow \quad
   A \subseteq  U

Para todo A de las partes de U, si se cumple que: la unión de A y U es U, la intersección de A y U es A, la unión del complemento de A y U es U, la intersección de A y el complemento de U es el conjunto vacío, entonces A es igual o un subconjunto de U.

Esta conclusión forma parte de la definición de las partes de U, pero se puede llegar a ella por el cumplimiento de una de las cuatro condiciones expuestas, como ya se mencionó, las cuatro condiciones son equivalentes y el cumplimiento de una de ellas implica el cumplimiento de las demás.

Aplicando el mismo razonamiento podemos ver:


   \forall B \in \mathcal{P}(U)
   : \;
  \begin{array}{|l}
      \varnothing \cup B = B \\
      \varnothing \cap B = \varnothing \\
      {\varnothing }^C \cup B = U \\
      \varnothing \cap {B}^C = \varnothing
   \end{array} 
   \longrightarrow \quad
   \varnothing \subseteq B

Siendo B un conjunto de las partes de U, llegando a la conclusión de que el conjunto vacío es igual o un subconjunto de B.

Lógica proposicional o de predicadoseditar

Una proposición, o un predicado, es un valor de verdad que puede expresarse de forma verbal o con expresiones o relaciones matemática o lógica, por ejemplo:

  • 'Hoy es miércoles.'
  • 'El edificio es alto.'
  • 'El perro está ladrando.'

Son proposiciones expresadas verbalmente, y también lo son:

  • 'x = 3'
  • 'mcd(a, b) = 2n + 1'

Dado que cada una de ellas puede ser verdadera o falsa, las proposiciones suelen designarse con letra:

  • p= 'Llueve'
  • q= 'Llueve mucho'
  • r= 'Llevo paraguas'
  • s= 'La calle está mojada'

Las afirmaciones verdadero y falso también son proposiciones, designaremos con:  \mathfrak{B} al conjunto de proposiciones, a fin de ver que la lógica de proposiciones es un álgebra de Boole, además consideraremos:


   \varnothing
   \longrightarrow \quad
   \bot = F = falso

   U
   \longrightarrow \quad
   \top = V = verdadero
  • La operación unaria interna, que llamaremos negación:

   \begin{array}{rrcl}
      \lnot : & \mathfrak{B} & \to & \mathfrak{B} \\
              &    a         & \to & b = \lnot a
   \end{array}

La operación unaria interna negación, definimos una aplicación que a cada proposición a, le asigna otra poposición b.


   \forall a \in \mathfrak{B}
   \, : \quad
   \exists !  b \in \mathfrak{B}
   \; / \quad
   b = \lnot{a}

Para toda proposición a, se cumple que existe una única proposición b, tal que b es la negación de a.

  • La primera operación binaria interna, que llamaremos disyunción:

   \begin{array}{rrcl}
      \lor : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
             & (a,b)                            & \to & c = a \lor b
   \end{array}

Con la operación disyunción, definimos una aplicación que a cada par ordenado (a, b) de B por B, le asigna un c de B.


   \forall (a,b) \in \mathfrak{B} \times \mathfrak{B}
   \, : \quad
   \exists !  c \in \mathfrak{B}
   \; / \quad
   c = a \lor 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 la disyunción de a y b.

  • La segunda operación binaria interna, que llamaremos conjunción:

   \begin{array}{rrcl}
      \land : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
              & (a,b)                            & \to & c = a \land b
   \end{array}

Con la operación conjunción definimos una aplicación que, a cada par ordenado (a, b) de B por B, le asigna un c de B.


   \forall (a,b) \in \mathfrak{B} \times \mathfrak{B}
   \, : \quad
   \exists !  c \in \mathfrak{B}
   \; / \quad
   c = a \land 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 la conjunción de a y b.

Axiomaseditar

Así  (\mathfrak{B}, \lnot{}, \lor, \land) es un álgebra de boole al cumple los siguientes axiomas:

  • 1a: La ley asociativa de la disyunción:

   \forall a, b, c \in \mathfrak{B}
   : \;
   (a \lor b) \lor c = a \lor (b \lor c)
  • 1b: La ley asociativa de la conjunción:

   \forall a, b,c \in \mathfrak{B}
   : \;
   (a \land b) \land c = a \land (b \land c)
  • 2a: Existencia del elemento neutro para la disyunción:

   \forall a \in \mathfrak{B}
   : \;
   a \lor F = a
  • 2b: Existencia del elemento neutro para la conjunción:

   \forall a \in \mathfrak{B}
   : \;
   a \land V = a
  • 3a: La ley conmutativa de la disyunción:

   \forall a, b \in \mathfrak{B}
   : \;
   a \lor b = b \lor a
  • 3b: La ley conmutativa de la conjunción:

   \forall a, b \in \mathfrak{B}
   : \;
   a \land b = b \land a
  • 4a: Ley distributiva de la disyunción respecto a la conjunción:

   \forall a, b, c \in \mathfrak{B}
   : \;
   a \lor (b \land c) = (a \lor b) \land (a \lor c)
  • 4b: Ley distributiva de la conjunción respecto al disyunción:

   \forall a, b, c \in \mathfrak{B}
   : \;
   a \land (b \lor c) = (a \land b) \lor (a \land c)
  • 5a: Existe elemento complementario para la disyunción:

   \forall a \in \mathfrak{B}
   ; \;
   \exists \lnot{a} \in \mathfrak{B}
   : \;
   a \lor \lnot{a} = V
  • 5b: Existe elemento complementario para la conjunción:

   \forall a \in \mathfrak{B}
   ; \;
   \exists \lnot{a} \in \mathfrak{B}
   : \;
   a \land \lnot{a} = F

Luego  (\mathfrak{B}, \lnot{}, \lor, \land) es álgebra de boole.

Teoremas fundamentaleseditar

Partiendo de estos axiomas se puede demostrar los siguientes teoremas:

  • 6a: Ley de idempotencia para la disyunción:

   \forall a \in \mathfrak{B}
   : \;
   a \lor a = a
  • 6b: Ley de idempotencia para la conjunción:

   \forall a \in \mathfrak{B}
   : \;
   a \land  a = a
  • 7a: Ley de absorción para la disyunción:

   \forall a \in \mathfrak{B}
   : \;
   a \lor V = V
  • 7b: Ley de absorción para la conjunción:

   \forall a \in \mathfrak{B}
   : \;
   a \land F = F
  • 8a: Ley de identidad para la disyunción:

   \forall a \in \mathfrak{B}
   : \;
   a \lor F = a
  • 8b: Ley de identidad para la conjunción:

   \forall a \in \mathfrak{B}
   : \;
   a \land V = a
  • 9: Ley de involución:

   \forall a \in \mathfrak{B}
   : \;
   \lnot \lnot a = a
  • 10: Ley de complemento:

   \lnot V = F

   \lnot F = V
  • 11: Leyes de De Morgan:

   \forall a, b \in \mathfrak{B}
   : \;
   \lnot({ a \lor b}) = \lnot{a} \land \lnot{b}

   \forall a, b \in \mathfrak{B}
   : \;
   \lnot({a \land b}) = \lnot{a} \lor \lnot{b}

Orden en el álgebra de Booleeditar

Sabiendo que  (\mathfrak{B}, \lnot{ }, \lor , \land) es álgebra de Boole, se puede comprobar que:

  1. 
   a \lor b = b
  2. 
   a \land b = a
  3. 
   \lnot a \lor b = V
  4. 
   a \land \lnot b = F

Para las proposiciones: a, b que cumplen alguna de estas condiciones se puede afirmar que a antecede a b. Que en el caso de proposiciones o predicados se dice que a es tanto o más fuerte que b, o que b es más débil que a, y lo representamos:


   a \preccurlyeq b

Así por ejemplo dadas las proposiciones:

  • a= Llueve mucho
  • b= Llueve

podemos ver:

  • 
   a \lor b = b
Si: llueve mucho o llueve entonces llueve.

Si se da la circunstancia de cualesquiera de dos, que llueve mucho o llueve, claramente llueve en cualquier caso.

  • 
   a \land b = a
Si: llueve mucho y llueve entonces llueve mucho.

Si afirmamos que llueve mucho y que llueve, y se cumplen las dos circunstancias entonces es que llueve mucho.

  • 
   \lnot a \lor b = V
Si: no llueve mucho o llueve es verdadero.

No llueve mucho indica que puede que llueva poco o que no llueva, si no llueve mucho o llueve abarca todas las posibilidades, desde tiempo seco a muy lluvioso, luego la afirmación es verdadera en todo caso.

  • 
   a \land \lnot b = F
Si: llueve mucho y no llueve es falso.

Si afirmamos que llueve mucho y simultáneamente que no llueve, la afirmación es claramente falsa.

La afirmación más restrictiva es la más fuerte y la menos restrictiva la más débil, en este caso:


   llueve \; mucho \preccurlyeq llueve

La proposición llueve mucho es tanto o más fuerte que llueve, la afirmación llueve mucho es un caso particular o el mismo caso de llueve.

Operaciones en álgebra de Booleeditar

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.

TE Conex 05.svg TE Interu 5a.svg TE Conex 12.svg TE Conex 09.svg
TE Conex 14.svg TE Conex 12.svg TE Interu 5b.svg TE Conex 14.svg
TE Conex 05.svg TE Interu 7a.svg TE Interu 7b.svg TE Conex 09.svg
TE Conex 06.svg TE Compon 05.svg TE Interu 09.svg TE Conex 10.svg
TE Conex 12.svg TE Conex 12.svg TE Interu 60.svg TE Conex 12.svg

Con la ley de De Morgan:


   \forall a, b \in \{0,1\}
   : \;
   \overline{ a + b} = \bar{a} \cdot \bar{b}
   \longrightarrow \quad
   a + b =\overline{ \bar{a} \cdot \bar{b} }

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:


   {(A \cup B)}^C = {A}^C \cap {B}^C
   \longrightarrow \quad
   A \cup B = {({A}^C \cap {B}^C)}^C

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  \mathfrak{B} las operaciones son internas, dado que parte de elemento de  \mathfrak{B} , para obtener un resultado en  \mathfrak{B} .

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 nulariaseditar

Una Operación nularia es la que devuelve un valor sin necesidad de argumentos, podemos ver Tautología y Contradicción


   \begin{array}{|c||c|}
      \hline
       &  \top  \\
      \hline
      \hline
       & V \\
      \hline
   \end{array}
Conjunto04.svg

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:


   \begin{array}{ccll}
      \top : & \varnothing & \longrightarrow & \mathbb{U} \\
             & ()          & \longrightarrow & a = \top() \equiv a = V
   \end{array}

En un circuito de conmutación corresponde a una conexión fija o puente cerrado.

Puerta 1.svg
Conmutador A 1.svg



   \begin{array}{|c||c|}
      \hline
       & \bot \\
      \hline
      \hline
       & F \\
      \hline
   \end{array}
Conjunto03.svg

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:


   \begin{array}{ccll}
      \bot : & \varnothing & \longrightarrow & \mathbb{U} \\
             & ()          & \longrightarrow & a = \bot() \equiv a = F
   \end{array}

En un circuito de conmutación, corresponde a la no conexión o puente abierto.

Puerta 0.svg
Conmutador A 0.svg


Operaciones unariaseditar

Una Operación unaria es la que solo necesita un argumento para presentar un resultado, podemos ver dos operaciones unarias: identidad y negación.


   \begin{array}{|c||c|}
      \hline
      a &  a  \\
      \hline
      \hline
      V & V \\
      F & F \\
      \hline
   \end{array}
UnConjunto01.svg

La operación identidad de una proposición presenta el valor de la variación.


   \begin{array}{ccll}
      id : & \mathbb{U} & \longrightarrow & \mathbb{U} \\
           & a          & \longrightarrow & b = id(a) \equiv b = a
   \end{array}

Esta operación se puede hacer con el dispositivo electrónico Buffer amplificador.

Puerta BUF.svg

En un circuito de conmutación corresponde a un interruptor normalmente abierto: Interruptor NA.

Conmutador A a.svg



   \begin{array}{|c||c|}
      \hline
      a & \lnot a  \\
      \hline
      \hline
      V & F \\
      F & V \\
      \hline
   \end{array}
UnConjunto02.svg

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.


   \begin{array}{ccll}
      \lnot : & \mathbb{U} & \longrightarrow & \mathbb{U} \\
              & a          & \longrightarrow & b = \lnot(a) \equiv b = \lnot a
   \end{array}

Esta operación se hace con la Puerta NOT.

Puerta INU.svg

En un circuito de conmutación corresponde a un interruptor normalmente cerrado: Interruptor NC.

Conmutador A na.svg


Operaciones binariaseditar

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:


   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \land b \\
      \hline
      \hline
      V & V & V \\
      V & F & F \\
      F & V & F \\
      F & F & F \\
      \hline
   \end{array}
DosConjuntos08.svg

La conjunción lógica presenta resultado verdadero solo cuando sus dos argumentos son verdaderos.


   \begin{array}{ccll}
      \land : & \mathbb{U} \times \mathbb{U} & \longrightarrow & \mathbb{U} \\
              & (a,b)                        & \longrightarrow & c = \land(a,b) \equiv c = a \land b
   \end{array}

Normalmente representado:


   a \land b

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:

Puerta AND.svg

en circuitos de conmutación seria un circuito en serie de interruptores.

Conmutador D ab.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \uparrow b \\
      \hline
      \hline
      V & V & F \\
      V & F & V \\
      F & V & V \\
      F & F & V \\
      \hline
   \end{array}
DosConjuntos09.svg

La Negación alternativa 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.


   a \uparrow b
   \; = \;
   \lnot ( a \land b )
   \; = \;
   \lnot a \lor \lnot b

La conjunción lógica de proposiciones es equivalente a la puerta lógica NAND.

Puerta NAND.svg
Conmutador E na nb.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \lor b \\
      \hline
      \hline
      V & V & V \\
      V & F & V \\
      F & V & V \\
      F & F & F \\
      \hline
   \end{array}
DosConjuntos02.svg

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:


   a \lor b
   \; = \;
   \lnot ( \lnot a \land \lnot b )

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:

Puerta OR.svg

y al circuito en paralelo en circuitos de conmutación

Conmutador E a b.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \downarrow b \\
      \hline
      \hline
      V & V & F \\
      V & F & F \\
      F & V & F \\
      F & F & V \\
      \hline
   \end{array}
DosConjuntos15.svg

La Negación conjunta presenta resultado verdadero solo cuando sus dos argumentos son falsos. Esta operación es la negación de la disyunción.


   a \downarrow b
   \; = \;
   \lnot ( a \lor b )
   \; = \;
   \lnot a \land \lnot b

La negación conjunta de proposiciones es equivalente a la puerta lógica NOR.

Puerta NOR.svg
Conmutador D nanb.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \to b \\
      \hline
      \hline
      V & V & V \\
      V & F & F \\
      F & V & V \\
      F & F & V \\
      \hline
   \end{array}
DosConjuntos05.svg

La condicional material 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 \to b
   \; = \;
   \lnot a \lor b
   \; = \;
   ( a \land b ) \lor \lnot a

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 vedadera independientemente el valor de b.

A esta operación le corresponde un conjunto de puertas lógicas complejas:

Puerta CM.svg
Conmutador E na b.svg
Conmutador E ab na.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \nrightarrow b \\
      \hline
      \hline
      V & V & F \\
      V & F & V \\
      F & V & F \\
      F & F & F \\
      \hline
   \end{array}
DosConjuntos12.svg

La negación condicional material 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 \nrightarrow b
   \; = \;
   \lnot ( a \to b )
   \; = \;
    a \land \lnot b
   \; = \;
   a - b

A esta operación le corresponde un conjunto de puertas lógicas complejas:

Puerta NCM.svg
Conmutador D anb.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \leftarrow b \\
      \hline
      \hline
      V & V & V \\
      V & F & V \\
      F & V & F \\
      F & F & V \\
      \hline
   \end{array}
DosConjuntos03.svg

La Condicional material inversa 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 \leftarrow b
   \; = \;
    a \lor \lnot b

A esta operación le corresponde un conjunto de puertas lógicas complejas:

Puerta CMI.svg
Conmutador E a nb.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \nleftarrow b \\
      \hline
      \hline
      V & V & F \\
      V & F & F \\
      F & V & V \\
      F & F & F \\
      \hline
   \end{array}
DosConjuntos14.svg

La Negación condicional material inverso 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 \nleftarrow b
   \; = \;
   \lnot ( a \leftarrow b )
   \; = \;
    \lnot a \land b
   \; = \;
   b - a

A esta operación le corresponde un conjunto de puertas lógicas complejas:

Puerta NCMI.svg
Conmutador D nab.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \leftrightarrow  b \\
      \hline
      \hline
      V & V & V \\
      V & F & F \\
      F & V & F \\
      F & F & V \\
      \hline
   \end{array}
DosConjuntos07.svg

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.


   a \leftrightarrow  b
   \; = \;
   ( a \land b) \lor (\lnot a \land \lnot b)

Le corresponde la Puerta XNOR.

Puerta XNOR.svg
Conmutador E ab nanb.svg



   \begin{array}{|c|c||c|}
      \hline
      a &  b & a \nleftrightarrow  b \\
      \hline
      \hline
      V & V & F \\
      V & F & V \\
      F & V & V \\
      F & F & F \\
      \hline
   \end{array}
DosConjuntos10.svg

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:


   a \nleftrightarrow b
   \; = \;
   \lnot ( a \leftrightarrow  b )
   \; = \;
   ( a \land \lnot b) \lor (\lnot a \land b)

Esta operación también se llama o exclusivo, uno o el otro pero no los dos, le corresponde la puerta lógica: XOR.

Puerta XOR.svg
Conmutador E anb nab.svg


Fórmula de Boole bien formadaeditar

Partiendo de un conjunto:  \mathfrak{B} y donde a, b, c, d, ... son variables o constantes que pueden tomar valores del conjunto  \mathfrak{B} , donde se han definido las siguientes operaciones internas:


   \begin{array}{rrcl}
      \sim : & \mathfrak{B} & \to & \mathfrak{B} \\
             &    a         & \to & b = \sim a
   \end{array}



   \begin{array}{rrcl}
      \oplus : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
              & (a,b)                             & \to & c = a \oplus b
   \end{array}



   \begin{array}{rrcl}
       \odot : & \mathfrak{B} \times \mathfrak{B} & \to & \mathfrak{B} \\
             & (a,b)                             & \to & c = a \odot b
   \end{array}

podemos decir que son fórmulas bien formadas: fbf:

1: Una variable o constante:


   a \;

2: La negación de una variable o constante:


   \sim a \;

3: La operación binaria entre dos variables o constantes:


   a \oplus b \;

4: El resultado de sustituir en una fórmula bien formada, una variable o constante por una fórmula bien formada:


   \left .
      \begin{array}{l} 
         a \oplus b \\
         a  = c \odot d
      \end{array} 
   \right \} 
   \longrightarrow \quad
   (c \odot d) \oplus b

La aplicación repetida de estos criterios dará siempre una fórmula bien formada.

ejemplo:


   \left .
   \begin{array}{l} 
      \left .
      \begin{array}{l} 
         \sim a \\
          a = b \odot c
      \end{array}
      \right \}
      \longrightarrow \quad
      \sim (b \odot c) \\
      \; c = d \oplus e
   \end{array} 
   \right \} 
   \longrightarrow \quad
   \sim (b \odot (d \oplus e))

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 operadoreseditar

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:

  1.  \sim
  2.  \odot
  3.  \oplus

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:


   \sim a \odot b
   \quad \longleftrightarrow \quad
   (\sim a) \odot b

   a \oplus b \odot c
   \quad \longleftrightarrow \quad
   a \oplus ( b \odot c )

   a \oplus b \oplus c
   \quad \longleftrightarrow \quad
   ( a \oplus b ) \oplus c
   \quad \longleftrightarrow \quad
   a \oplus ( b \oplus c )

Véase tambiéneditar

Enlaces externoseditar

Referenciaseditar

  1. Boole, George; Requena Manzano, Esteban: tr. (1 de 1984) (en español). El análisis matemático de la lógica (2 edición). Ediciones Cátedra, S.A.. ISBN 978-84-376-0208-0. 
  2. Boole, George; Suárez Hernández, José Antonio: tr. (3 de 1982) (en español). Investigación sobre las leyes del pensamiento (1 edición). Ediciones Paraninfo. S.A.. ISBN 978-84-283-1168-7. 

Bibliografíaeditar

  1. AYRES, Frank. Mc Graw-Hill. Serie Schaum. ed. Álgebra Moderna (1994 edición). ISBN 968-422-917-8. 
  2. González Carlomán, Antonio. Universidad de Oviedo. Servicio de Publicaciones. ed. Retículo completo de Boole, lógica matemática, teoría de conjuntos (2006 edición). ISBN 84-8317-534-7. 
  3. García Zubia, Javier; Sanz Martínez, Jesús; Sotomayor Basilio, Borja. Universidad de Deusto. Departamento de Publicaciones. ed. Boole-Deusto v2.1 entorno de diseño lógico (2005 edición). ISBN 84-7485-973-5. 
  4. Giménez Pradales, José Miguel. Universidad Politécnica de Cataluña. Departamento de Matemática Aplicada III. ed. Álgebra de Boole para ingeniera técnica (2004 edición). ISBN 84-933451-0-5. 
  5. García Zubia, Javier; Sanz Martínez, Jesús; Sotomayor Basilio, Borja. Universidad de Deusto. Departamento de Publicaciones. ed. Boole-Deusto entorno de diseño lógico (2004 edición). ISBN 84-7485-929-8. 
  6. Ginés Gómez, José Carlos. Gines Gómez, José Carlos. ed. Puertas lógicas y álgebra de Boole, electrónica digital técnica de telecomunicación (1998 edición). ISBN 84-607-9518-7. 
  7. Montes Lozano, Antoni. Editorial UOC, S.L.. ed. Álgebras de Boole (2002 edición). ISBN 84-8429-979-1. 
  8. Montes Lozano, Antoni. Editorial UOC, S.L.. ed. Álgebras de Boole (2002 edición). ISBN 84-8429-926-0. 
  9. González Carlomán, Antonio. Universidad de Oviedo. Servicio de Publicaciones. ed. Retículo completo de Boole. Lógica matemática teoría de conjuntos (2001 edición). ISBN 84-8317-264-X. 
  10. Tiñena Salvañà, Francesc. Editorial UOC, S.L.. ed. Àlgebres de Boole (gestió) (1998 edición). ISBN 84-8318-582-2. 
  11. Tiñena Salvañà, Francesc. Editorial UOC, S.L.. ed. Àlgebres de Boole (1998 edición). ISBN 84-8318-614-4. 
  12. Permingeat, Noel; Glaude, Denis. Editorial Vicens-Vives, S.A.. ed. Álgebra de Boole (1993 edición). ISBN 84-316-3294-1. 
  13. Masip Bruin, Xavier; Román Jiménez, José Antonio; Sánchez López, Sergio. Ediciones UPC, S.L.. ed. Álgebra de Boole y funciones lógicas (1996 edición). ISBN 84-89636-20-6. 
  14. Jane Ihnsa, Ignacio. Universidad de Barcelona. Publicaciones y Ediciones. ed. Álgebras de Boole y lógica (1989 edición). ISBN 84-7875-040-1. 
  15. Casanova, Gastón. Editorial Tecnos. ed. El álgebra de Boole (1975 edición). ISBN 84-309-0580-4. 
  16. Martínez Garza, Jaime; Olvera Rodríguez. Organización y arquitectura de computadoras (2000 edición). ISBN 968-444-417-6. 








Creative Commons License