11
1 Fundamentos de lógica digital. Sesión 04. Álgebra booleana Algebra de Boole. (Sistemas digitales). Se oye, a menudo, decir que el Álgebra de Boole y las computadoras están relacionadas. Pero no se oye tanto una explicación acerca de esa relación. La Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación. De forma más precisa, las proposiciones son aquellas oraciones para las cuales tiene sentido preguntarse si son verdaderas o falsas. Por ejemplo, Ayer llovió en el DF. Hoy es martes. 2 + 2 = 5. Un primer punto a destacar es que hay frases u oraciones que no son del tipo anterior, por ejemplo: ¿Qué día es hoy? ¡Oh, que bella música! no son proposiciones; ya que no puedo decir si son verdaderas o falsas. La algebrización de la lógica comienza estableciendo que representaremos las proposiciones, al igual que los números en álgebra, por letras; digamos p, q, r. Supondremos que cada proposición puede ser verdadera o falsa (pero no ambas). Representaremos esas situaciones, asignando el valor 1 a una proposición verdadera (p = 1) y el valor 0 a una proposición falsa. Así, como hay operaciones en el álgebra usual, hay “operaciones” en Lógica, a las que llamamos conectivas. Usando conectivas construiremos nuevas proposiciones a partir de dos proposiciones dadas. Los conectivos usuales son “o”, “y”, “si . . . entonces”. Consideremos el conectivo “y”, llamado técnicamente la conjunción. Si tenemos dos proposiciones, digamos p = “hoy es jueves”, q = “hoy está lloviendo”, entonces la proposición p y q nos dice que “hoy es jueves y (hoy) está lloviendo”. Las conjunciones se consideran verdaderas, cuando sus dos componentes lo son. En el ejemplo, p y q será verdadera cuando, y sólo cuando, se cumpla que es jueves y esté lloviendo. Este convenio se presenta en la siguiente tabla.

La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

1

Fundamentos de lógica digital. Sesión 04. Álgebra booleana

Algebra de Boole. (Sistemas digitales).

Se oye, a menudo, decir que el Álgebra de Boole y las computadoras están relacionadas.

Pero no se oye tanto una explicación acerca de esa relación.

La Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones

verbales o escritas que aseveran o niegan un hecho o relación. De forma más precisa, las

proposiciones son aquellas oraciones para las cuales tiene sentido preguntarse si son

verdaderas o falsas. Por ejemplo,

Ayer llovió en el DF.

Hoy es martes.

2 + 2 = 5.

Un primer punto a destacar es que hay frases u oraciones que no son del tipo anterior,

por ejemplo:

¿Qué día es hoy?

¡Oh, que bella música!

no son proposiciones; ya que no puedo decir si son verdaderas o falsas. La algebrización

de la lógica comienza estableciendo que representaremos las proposiciones, al igual que

los números en álgebra, por letras; digamos p, q, r. Supondremos que cada proposición

puede ser verdadera o falsa (pero no ambas). Representaremos esas situaciones,

asignando el valor 1 a una proposición verdadera (p = 1) y el valor 0 a una proposición

falsa.

Así, como hay operaciones en el álgebra usual, hay “operaciones” en Lógica, a las que

llamamos conectivas. Usando conectivas construiremos nuevas proposiciones a partir

de dos proposiciones dadas. Los conectivos usuales son “o”, “y”, “si . . . entonces”.

Consideremos el conectivo “y”, llamado técnicamente la conjunción. Si tenemos dos

proposiciones, digamos p = “hoy es jueves”, q = “hoy está lloviendo”, entonces la

proposición p y q nos dice que “hoy es jueves y (hoy) está lloviendo”. Las conjunciones

se consideran verdaderas, cuando sus dos componentes lo son. En el ejemplo, p y q será

verdadera cuando, y sólo cuando, se cumpla que es jueves y esté lloviendo. Este

convenio se presenta en la siguiente tabla.

Page 2: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

2

El uso de AND para este conectivo es tradicional en la electrónica digital. A

continuación, presentaremos las tablas de otros conectivos:

En esa tabla, OR y XOR denotan las dos modalidades lógicas correspondientes al “o”

de nuestro idioma. OR es la modalidad incluyente: uno o el otro o ambos; mientras que

XOR es la modalidad excluyente: uno o el otro, pero no ambos.

Finalmente, es importante para nuestros efectos considerar el conectivo asociado a la

negación. Donde por negación de una proposición queremos decir la proposición cuyo

valor es precisamente el opuesto al valor de la proposición original.

las siguientes expresiones deben tomarse como completamente equivalentes:

_ A = A' ____ A + B = (A + B)' ____ A • B = (A • B)' _ ā = (a')'

Hemos definido el conjunto A = {1,0} como el conjunto universal sobre el que se aplica

el álgebra de Boole, sobre estos elementos se definen varias operaciones, veamos las

más fundamentales

La suma booleana y el operador OR

La operación suma (+) asigna a cada par de valores a, b de A un valor c de A:

Si uno de los valores de a o b es 1, el resultado será 1, es necesario que los dos

sumandos sean 0, para que el resultado sea 0.

a b a + b

0 0 0

0 1 1

1 0 1

1 1 1

Page 3: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

3

El producto booleano y el operador AND

La operación producto ( ) asigna a cada par de valores a, b de A un valor c de A:

Operación negación

La operación negación presenta el opuesto del valor de a:

Operaciones combinadas

Partiendo de estas tres operaciones elementales se pueden realizar

otras más complejas, que podemos representar como ecuaciones

booleanas, por ejemplo:

En este caso primero se hizo la negación de a para después realizar la

operación booleana OR con b

Reglas de precedencia

Son reglas que definen el orden en el que se tienen que interpretar las relaciones lógicas

dentro de una expresión en la que aparecen varias conectivas. Ante una posible duda en

la interpretación, las conectivas de mayor precedencia son las que se aplican primero. el

orden de precedencia de las conectivas lógicas es el siguiente

Orden de precedencia Conectiva

Mayor

menor

no

y

o

a b a b

0 0 0

0 1 0

1 0 0

1 1 1

a

0 1

1 0

a b

0 0 1 1

0 1 1 1

1 0 0 0

1 1 0 1

Page 4: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

4

Así por ejemplo, en la expresión "p o q y no r", primero se evalúa no r, luego q y el

resultado de no r, y luego p o el resultado de la evaluación anterior. lo que no sería

correcto es evaluar primero p o q, y luego el resultado evaluarlo con y no r

El empleo del paréntesis permite aclarar o alterar los órdenes de precedencia, haciendo

que se evalúen en primer lugar los términos entre paréntesis

Las reglas de precedencia en la lógica funcionan igual que en el cálculo aritmético con

las operaciones suma, multiplicación, etc.

Considere la siguiente expresión como ejemplo de las reglas de precedencia:

“Tienes 10 o tienes 5 y no apruebas”

Si usamos la forma incorrecta mencionada arriba:

“Tienes 10 o tienes 5 y no apruebas”

Esto implicaría que en ningún caso podrías aprobar

Sin embargo,

“[Tienes 10] o tienes 5 y [no apruebas]”

Nos da el resultado que todos esperamos

El Álgebra de Boole

Boole se dio cuenta que podía asociar operaciones algebraicas a las conectivas y se

cumplen la totalidad de las propiedades algebraicas importantes. A saber,

Conmutatividad: x + y = y + x

Asociatividad: xy = yx x+(y+z) = (x+y)+z x(yz)=(xy)z

Distributividad: x(y + z) = xy + xz

Neutros: x + 0 = x x1 = x

Page 5: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

5

Como la Lógica no es lo mismo que la aritmética, Boole buscó propiedades que las

distinguieran. Esta propiedad es el postulado booleano:

x·x=x

¿Qué conclusiones podremos sacar de esta propiedad adicional?

1. Nótese que xx = x implica que si a x le damos el valor de 2, entonces, 4=2∗2=2, de

donde restando, 2 en ambos lados; obtendremos que 2 = 0.

Por lo tanto, 3 = 2 + 1 = 0 + 1 = 1, 4 = 2 = 0, 5 = 4 + 1 = 0 + 1 = 1, etc. Todos los

números se reducen a 0 o 1.

2. Comox2 = x, x3 = x2x = xx = x, x4 = x3x = xx = x, etc. O sea, todas las potencias

naturales de x son iguales a x.

3. Finalmente, como x + x = 2x = 0, concluimos que x = −x.

De la relación 1 + 1 = 2 = 0, concluimos que el ⊕ representa al XOR. Sin embargo, esto

no quiere decir que no podamos representar algebraicamente al OR. Ya que esto lo

haremos con la ayuda de la siguiente definición.

x + y := x + y + xy,

(uno o el otro o ambos) La negación de x puede representarse como x′ = 1 + x.

Esto es: si x = 0, x´ = 1+ 0 =1 ó si x = 1, x´ = 1+1 = 2 = 0

Podemos resumir la discusión anterior en la siguiente definición.

Definición. El Álgebra de Boole consiste de un conjunto {0, 1}, junto con las

operaciones de suma, resta y multiplicación, donde además de las propiedades usuales,

se cumple que: xx = x

Aplicaciones del Álgebra de Boole a la Lógica

El Álgebra de Boole puede aplicarse a la determinación de proposiciones válidas o

tautologías. Una proposición es una tautología cuando independiente del valor de sus

partes, su valor siempre es verdadero.

Ejemplo El principio del tercero excluido, afirma que algo es o no es (y que no hay, por

lo tanto, otras posibilidades). Simbólicamente, tenemos que estamos afirmando p OR p′.

P OR p′ = p+p′+pp′

= p+1+p+p(1+p)

= p+1+p+p+pp

= 1+p+p+p+p

= 1+4p

=1 un resultado de 1 significa que la proposición es verdadera.

Page 6: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

6

Los Circuitos Lógicos

Históricamente, los interruptores se construyeron usando electroimanes (relays); para

posteriormente pasar a construirse mediante válvulas electrónicas; continuando con

transistores y finalmente mediante circuitos integrados (llamados fichas o chips). En

tiendas especializadas tales como RADIO SHACK es posible comprar ANDs, ORs, y

NOTs, bajo el nombre de compuertas (en inglés, “gates”) lógicas.

La realización de funciones booleanas

Una función booleana es cualquier expresión válida en el Álgebra de Boole. Por

ejemplo, f(x, y, z) = x′y + z g(x, y) = x′⊕ y.

Una función tal como la última g se implementa de la manera mostrada en la figura 2.

Figura 2: Implementación de g(x, y) = x′⊕ y

Se conecta a la entrada la negación de x y y en la caja se realiza la operación XOR

En tales representaciones, las cajitas cuadradas representan la conectiva cuya operación

está indicada. Las líneas que conectan las cajas son los alambres de las conexiones. El

círculo a la entrada o salida de una caja indica que la señal correspondiente está negada.

El análisis de circuitos

El análisis de un circuito consiste en determinar la función realizada por dicho circuito.

Por ejemplo, consideremos el circuito ilustrado en la figura 3. Mirando a las entradas y

rastreando las señales, podremos determinar la función booleana que se realiza. En el

ejemplo, el circuito realiza la función f(x,y)=xy′⊕x′y.

Figura 3

En la figura se observa que en la primera compuerta que es una AND entran x´ y y por

lo tanto, su salida es xy´. En la segunda compuerta que también es una AND entran x y

y´ por lo tanto su salida es x′y. Esas dos señales de entran a una tercera compuerta XOR

donde se hace la operación correspondiente quedando xy′⊕x′y

Page 7: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

7

La síntesis de circuitos

Llamamos síntesis al problema opuesto al del análisis. Aquí, se trata de determinar el

circuito que realizará una función dada previamente. Usualmente esa función se

presentará por su tabla de valores.

Suponer que queremos construir un circuito para realizar la función dada en la tabla

siguiente:

Al examinar la tabla, nos damos cuenta que no se trata de una de las funciones básicas.

Trataremos, por lo tanto, primeramente, de expresar esa función en términos de nuestras

expresiones básicas. Observando que la tabla contiene un único 1, nos recordamos de la

tabla del AND. Ahora bien, un AND tiene un 1 solamente cuando ambos componentes

son iguales a 1. En nuestro caso, esto lo podemos obtener negando x (para obtener un 1

en la primera columna y multiplicando por y. Verifiquemos: x′y será 1 cuando, y sólo

cuando, x′ = 1, y = 1. O sea, cuando y sólo cuando, x = 0, y = 1. El circuito ilustrado en

la figura 4 muestra una implantación de lo anterior.

Figura 4: Realización de f(x,y) = x′y

Ejemplo 2.

La construcción del correspondiente circuito lo dejaremos como ejercicio.

x y f(x,y)

0 0 0

0 1 1

1 0 0

1 1 0

x y g(x,y)

0 0 0

0 1 0

1 0 1

1 1 0

Page 8: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

8

Ejemplo 3.

En este caso, tenemos dos 1 en la tabla de valores de la función. Las funciones para

cada uno de esos 1 aislados, se hallaron en los ejemplos anteriores. Observando que esta

función h tienen un 1, donde lo tiene la función f o la función g, concluimos que h = f

OR g = x′y ⊕ xy′. El circuito correspondiente apareció en la figura 3.

Tenemos así, un método para asociar a cada tabla una función booleana. Tales

expresiones se convierten entonces en circuitos.

El procedimiento es el siguiente:

1. Asignar, por cada 1 de la tabla de valores, un monomio formado por el producto

de todas las variables o sus negaciones. Se usará la variable cuando en la

columna correspondiente aparezca un 1; en caso contrario, usaremos su

negación.

x y z u v f(x,y,z,u,v)

1 0 1 1 0 1

nos producirá el monomio xy′zuv′.

2. La expresión final se obtiene sumando todos los monomios anteriores.

En tales expresiones, cada suma, multiplicación o negación representa una ficha. La

simplificación algebraica de las expresiones es, entonces, una simplificación de la

construcción; lo que producirá un abaratamiento de los costos.

En la siguiente sesión se verá un método más simple para obtenerlas expresiones

correspondientes a la salida de un circuito.

Sumador de un Bit

El primer sumador que diseñaremos nos permitirá sumar dos números binarios de un

dígito cada uno. Usualmente, llamamos BIT a un dígito binario; por lo tanto, lo que

queremos diseñar es una sumadora de un BIT.

x y h(x,y)

0 0 0

0 1 1

1 0 1

1 1 0

Page 9: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

9

En este contexto, las combinaciones elementales están dadas por:

0 0 1 1

+0 +1 +0 +1

0 1 1 10

El resultado de 1 + 1, requiere dos dígitos para ser expresado. Por lo tanto, nuestro

sumador, para ser completo, deberá tener dos señales de entrada (una para cada dígito) y

dos señales de salida. Reescribiendo las sumas con dos dígitos de salida, tendremos que:

0 0 1 1

+0 +1 +0 +1

00 01 01 10

Llamamos al dígito de la izquierda de la suma, “acarreo” (en inglés, “carry”) y al otro,

“resultado”. Con esta notación, nuestra máquina sumadora luce esquemáticamente

como en la figura 5.

Figura 5: Esquema de una sumadora donde x e y son las entradas de

los sumandos

Construyamos la tabla de valores para las señales de salida deseadas:

x y Acarreo resultado

0 0 0 0

0 1 0 1

1 0 0 1

1 1 1 0

Observando las tablas, vemos que para el acarreo se cumple que c =xy lo que puede ser

producido por una AND. Para el resultado, r, tenemos que r = x′y ⊕ x′y = xXORy.

Ejemplos: ¿Cuál es la salida de los siguientes componentes y circuitos en términos del

álgebra Booleana?

Page 10: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

10

(1) Para el bloque AND con cuatro terminales de entrada, extendemos la definición

Booleana del bloque AND de dos terminales de entrada en el cual la salida de un AND

que tenga dos entradas A y B estará dada por el producto Booleano de dichas variables

de entrada, o sea AB. Del mismo modo, la salida de un AND que tenga cuatro entradas

A, B, C y D estará dada también por el producto Booleano de dichas variables de

entrada: la salida del AND será entonces ABCD.

(2) Para el bloque OR con cuatro terminales de entrada, extendemos la definición

Booleana del bloque OR de dos terminales de entrada en el cual la salida de un OR que

tenga dos entradas A y B estará dada por la suma Booleana de dichas variables de

entrada, o sea A+B. Del mismo modo, la salida de un OR que tenga cuatro entradas A,

B, C y D estará dada también por la suma Booleana de dichas variables de entrada. La

salida del AND será entonces A+B+C+D.

(3) Analizando el diagrama del circuito, vemos que la salida del AND superior será

igual al producto de las variables de entrada A y B, o sea AB, mientras que la salida del

AND inferior será igual al producto de las variables de entra C y D, o sea CD. Como

estas salidas son alimentadas a un OR en donde son sumadas, la salida del OR será

entonces AB+CD.

(4) Analizando el diagrama, tenemos una situación parecida al circuito anterior, excepto

que la salida de cada AND es invertida antes de ser introducida al OR. Esto quiere decir

que, del primer AND, el OR recibirá como entrada A·B, mientras que del segundo AND

el OR recibirá como entrada C·D. Estas dos entradas son sumadas en el OR,

produciendo a la salida del mismo A·B+C·D.

Tarea sesión 04: ¿Cuál es la salida Booleana del siguiente circuito?

Page 11: La Lógica - WeeblyLa Lógica El estudio de la Lógica comienza con las proposiciones, que son aquellas expresiones verbales o escritas que aseveran o niegan un hecho o relación

11

Considere que el tercer AND es de una sola entrada.

PROBLEMA: ¿Cuál es la salida del siguiente circuito? Escribir además una Tabla de Verdad para el mismo.

Sugerencias: Puede procederse sustituyendo todas las combinaciones de unos y ceros a la entrada o de la siguiente forma:

Aquí se forma la expresión de salida (falta la expresión final) y una vez teniéndola se sustituyen los valores por unos y ceros y se realizan las operaciones.