Son muchísimos los científicos que han realizado extraordinarios aportes a la humanidad, pero, sin temor a equivocarse, se puede afirmar que ningún aporte a la ciencia o tecnología tiene, y tendrá, por mucho tiempo, tanta influencia en la vida de las personas, como la invención realizada por Shannon.
Con estos aportes ¿por qué tan pocos lo conocen?, ¿por qué no se lo ubica entre los científicos más destacados?
Contenido
Introducción
Tal como la rueda, el alfabeto, el papel, la imprenta, la máquina a vapor y muchos otros inventos, hoy la tecnología digital, también es uno de los desarrollos fundamentales de la historia de la humanidad. A partir de las primeras ideas asociadas a la operación de elementos eléctricos en forma digital, para facilitar el desarrollo de conmutadores telefónicos electromecánicos, control de motores en equipos industriales y otros circuitos diseñados para realizar operaciones automáticas, allá por la década delos 40, la tecnología digital ha evolucionado al punto que hoy día ha penetrado en todos los ámbitos de nuestra vida, transformando los hábitos de las personas, la forma de hacer negocios y la forma de los estados de hacer política.
Desde las primeras ideas consistentes en que cualquier circuito. en términos digitales, puede ser representado por un conjunto de ecuaciones, en que los términos de estas correspondan con elementos de circuitos de conmutación (interruptores), se han desarrollado máquinas y dispositivos electrónicos digitales tales como computadores, microprocesadores, teléfonos celulares, televisión, Internet, robots, y, en general todos los dispositivos digitales que hoy conocemos y que aún no, que son los medios mediante los cuales han cambiado y seguirán cambiando el comportamiento del ser humano contemporáneo.
Los primeros aportes
Este mundo digital, como otros grandes inventos que se han llevado a cabo en el transcurso del desarrollo de la humanidad, no es obra de una sola persona. Podemos decir que todo empezó allá por el año 1679 cuando Gottfried Wilhelm Leibniz[1] mostró su “numeración diádica”, (como la llamó en su tiempo), hoy conocido como sistema binario, con la cual mostró, que todo número podía de ser expresado mediante una serie formada por ceros y unos.
175 años más tarde, otro gran matemático George Boole, en 1854 publicó sus estudios sobre las teorías matemáticas de lógica y probabilidad. Boole redujo la lógica a un álgebra sencilla, naciendo así lo que hoy se conoce como álgebra Booleana. Esta forma de cálculo desarrollada por George Boole, es un sistema mediante el cual ciertos razonamientos lógicos pueden expresarse en términos matemáticos.
Los elementos del álgebra de Boole son un conjunto de proposiciones, es decir, de hechos expresados mediante oraciones del lenguaje natural. Dos ejemplos son:
$$P:\,Andres\,toma\,metro\,\,\,\,\,\,\,\,Q:Felipe\,Fuma$$
Tales proposiciones tienen como propiedad ser verdaderas o falsas. Al mismo tiempo, y prescindiendo de si son verdaderas o falsas, cada proposición tiene lo que se llama su proposición complementaria, que no es sino la negación de la misma: la negación de la proposición \(P\) (para los ejemplos anteriores \( \overline P \):Andrés no toma el metro; \( \overline Q \): Felipe no fuma ).
Los resultados de combinar estas proposiciones pueden obtenerse realizando operaciones matemáticas con los símbolos (\(P\) y \(Q\) ), que las representan. Las dos operaciones básicas son la conjunción ( \(y\)) y la disyunción ( \(o\)), denominadas conectivas lógicas y sirven para formar proposiciones compuestas, a partir de las proposiciones simples. Por ejemplo:
Si denominamos \(P\) a la aseveración: Andrés toma el metro y a \(Q\): Felipe Fuma, podemos escribir:
Las proposiciones complementarias (\(P\) y \(Q\) ) denotadas \( \overline P \) y \( \overline Q \) son:
Las reglas del álgebra de Boole se utilizan para determinar las consecuencias de las diversas combinaciones de estas proposiciones en función de si las proposiciones son verdaderas (V) o falsas (F), denominadas “valores de verdad”. Así, si ambas proposiciones son verdaderas, la proposición \(P\) y \(Q\) es también verdadera. Es decir, si la proposición (\(P\) : "Andrés toma el metro" es verdadera, y la proposición \(Q\) : "Felipe fuma" también es verdadera, entonces la combinación (\(P\) y \(Q\)) Andrés toma el metro y Felipe Fuma, también debe ser verdadera.
Considerando las cuatro combinaciones posibles \(P\), \(Q\), \( \overline P \),\( \overline Q \) de \(P\) y \(Q\) que son verdaderas, podemos escribir la siguiente tabla para la conectiva :
Podemos observar que la única aseveración compuesta verdadera es aquella en que ambas aseveraciones son verdaderas.
Análogamente para la conectiva \(o\) se tiene la siguiente tabla:
Los cimientos de la tecnología digital
Si bien es cierto, las contribuciones de Leibniz y Boole son dos importantes ingredientes del desarrollo de la tecnología digital, no son más que matemáticas que, sin un soporte de conocimientos de ingeniería y tecnología que las utilicen en aplicaciones del mundo físico, para resolver problemas de la realidad, seguirían ocultas en bibliotecas a la espera de ser utilizadas.
En el caso de la tecnología digital fue Claude Shannon el artífice de la tecnología digital, hoy llamado padre de la era de la información, quien tomó las ideas de Leibniz y Boole para idear y definir los elementos básicos que permitieron la creación de los cimientos de lo que hoy día conocemos como la Tecnología Digital.
Recordando, el aporte de Leibniz fue mostrar que los números pueden ser representados con solo dos dígitos 0 y 1. El aporte de Boole es el desarrollo de la lógica simbólica (o lógica matemática) que incorpora el uso de signos para generar un lenguaje universal, denominado lenguaje formal, que evita las confusiones y “malos entendidos” que pueden producirse en el lenguaje natural y cotidiano.
El aporte de Shannon consiste, en primer lugar, extender la idea de Leibniz a las letras del alfabeto, imágenes, sonidos, fotografías, etc. y en aplicar la lógica de Boole y convertirla en la herramienta matemática para modelar los circuitos de conmutación eléctrica, que luego aplicó a los conmutadores telefónicos y otros circuitos de conmutación, para realizar cómputos y decisiones lógicas, con elementos físicos operados con energía eléctrica. Un mundo variado e infinito codificado en dos estados (0 y 1), que haría posible que las máquinas procesaran, almacenaran y transmitieran la información. En resumen, hacer posible concretar ideas con los recursos disponibles.
En 1936, mientras Shannon trabajaba en el MIT, fue asignado a trabajar en el computador analógico “Differential Analyzer”, un computador mecánico desarrollado por Vannevar Bush, destinado a solucionar, numéricamente, ecuaciones diferenciales. Fue en esta instancia que se percató que el conjunto de Relays y Switches, combinados en circuitos, con los que se implementaba tal computador, llevaban a cabo operaciones semejantes a las de la lógica simbólica, observación nunca antes reconocida.
En 1937, inspirado en sus observaciones, escribe su tesis de Magister A Symbolic Analysis of Relay and Switching Circuits, en la que plantea las bases para el diseño formal de la actual Tecnología Digital. En él, Shannon mostró que se podía usar la lógica booleana para construir dispositivos capaces de realizar operaciones lógicas implementándolos mediante circuitos donde los interruptores encendidos representaban los '1' y los interruptores apagados, los '0'. Hoy por hoy, el potencial del mundo binario parece evidente: quien lo vio fue Claude Shannon.
Howard Gardner destacado Psicólogo y pedagogo estadounidense que formuló y desarrolló la teoría de las inteligencias múltiples, acerca de la tesis de Shannon escribió : "possibly the most important, and also the most noted, master's thesis of the century”. (posiblemente, la más importante y notable tesis de magister del siglo).
Definiciones fundamentales y postulados de la tecnología digital
Para realizar el análisis de circuitos utilizando lógica simbólica, Shannon debió plantear una forma de describir los elementos de circuito de manera tal, que operaran en dos estados. Con este propósito, realizó el siguiente planteamiento:
1) Los elementos de circuitos (relay y switches, llamados genéricamente elementos de conmutación), deben, en cualquier instante de tiempo, entre sus dos terminales estar, ya sea abiertos (impedancia infinita), o cerrados (impedancia cero). Esta es la definición de los dos estados:
Sea \(X\), variable función del tiempo, el nombre asignado a un elemento entre dos terminales \(a\) y \(b\)
2) El símbolo “0” (cero) será usado para representar el estado “cerrado” y el símbolo “1” (uno) para representar el estado abierto del elemento. Entonces cuando el circuito está abierto y cuando el circuito está cerrado . Definición de los símbolos.
3) Dos elementos de circuitos \(X\) e \(Y\) son iguales si \(X = 0\) cuando \(Y = 0\) y \(X = 1\) cuando \(Y = 1\).
4) Dos elementos \(X\) e \(Y\), están conectados en serie cuando sus terminales están conectados uno a continuación del otro Fig. 4. Definición de la primera operación
El signo “+” (mas) será utilizado para denotar dos elementos en serie:
5) Dos elementos \(X\) e \(Y\) están conectados en paralelo cuando sus terminales están conectados como se muestra en la Fig. 5. Definición de la segunda operación.
El signo "\( \bullet \)" (producto) será utilizado para denotar dos elementos en paralelo:
Es evidente que con la definición de los dos estados y las dos operaciones, cumplen los siguientes postulados:
El álgebra de Boole es una estructura matemática definida sobre un conjunto de elementos, dos operaciones binarias y ciertos postulados a partir de los cuales se demuestran un conjunto de teoremas. Mientras el conjunto de elementos y las operaciones definidas no estén asociados a elementos y operaciones con algún sentido físico, los resultados obtenidos con la aplicación de axiomas y teoremas definidos (o demostrados), permanecen en el mundo abstracto de las matemáticas. Por el contrario, si los elementos y operaciones están asociados al mundo físico, los resultados de aplicar el álgebra de Boole resultan, directamente en, por ejemplo, menores costos de implementación de los dispositivos físicos asociados.
Las operaciones "\(+\)" y "\( \bullet \)" (relacionados con los elementos físicos relays y switches, nombrados \(X\) e \(Y\) definidas en los postulados anteriores, junto con la definición de la existencia del elemento complemento \( \overline X\) del elemento \(X\), definido anteriormente (un elemento debe estar en uno de dos estados, no existe un tercero), son un álgebra de Boole y por lo tanto se puede utilizar con ellos, todos los teoremas de esta álgebra. No es objetivo de este documento hacer tales demostraciones, definido anteriormente (un elemento debe estar en uno de dos estados, no existe un tercero), son un álgebra de Boole y por lo tanto se puede utilizar con ellos, todos los teoremas de esta álgebra. No es objetivo de este documento hacer tales demostraciones.
La Fig. 6. Muestra dos ejemplos de circuitos con sus respectivas expresiones booleanas asociadas.
Se puede observar en el ejemplo de la izquierda que los switches \(X\) e \(Y\) están en paralelo por lo que su expresión booleana es \(X \bullet Y\) estos están, a su vez, en serie con el switch \(Z\) por lo la representación booleana del conjunto es: \(X \bullet Y + Z\)
Otro ejemplo de aplicación de esta herramienta matemática es que, con el uso de teoremas, el circuito de la derecha de la figura anterior, el de cinco interruptores, se puede reducir a uno equivalente pero, con menor cantidad de interruptores, es decir, hace lo mismo, pero con menos interruptores.
A partir de la expresión booleana \(X \bullet Y \bullet Z + X \bullet Z\). Utilizando propiedades y teoremas (tópicos asociados a un curso de “Sistemas Digitales”), se puede llegar a que esta expresión es igual a \(X \bullet Z\), o sea dos interruptores en paralelo. Evidentemente que, si quisiéramos controlar el encendido de una ampolleta con la lógica de estos interruptores, el costo de hacerlo con el circuito con menos interruptores es mucho menor.
Normalmente los problemas a resolver, se plantean en el lenguaje cotidiano, luego se llevan a una expresión lógica (una expresión booleana), la expresión resultante, raramente es la óptima, es decir la de menor costo, luego se aplican los teoremas del algebra de Boole a dicha expresión resultante, llevándola a su expresión mínima y por lo tanto de menor costo para luego ser implementada físicamente. Este proceso es el que hoy día se denomina “Diseño de sistemas digitales” con elementos discretos. Para el proceso completo existen métodos y técnicas que facilitan el diseño.
En el diseño de los circuitos digitales discretos de la actualidad, ya no se utilizan interruptores como los descritos (salvo en algunos sistemas de control), dado que la electrónica digital ha avanzado considerablemente desde los tiempos de Shannon, habiéndose diseñado elementos de conmutación mucho más adecuados que los interruptores. Sin embargo el método de diseño, todo lo señalado anteriormente, permanece incólume, no cambia en absoluto. Lo que cambia son los elementos que se utilizan para implementar los circuitos, de manera análoga a como evolucionaron los amplificadores de audio a tubos al vacío y los de a transistores.
Los elementos que se utilizan hoy día son las “compuertas electrónicas”, diseñadas especialmente para realizar operaciones lógicas.
Compuertas electrónicas básicas
La gran mayoría de los dispositivos digitales actuales (por no decir todos, calculadoras, computadores, teléfonos celulares, etc.), son construidos con elementos de conmutación electrónicos cuyos elementos básicos son las "compuertas electrónicas", cuya característica de operación es que que reciben voltajes como entradas y producen voltajes de salida.
Una compuerta, es un circuito que realiza una operación lógica básica. Un dispositivo de dos estados capaz de conmutar de un estado que permite el flujo de información, a otro estado, el cual la bloquea y viceversa, en forma equivalente a como lo hace un interruptor, característica que les da el nombre genérico de dispositivos de conmutación. Estos elementos implementan las tres operaciones fundamentales definidas por Shannon "\( + \,,\,\, \bullet \)" y complemento (o negación), siendo denominadas compuertas “AND”, “OR” y “NOT”.
Generalmente, la operación lógica de una compuerta, se expresa mediante una tabla de verdad, en la que se enumeran todas las combinaciones de entradas posibles, con las correspondientes salidas. En los interruptores, los dos estados definidos eran “abierto” y “cerrado”, en las compuertas es “bajo” (Low) y “alto) (High) señalando, si la entrada tiene aplicado un voltaje alto “H” o bajo “L”.
Compuerta AND
La Fig. 7 muestra tanto el símbolo lógico como la tabla de verdad que describe el comportamiento de la compuerta AND. En ella se muestra que si las entradas son \(A = L\,\,y\,\,B = L\) (a ambas entradas tiene un voltaje aplicado de nivel bajo, como se indica en la primera línea de la tabla) entonces \(S = L\), es decir, la salida también es un voltaje bajo, de la misma forma: \(A = L\,\,y\,\,B = H\) (segunda línea de la tabla), entonces \(S = L\). En forma equivalente que para los interruptores en serie, la salida es alta (H) solo si ambas entradas son altas (H) con lo cual su expresión lógica es: \(S = A \bullet B = AB\).
Compuerta OR
Como se puede intuir, la compuerta OR es el símil de los interruptores en paralelo, esto es, la salida alta se dará para todos las combinaciones de entrada en que, al menos una de ellas, sea alta. O, dicho de forma alternativa, la salida \(S \) será baja, solo cuando ambas entradas son bajas. El símbolo lógico y la tabla de verdad asociada se muestran en la Fig. 8
Compuerta NOT
La compuerta NOT es el complemento definido por Shannon. En compuertas lógicas se le denomina negación.
Las razones principales por la que los sistemas digitales actuales son construidos con compuertas electrónicas son: su velocidad de operación, facilidad de construcción, pequeño tamaño y bajo costo.
Ejemplo de aplicación
Un ejemplo práctico de aplicación de los planteamientos dados, es el diseño de los interruptores de una escala. El planteamiento de este problema es conocido por todos y consiste en que un ampolleta se pueda operar con dos interruptores uno en la parte de debajo de la escala y otro en la parte de arriba, de tal forma que si se encuentra apagada se pueda encender cualquiera de los interruptores; si está encendida se apague operando cualquiera de los dos interruptores.
El método de diseño, consiste como, se señaló antes en llevar este planteamiento lógico a una forma que se pueda trabajar con álgebra de Boole, esta forma es una “tabla de verdad”.
Llamando \(A\) al interruptor de abajo, y \(B\) a de arriba y sea \(L\) el estado de apagado y \(H\) encendido, tenemos que las entradas (variables) son dos y entonces las combinaciones posibles son cuatro. La tabla siguiente lo ilustra.
El método de diseño para circuitos digitales, permite determinar la expresión lógica a partir de esta tabla de verdad, siendo esta:
$$S = \bar AB + A\bar B$$
Y el circuito con compuertas lógicas es:
Los conocimientos necesarios para comprender como llegar desde el planteamiento lógico a la implementación mostrada en este ejemplo, se obtienen en un curso de sistemas digitales.
Referencias.
- Explication de l'Arithmétique Binaire Gottfried Leibniz
- Digital Systems Principles asnd Applications. Neal Widmer.
- A Symbolic Analysis of Relay and Switching Circuits. Claude Shannon