Hormiga feliz
Algo de Lógica
Página... 1 2 3 4 5 6 7 8 9 10
  11 12 13 14 15 16 17 18 19 20

 
Hablemos un poco de lógica; aquí sólo resumiremos las ideas, porque ya se vieron en clases. Primero que nada, recordemos que aquí al hablar de lógica nos referimos a una lógica formal, exacta, en que las cosas o son falsas o son verdaderas, y no hay términos intermedios. Una expresión puede ser falsa o verdadera, y combinándolas de distintas maneras obtenemos expresiones que a su vez pueden ser falsas o verdaderas. Escribiremos "V" para verdadero, "F" para falso.

Cada expresión, entonces, tiene un "valor de verdad", que es V o F. La expresión "el sol es azul" vale F, la expresión "la U es campeón" es V, etcétera. Y estas se combinan de acuerdo a la lógica: si yo niego algo, su valor cambiar. Por ejemplo, "la U no es campeón" valdrá F, y "el sol no es azul" valdrá V. En general, si una expresión X vale V, su negación vale F, y si la expresión vale F, su negación vale V. La negación de X la escribimos "~X", y podemos resumir lo recién dicho con esta tabla:

X~X
VF
FV
Hay operaciones que involucran más de una expresión. Por ejemplo, el "o". Si yo digo que "X o Y" es cierto, lo que estoy diciendo es que al menos una de ellas es cierta. Como cuando uno le dice a alguien "ok, yo te llamo, o te mando un mail". Ahí uno está afirmando que al menos una de las dos cosas va a ser cierta (no se excluye que puedan ser ciertas las dos). O sea que el resultado de "X o Y" será falso únicamente cuando X sea falso y Y también sea falso. Lo resumimos en la tabla siguiente.
XYX o Y
VVV
VFV
FVV
FFF
Otras operaciones importantes son el "y", en que uno dice que ambas partes tienen que ser ciertas, y el "o exclusivo", que dice que una, y solamente una de las partes es cierta. Las tablas correspondientes son
XYX y Y
VVV
VFF
FVF
FFF
     
XYX o Y (exclusivo)
VVF
VFV
FVV
FFF
Bueno. ¿Y para qué sirve todo esto? Pues para hartas cosas. Por un lado, es la forma de analizar la lógica de las afirmaciones, y la lógica de los razonamientos exactos. Y por otro lado, es la forma en que opera el computador. El computador sólo entiende ceros y unos, y los entiende como "falso" y "verdadero", respectivamente. Y todas sus operaciones las hace en base a "puertas lógicas", en que las señales que entran al circuito son ceros o unos, y lo que sale del circuito es el resultado de alguna de las operaciones.

Como ejemplo, uno puede sumar un par de números. En binario (el lenguaje de ceros y unos que entiende el computador), los números 0, 1, 2, 3, etc, se escriben 0, 1, 10, 11, etc... Es como si tomaramos nuestros números normales, y quitáramos todos los que incluyen algo distinto del 0 y el 1. Al sumar, entonces, tenemos 0+0=0, 0+1=1, 1+0=1, 1+1=10. Como un cero a la izquierda no afecta, esto se puede escribir

0 + 0 = 00
0 + 1 = 01
1 + 0 = 01
1 + 1 = 10
Si separamos el primer dígito y el segundo dígito del resultado, vemos que el primer dígito es 1 cuando los dos sumandos son 1, y es 0 en caso contrario. El segundo dígito es 1 cuando uno de los sumandos es 1 y el otro es 0. En otras palabras: el primero dígito corresponde a hacerle un "y" lógico a los sumandos, y el segundo corresponde a hacerles un "o exclusivo". Así que si el computador sabe hacer operaciones lógicas, entonces también puede sumar.

Lo que uno hace, al estudiar sistemas complejas, es tratar de construir en ellos circuitos lógicos. Si uno logra construir circuitos lógicos, entonces significa que -en principio- es posible construir ahí un computador: en otras palabras: se puede calcular cualquier cosa.

La idea es hacer circuitos como los de la izquierda, en que por un lado estén las expresiones que uno quiere evaluar, y por el otro salga el resultado. Si la puerta es un "y", y entran un falso y un verdadero, tiene que salir un falso. Etcétera.

Recuerden: siempre se hace la equivalencia 0=FALSO, 1=VERDADERO. Es arbitrario (podría haberse escogido al revés), pero es esto lo que se escogió. El computador dice "¿hay golpecito de corriente?", y si la respuesta es sí, interpreta un 1, y si es no, interpreta un 0.