robot de la enciclopedia para niños

Álgebra de Boole para niños

Enciclopedia para niños

En matemática, electrónica digital e informática, el álgebra de Boole, también llamada álgebra booleana, es una estructura algebraica que esquematiza las operaciones lógicas.

Conmutador 2 02 3.svg
Conmutador 2 08 3.svg

Historia

PSM V17 D740 George Boole.jpg

Se denomina así en honor a George Boole (1815-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 de 1847, The Mathematical Analysis of Logic, publicado 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 Thought o simplemente The Laws of Thought), 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 cómo funcionan los circuitos.
  • Al diseño, ya que teniendo una función se aplica dicha álgebra para poder desarrollar una implementación de la función.

Definición

Dado un conjunto  \mathfrak{B} en el que se han definido dos leyes de composición interna  \oplus , \odot . La estructura  (\mathfrak{B}, \oplus, \odot) es un álgebra de Boole si y solo si  (\mathfrak{B}, \oplus, \odot) es un Retículo distributivo, y complementario, esto es:

  •  \odot es distributiva respecto a  \oplus :

   a \odot (b \oplus c) =
   (a \odot b) \oplus (a \odot c)
  •  \oplus es distributiva respecto a  \odot

   a \oplus (b \odot c) =
   (a \oplus b) \odot (a \oplus c)

Basándose en esta definición se determina lo siguiente.

Principio

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

  • Una operación unaria interna, que llamaremos complemento:

   \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 necesarios

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


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

   \forall a \in \mathfrak{B}
   : \;
   a \oplus \varnothing = a

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

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

   \forall a \in \mathfrak{B}
   ; \;
   \exists \sim a \in \mathfrak{B}
   : \;
   a \oplus \sim a = U
  • 1b: La ley asociativa del producto:

   \forall a, b,c \in \mathfrak{B}
   : \;
   (a \odot b) \odot c = a \odot (b \odot c)
  • 2b: Existencia del elemento neutro para el producto:

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

   \forall a, b \in \mathfrak{B}
   : \;
   a \odot b = b \odot a
  • 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)
  • 5b: Existe elemento complementario para el producto:

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

Teoremas fundamentales

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


   \forall a \in \mathfrak{B}
   : \;
   a \oplus  a = a
  • 7a: Elemento absorbente para la suma:

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

   \forall a \in \mathfrak{B}
   : \;
   a \oplus \varnothing = a
  • 9a: Ley de Absorción para la suma

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

   \forall a \in \mathfrak{B}
   : \;
   a \odot  a = a
  • 7b: Elemento absorbente para el producto:

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

   \forall a \in \mathfrak{B}
   : \;
   a \odot U = a
  • 9b: Ley de Absorción para el producto

   \forall a,b \in \mathfrak{B}
   : \;
   a \odot (a \oplus b)= a
  • 10: Ley de involución:

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

   \sim U = \varnothing
   \; , \quad
   \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 Boole

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 \preceq 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.

Si se cumple que:


   a, b \in \mathfrak{B}
   \; : \quad
   a \preceq b \; \lor \; b \preceq a
   \quad \longrightarrow \quad
   a, b \rightarrow \mathit{comparables}

Para los valores a, b de  \mathfrak{B} , 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:


   a, b \in \mathfrak{B}
   \; : \quad
   a \npreceq b \; \land \; b \npreceq a
   \quad \longrightarrow \quad
   a, b \rightarrow \mathit{no \; comparables}

Para los valores a, b de  \mathfrak{B} , 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  U \; con  \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 Boole

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 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  \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 pérdida 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}{cc|c}
      a & b & a+b \\
      \hline
      1 & 1 & 1 \\
      1 & 0 & 1 \\
      0 & 1 & 1 \\
      0 & 0 & 0 \\
   \end{array}
   \quad \longleftrightarrow \quad
   \begin{array}{c|cc}
      0 & 1 & 0 \\
      1 & 1 & 1 \\
      \hline
      + & 1 & 0 \\
   \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}{cc|c}
      a & b & a \cdot b \\
      \hline
      1 & 1 & 1 \\
      1 & 0 & 0 \\
      0 & 1 & 0 \\
      0 & 0 & 0 \\
   \end{array}
   \quad \longleftrightarrow \quad
   \begin{array}{c|cc}
          0 & 0 & 0 \\
          1 & 1 & 0 \\
      \hline
      \cdot & 1 & 0 \\
   \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.

Axiomas

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 fundamentales

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: Elemento absorbente para la suma:

   \forall a \in \{0,1\}
   : \;
   a + 1 = 1
  • 7b: Elemento absorbente 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
  • 9a: Ley de Absorción para la suma

   \forall a,b \in \{0,1\}
   : \;
   a + (a \cdot b)= a
  • 9b: Ley de Absorción para el producto

   \forall a,b \in \{0,1\}
   : \;
   a \cdot (a + b)= a
  • 10: Ley de involución:

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

   \bar{1}= 0

   \bar{0} = 1
  • 12: 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 Boole

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 conjuntos

DosConjuntos100.svg

Dado cualquier conjunto U, se llama 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\{
   \{ \} ,\{a\},\{b\},\dots ,
   \{a,b\}, \{a,c\}, \dots ,
   \{a,b,c,d,e\}, \dots ,
   U
   \Big\}

El conjunto vacio es el que no tiene elementos y se representa:


   \{ \}
   \quad \equiv \quad
   \emptyset
   \quad \equiv \quad
   \varnothing

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 de A.

Definiendo el complemento de un conjunto así:


   B = A^C
   \longrightarrow \quad
   \forall x \in B
   : \quad
   x \in U \; \land \; 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 \; \lor \; 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 \; \land \; 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.

Axiomas

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 fundamentales

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: Elemento absorbente para la unión:

   \forall A \in \mathcal{P}(U)
   : \;
   A \cup U = U
  • 7b: Elemento absorbente 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
  • 9a: ley de Absorción para la unión:

   \forall A, B \in \mathcal{P}(U)
   : \;
   A \cup (A \cap B) = A
  • 9a: ley de Absorción para la intersección:

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

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

   {U}^C = \varnothing

   {\varnothing}^C = U
  • 12: 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 Boole

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 B \in \mathcal{P}(U)
   : \;
  \begin{array}{|l}
      B \cup U = U \\
      B \cap U = B \\
      {B}^C \cup U = U \\
      B \cap {U}^C = \varnothing
   \end{array}
   \longrightarrow \quad
   B \subseteq  U

Para todo B de las partes de U, si se cumple que: la unión de B y U es U, la intersección de B y U es B, la unión del complemento de B y U es U, la intersección de B y el complemento de U es el conjunto vacío, entonces B 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 A \in \mathcal{P}(U)
   : \;
  \begin{array}{|l}
      \varnothing \cup A = A \\
      \varnothing \cap A = \varnothing \\
      {\varnothing }^C \cup A = U \\
      \varnothing \cap {A}^C = \varnothing
   \end{array}
   \longrightarrow \quad
   \varnothing \subseteq A

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

Lógica proposicional

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.

Axiomas

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 a la 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 fundamentales

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: Elemento absorbente para la disyunción:

   \forall a \in \mathfrak{B}
   : \;
   a \lor V = V
  • 7b: Elemento absorbente 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
  • 9a: Ley de Absorción para la disyunción:

   \forall a, b \in \mathfrak{B}
   : \;
   a \lor (a \land b) = a
  • 9b: Ley de Absorción para la conjunción:

   \forall a, b \in \mathfrak{B}
   : \;
   a \land (a \lor b) = a
  • 10: Ley de involución:

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

   \lnot V = F

   \lnot F = V
  • 12: 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 Boole

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

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 se 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 del 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.

Podemos ver estas conectivas lógicas para: 0, 1 y 2 variables en un diagrama de Hasse:

Operaciones por el número de argumentos

Si vemos las distintas operaciones por su número de argumentos podemos distinguir:

Tautología Negación lógica Afirmación lógica Contradicción Tautología Contradicción Tautología Conjunción opuesta Implicación opuesta Implicación lógica Disyunción lógica Negación lógica Negación lógica Disyunción exclusiva Bicondicional Afirmación lógica Afirmación lógica Disyunción opuesta Adjunción lógica Adjunción opuesta Conjunción lógica ContradicciónConectivas lógicas.svg


Sin argumentos

Las operaciones lógicas sin argumentos son:

Operación nularia
Positiva Negativa
\top Tautología \bot Contradicción

Con un argumento

Las operaciones con solo un argumento son:

Operación unaria
Positiva Negativa
 a \, Afirmación lógica  \neg a Negación lógica

Con dos argumentos

Las operaciones que necesitan dos argumentos son:

Operación binaria
Positiva Negativa
 a\lor b Disyunción lógica  a\downarrow b Disyunción opuesta
 a\land b Conjunción lógica  a\uparrow b Conjunción opuesta
 a\to b Consecuencia lógica  a\not\rightarrow b Adjunción lógica
 a\leftarrow b Implicación opuesta  a\not\leftarrow b Adjunción opuesta
 a\leftrightarrow b Bicondicional  a\not\leftrightarrow b Disyunción exclusiva

Operaciones nularias

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


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

La operación identidad de una afirmación presenta el valor de la variable.


   \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 amplificador buffer.

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 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:



   \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 sería 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 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.

   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 Disyunción opuesta 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 Implicación lógica 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 verdadera 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 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 \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 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 \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 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 \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 formada

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 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:

  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én

Kids robot.svg En inglés: Boolean algebra Facts for Kids

kids search engine
Álgebra de Boole para Niños. Enciclopedia Kiddle.