Matemáticas Discretas Oscar Bedoya [email protected] http://eisc.univalle.edu.co/~oscarbed/MD/ * * * * * * Algebra de Boole Operadores Expresiones y funciones booleanas Identidades del álgebra booleana Expresiones duales Forma normal disyuntiva y conjuntiva Algebra Booleana George Boole • Publicó The Laws of thought, su trabajó más famoso • Allí presentó el álgebra de boole • Boole escribió textos sobre ecuaciones diferenciales • Su trabajo fue utilizado 100 años más tarde, por Shanon, como la base de lo que sería un computador (1815-1864) Algebra Booleana Claude Shanon • Creo Theseus, un laberinto de 25 cuadros reajustable en el que colocaba un ratón magnético capaz de aprender acerca del mundo • Fue de los primeros en crear un programa que jugara ajedrez • Creó el número de Shanon, 10120 (1916-2001) Algebra Booleana Algebra de Boole • Proporciona las operaciones y las leyes para trabajar con el conjunto {0,1} Algebra Booleana Algebra de Boole • Conjunto {0,1} • Operaciones Complemento Suma Booleana Producto Booleano Algebra Booleana • Complemento 0 =1 1 =0 Algebra Booleana • Suma booleana (+, OR) 1+1=1 1+0=1 0+1=1 0+0=0 Algebra Booleana • Producto booleano ( , AND) 11=1 10=0 01=0 00=0 Algebra Booleana Expresiones booleanas Se aplican los operadores para conoce el valor resultante de una expresión 10+(0+1) Algebra Booleana Expresiones booleanas Se aplican los operadores para conoce el valor resultante de una expresión 10+(0+1)=10+(1) =10+0 =0+0 =0 Algebra Booleana Encuentre el valor de las siguientes expresiones booleanas: • 1 1 + (0 1) • 1+01 Algebra Booleana Encuentre el valor de las siguientes expresiones booleanas: • 1 1 + (0 1) = 0 • 1+01 =0 Algebra Booleana Variable booleana Una variable x es booleana si toma valores en el conjunto B, donde B={0,1} Algebra Booleana Funciones booleanas Una función que va de Bn={(x1,x2,…,xn)|xiB,1in} a B, se conoce como una función booleana de grado n Algebra Booleana Funciones booleanas Una función que va de Bn={(x1,x2,…,xn)|xiB,1in} a B, se conoce como una función booleana de grado n x y F(x,y) = x y + y 1 1 0 1 0 1 0 1 1 0 0 1 Algebra Booleana Funciones booleanas Una función que va de Bn={(x1,x2,…,xn)|xiB,1in} a B, se conoce como una función booleana de grado n x y x y xy F(x,y) = x y + y 1 1 0 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 Algebra Booleana Encuentre los valores de la función booleana representada por F(x,y)= (x + y) (x + y) Algebra Booleana Encuentre los valores de la función booleana representada por F(x,y)= (x + y) (x + y) x y x y x+y x+y x+y F(x,y) 1 1 0 0 1 0 0 0 1 0 0 1 1 0 1 0 0 1 1 0 1 0 1 0 0 0 1 1 0 1 1 1 Algebra Booleana Encuentre los valores de la función booleana representada por F(x,y,z)= xy + z Algebra Booleana Encuentre los valores de la función booleana representada por F(x,y,z)= xy + z x y z z xy F(x,y)=xy + z 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 0 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 1 0 1 Algebra Booleana Encuentre los valores de las funciones booleanas F(x,y)=(xy) y F(x,y)=x + y Algebra Booleana Encuentre los valores de las funciones booleanas F(x,y)=(xy) y F(x,y)=x + y x y x y xy xy x+y 1 1 0 0 1 0 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 1 Algebra Booleana Encuentre los valores de las funciones booleanas F(x,y)=(xy) y F(x,y)=x + y x y x y xy xy x+y 1 1 0 0 1 0 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 1 Algebra Booleana Encuentre los valores de las funciones booleanas F(x,y)=x(x+y) y F(x)=x x y x+y x(x+y) 1 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 Algebra Booleana Encuentre los valores de las funciones booleanas F(x,y)=x(x+y) y F(x)=x x y x+y x(x+y) 1 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 Algebra Booleana Identidades del algebra booleana Identidad x=x x+x=x xx=x x+0=x x1=x x+1=1 x0=0 Nombre Ley del doble complemento Leyes de idempotencia Leyes de identidad Leyes de dominancia Algebra Booleana Identidades del algebra booleana Identidad Nombre x+y=y+x xy=yx x+(y+z)=(x+y)+z x (yz)=(xy) z Leyes conmutativas x+yz=(x+y)(x+z) x(y+z)=xy+xz (xy)= x + y (x+y)=x y Leyes distributivas Leyes asociativas Leyes de De Morgan Algebra Booleana Identidades del algebra booleana Identidad x+xy=x x(x+y)=x x+x=1 xx=0 Nombre Ley de absorción Ley del inverso para el 1 Ley del inverso para el 0 Algebra Booleana Pruebe la ley distributiva x+yz=(x+y)(x+z) mostrando la tabla con los posibles valores x,y,z Algebra Booleana x+yz=(x+y)(x+z) x y z yz x+yz (x+y) (x+z) (x+y)(x+z) 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 Algebra Booleana Probar la ley de absorción x(x+y)=x usando las leyes del álgebra booleana Algebra Booleana x(x+y)= (x+0)(x+y) , ley de identidad =x+0y , ley distributiva =x+y0 , ley conmutativa =x+0 , ley de dominancia =x , ley de identidad Algebra Booleana Expresión Dual Dada una expresión booleana E, la expresión dual se obtiene intercambiando entre sí la suma y el producto, y los 0’s con los 1’s Algebra Booleana Expresión Dual Dada una expresión booleana E, la expresión dual se obtiene intercambiando entre sí la suma y el producto, y los 0’s con los 1’s x (y+0) tiene como expresión dual a x + (y 1) x 1 + (y+z) tiene como expresión dual a (x+0)( y z ) Algebra Booleana Muestre el dual de las siguientes expresiones • x (x + 0) • (x + 1) (x 0) • (x 0) + (x 1) + (x + 1) Algebra Booleana Muestre el dual de las siguientes expresiones • x (x + 0) = x + (x 1) • (x + 1) (x 0) = (x0)+(x+1) • (x 0) + (x 1) + (x + 1) = (x+1) (x+0) (x+0) Algebra Booleana Principio de dualidad Una igualdad entre funciones booleanas sigue siendo válida cuando se toman duales a ambos lados de la igualdad Algebra Booleana Principio de dualidad Una igualdad entre funciones booleanas sigue siendo válida cuando se toman duales a ambos lados de la igualdad • Dada la igualdad x(x+y)=x, aplicando el principio de dualidad se tiene que x (x+y) = x Algebra Booleana Principio de dualidad Identidad Nombre x+y=y+x xy=yx x+(y+z)=(x+y)+z x(yz)=(xy) z x+yz=(x+y)(x+z) x(y+z)=xy+xz Leyes conmutativas (xy)= x + y (x+y)=x y Leyes de De Morgan Leyes asociativas Leyes distributivas Algebra Booleana Problema: dados los valores de una función booleana, determinar una expresión que la represente Algebra Booleana x y x xy F(x,y) 1 1 0 1 1 1 0 0 0 0 0 1 1 0 1 0 0 1 0 1 ¿Cuál es la expresión booleana asociada a F(x,y)? Algebra Booleana x y x xy F(x,y)=x + xy 1 1 0 1 1 1 0 0 0 0 0 1 1 0 1 0 0 1 0 1 Algebra Booleana Mintérmino Un mintérmino de las variables x1,x2,…,xn es el producto booleano y1y2…yn donde yi=xi ó yi=xi Algebra Booleana • Suponga que x1=0 x2=1 x3=0 x4=1 x5=1 • A continuación se muestran algunos mintérminos: x1x2x3x4x5 x1x2x3x4x5 x1x2x3x4x5 x1x2x3x4x5 Algebra Booleana • Suponga que x1=0 x2=1 x3=0 x4=1 x5=1 • A continuación se muestran algunos mintérminos: x1x2x3x4x5 x1x2x3x4x5 x1x2x3x4x5 x1x2x3x4x5 Indique el valor de cada mintermino Algebra Booleana • Suponga que x1=0 x2=1 x3=0 x4=1 x5=1 • A continuación se muestran algunos mintérminos: x1x2x3x4x5 (0) x1x2x3x4x5 (0) x1x2x3x4x5 (1) x1x2x3x4x5 (0) Algebra Booleana • Suponga que x1=1 x2=0 x3=1 x4=1 x5=0 • Indique el mintérmino que tiene como valor 1 Algebra Booleana • Suponga que x1=1 x2=0 x3=1 x4=1 x5=0 • Indique el mintérmino que tiene como valor 1 x1x2x3x4x5 Algebra Booleana • Suponga que x1=0 x2=0 x3=0 x4=0 x5=1 • Indique el mintérmino que tiene como valor 1 Algebra Booleana • Suponga que x1=0 x2=0 x3=0 x4=0 x5=1 • Indique el mintérmino que tiene como valor 1 x1x2x3x4x5 Algebra Booleana x y F(x,y) 1 1 1 1 0 0 0 1 1 0 0 1 ¿Cuáles son los mintérminos que permiten obtener 1’s en F(x,y)? Algebra Booleana x y F(x,y) 1 1 1 1 0 0 0 1 1 0 0 1 • Mintérminos que tienen como valor 1: xy xy xy Algebra Booleana x y F(x,y) 1 1 1 1 0 0 0 1 1 0 0 1 • F(x,y)= x y + x y + x y Algebra Booleana x y F(x,y) 1 1 1 1 0 0 0 1 1 0 0 1 • F(x,y)= x y + x y + x y =xy +x(y+y) =xy +x1 =xy +x Algebra Booleana • Obtenga una expresión booleana para la función F(x,y,z) x y z F 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 1 0 0 0 0 0 Algebra Booleana x y z F 1 1 1 0 1 1 0 0 1 0 1 1 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 0 F(x,y,z) = x y z Algebra Booleana • Obtenga una expresión booleana para la función G(x,y,z) x 1 1 1 1 0 0 0 0 y 1 1 0 0 1 1 0 0 z 1 0 1 0 1 0 1 0 G 0 1 0 0 0 1 0 0 Algebra Booleana x y z G 1 1 1 0 1 1 0 1 1 0 1 0 1 0 0 0 0 1 1 0 0 1 0 1 0 0 1 0 0 0 0 0 G(x,y,z) = (x y z) + (x y z) Algebra Booleana Forma normal disyuntiva (FND) La forma como se obtiene la expresión permite que se tengan sumas de mintérminos, lo cual se conoce como expansión suma de productos Algebra Booleana Forma normal disyuntiva (FND) La forma como se obtiene la expresión permite que se tengan sumas de mintérminos, lo cual se conoce como expansión suma de productos •xy +xy +xy • (x + y) (y + x) • (x + y) z •xy+xy Algebra Booleana Forma normal disyuntiva (FND) La forma como se obtiene la expresión permite que se tengan sumas de mintérminos, lo cual se conoce como expansión suma de productos • x y + x y + x y , está en FND • (x + y) (y + x) , no está en FND • (x + y) z , no está en FND •xy+xy , está en FND Algebra Booleana Forma normal disyuntiva (FND) La forma como se obtiene la expresión permite que se tengan sumas de mintérminos, lo cual se conoce como expansión suma de productos •xy +xy +xy • (x + y) (y + x) • (x + y) z •xy+xy Convertir a FND Algebra Booleana Convertir a forma normal disyuntiva (FND) • Se completa la tabla con las variables booleanas y se obtiene la expresión para F como sumas de mintérminos • Se pueden aplicar las leyes del álgebra booleana Algebra Booleana x y z x+y z 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 1 0 1 0 1 0 1 (x+y) z 0 1 0 1 0 1 0 0 Algebra Booleana x y z x+y z 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 1 0 1 0 1 0 1 (x+y) z 0 1 0 1 0 1 0 0 F(x,y,z) = (x y z) + (x y z) + (x y z) Algebra Booleana Convertir a FND: (x + y z) (x + y) Algebra Booleana Convertir a FND: (x + y z) (x + y) x y z y 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 yz x + yz 0 1 0 1 1 1 0 0 0 1 0 1 0 0 1 0 x+y x+y 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 (x + yz) (x+y) 0 0 0 0 0 0 1 0 Algebra Booleana F(x,y,z) = (x y z) x y z y 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 yz x + yz 0 1 0 1 0 0 0 1 0 1 1 1 0 0 1 0 x+y x+y 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 (x + yz) (x+y) 0 0 0 0 0 0 1 0 Algebra Booleana Forma normal conjuntiva (FNC) Se presenta cuando la expresión se muestra como una expansión de productos de sumas Algebra Booleana Forma normal conjuntiva (FNC) Se presenta cuando la expresión se muestra como una expansión de productos de sumas • (x + y) (y + x) , está en FNC • (x y) + (x y) , no está en FNC • (x + y + z) (x + y) (x + y) , está en FNC Algebra Booleana Forma normal conjuntiva (FNC) • Se presenta cuando la expresión se muestra como una expansión de productos de sumas • Se calcula encontrando el dual de la expresión en FND Algebra Booleana x y z G 1 1 1 0 1 1 0 1 1 0 1 0 1 0 0 0 0 1 1 0 0 1 0 1 0 0 1 0 0 0 0 0 F(x,y,z) = (x y z) + (x y z) está en FND, su expresión correspondiente en FNC es (x + y + z) (x + y + z) Algebra Booleana Encuentre las expresiones en FND de las siguientes funciones booleanas a) F(x,y) = x + y b) F(x,y) = 1 c) F(x,y) = y Algebra Booleana F(x,y) = x + y x y x x+y 1 1 0 1 1 0 0 0 0 1 1 1 0 0 1 1 FND: F(x,y) = (x y) + (x y) + (x y) Algebra Booleana F(x,y) = 1 x y F(x,y) 1 1 1 1 0 1 0 1 1 0 0 1 FND: F(x,y) = (x y) + (x y) + (x y) + (x y) Algebra Booleana F(x,y) = y x y F(x,y) 1 1 0 1 0 1 0 1 0 0 0 1 FND: F(x,y) = (x y) + (x y)