Álgebra de Boole

George Boole (1815 - 1864) desarrolló una herramienta matemática para solucionar problemas en función de dos únicos estados, el estado SI y el estado NO. Posteriormente se utilizaría para el estudio de los primeros computadores, George Booleen los que se pudo comprobar que para realizar grandes y complejos cómputos era mas factible usar la electrónica digital en vez de la analógica. Hoy lo seguimos utilizando prácticamente para todo. Puede parecer superfluo o poco relevante, pero en realidad se trata de la la base fundamental para entender las exigencias computacionales del procesamiento digital de la información, vamos ¡casi nada!

La aplicación del álgebra de Boole en computadores es del tipo binario, lo que quiere decir que el estado de un elemento del circuito lógico viene representado por una variable que puede valer "1" o "0". Un ejemplo que se utiliza siempre en sistemas digitales es un interruptor y como base una carga, de modo que si el interruptor está abierto hay tensión y si está cerrado no. Es decir, SI/NO, 1/0, verdadero/falso.

Por poner un ejemplo práctico, podremos decir "0" cuando una lámpara está apagada y "1" cuando está encendida.

Hoy en día tenemos sistemas de computadoras muy complicados en los que por muy complejos que estos sean al final internamente tienen un montón de dispositivos que o están abiertos o están cerrados. Lo complicado es que son muchos, y como son muchos pues nos veremos obligados a realizar funciones matemáticas con todos esos dispositivos para hacer funcionar un sistema digital.

En matemáticas, una función no es otra cosa mas que una representación de una serie de variables de entrada relacionadas ente si con las operaciones aritméticas correspondientes, de forma que el resultado de esa combinación nos va a dar un resultado de salida.

En el álgebra de Boole es exactamente igual, solo que el resultado de salida va a ser siempre un "0" o un "1". Por ejemplo, una función de tres variables de entrada se podría representar de la siguiente manera:

 F(a, b, c) = abc+ab\overline{c}+\overline{a}bc

Para poder facilitar el cálculo de los valores de salida utilizaremos una "tabla de la verdad". Se trata de una tabla que recoge todas las combinaciones de las variables de entrada y los valores que toman las salidas, por ejemplo, para la función de tres variables del ejemplo la tabla de verdad sería:

a b c F
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1

En este caso desconocemos cuál es la función F, pero si sabemos que salidas tiene. De momento eso no es importante, solo es un ejemplo. Ahora bien, la salida de F para cada caso dependerá de la función.

A continuación se detallan algunos ejemplos de operaciones que se podrán realizar en el álgebra de Boole con puertas lógicas.

OPERACIONES EN EL ÁLGEBRA DE BOOLE

  1. Unión o adición: F = A + B
    Es la suma de las variables, en lógica equivalente a la función OR.OR BooleEn un circuito con interruptores podríamos representar esta operación de la siguiente forma (interruptores en paralelo):
    Unión o adiciónEn este caso, para que la salida sea 1 y se encienda la bombilla bastaría con que uno de los dos (o los dos) interruptores A o B valgan 1. Por lo tanto, su tabla de verdad sería:
    A B F
    0 0 0
    0 1 1
    1 0 1
    1 1 1
  2. Intersección o producto: F = a \cdot b
    Es el producto de las variables, en lógica equivalente a la función AND.AND BooleEn un circuito con interruptores podríamos representar esta operación de la siguiente forma (interruptores en serie):
    Intersección o productoEn este caso, para que la salida sea 1 y se encienda la bombilla bastaría con que los dos interruptores A y B valgan 1. Por lo tanto, su tabla de verdad sería:
    A B F
    0 0 0
    0 1 0
    1 0 0
    1 1 1
  3. Complementación o inversión: F = \overline{a}
    Esta operación es simplemente la inversión del valor de la variable a la que se le aplique, por ejemplo A = \overline{A} o \overline{B} = B.

Tabla de verdad completa con todas las operaciones:

A B F=A+B F=A \cdot B F=\overline{A} F=\overline{B}
0 0 0 0 1 1
0 1 1 1 1 0
1 0 1 0 0 1
1 1 1 1 0 0

Leyes fundamentales

A continuación unas leyes muy básicas y fáciles de recordar que nos van a servir principalmente para simplificar y de este modo para hacer circuitos más reducidos, por lo tanto más eficaces:

a + \overline{a} = 1
a \cdot \overline{a} = 0
0 + a = a
1 \cdot a = a
1 + a = 1
0 \cdot a = 0
a + a = a
a \cdot a = a
\overline{\overline{a}} = a

Conmutativa: a + b = b + a \rightarrow a \cdot b = b \cdot a
Asociativa: a + b + c = (a + b) + c = a + (b + c) \rightarrow a \cdot b \cdot c = (a \cdot b) \cdot c = a \cdot (b \cdot c)
Distributiva: a + bc = (a+b)(a+c) \rightarrow a(b+c) = ab + ac
Absorción: a + ab = a(1 + b) = a \rightarrow a(a + b) = aa + ab = a
Morgan: \overline{a + b} = \overline{a} \cdot \overline{b} \rightarrow \overline{a \cdot b} = \overline{a} + \overline{b}
Teorema de Shannon: F=f(a,b,c) = a \cdot f(1,b,c)+\overline{a} \cdot f(0,b,c)
F=bc \Rightarrow F=abc+\overline{a}bc

Composición de circuitos

Podemos crear un circuito a partir de una función y también al revés, por ejemplo, el circuito resultante de la siguiente función sería:

S=a\overline{c}+bc+\overline{a}c
Circuito ejemplo Boole

En los próximos artículos veremos la obtención de las diferentes funciones canónicas a partir de una tabla de la verdad como las que ya hemos visto aquí y también la simplificación mediante mapas de Karnaugh.

3 opiniones en “Álgebra de Boole”

  1. I need to to thank you for this wonderful read!!
    I certainly enjoyed every bit of it. I have got you saved as a favorite to check out new things you post…

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.