Concisión sólida, calma y madurez: cuando halles estas cualidades reunidas en un autor, detente y celebra una gran esta en medio del desierto, pues pasará mucho tiempo hasta que experimentes de nuevo placer semejante. El viajero y su sobra, Federico Nietzsche. Fiestas Raras. Capítulo 8 Reticulados y Álgebras de Boole En este capítulo se estudiará una estructura algebraica con dos operaciones que suele llamarse álgebra de boole en honor al matemático inglés George Boole quien estudió sus propiedades en su obra titulada An Investigation of the Laws of Thought y publicada en 1854. Esta estructura se estudiará bajo dos enfoques diferentes que llamaremos: enfoque de conjuntos parcialmente ordenados (o relacional) y enfoque algebraico. Empezamos el capítulo recordando algunas deniciones básicas relacionadas con relaciones, relaciones de orden y conjuntos parcialmente ordenados. Luego daremos las deniciones de reticulados y álgebras de boole y estudiaremos sus propiedades básicas. Posteriormente deniremos las álgebras de boole de manera algebraica, esto es, similar a como se denieron los anillos. Finalmente estudiaremos el álgebra de boole de las funciones booleanas y trataremos de hallar representaciones óptimas de las mismas. 8.1 Relaciones de Orden En esta sección se presenta un breve repaso de algunos conceptos de relaciones que conviene tener claros para poder entender los temas que se tratarán luego. Denición 8.1 Una relación sobre un conjunto A es un subconjunto del producto cartesiano A A. Las relaciones pueden o no gozar de una serie de propiedades que nos permiten clasicarlas. Entre estas propiedades se destacan: la reexividad, irreexividad, simetría, asimetría, antisimetría, conectividad, conectividad fuerte y la transitividad. Denición 8.2 (Relación de Orden) Una relación de orden sobre un conjunto A es una relación sobre A que es reexiva, anti-simétrica y transitiva. 81 82 Capítulo 8. Reticulados y Álgebras de Boole Denición 8.3 (Conjunto Parcialmente Ordenado) Un conjunto parcialmente ordenado es un par ordenado hA; i donde A es un conjunto y es una relación de orden parcial denida sobre A. Se abrevia CPO. Denición 8.4 (Conjunto Linealmente Ordenado) Un conjunto linealmente ordenado es un conjunto parcialmente ordenado en el cual todo par de elementos es comparable. Denición 8.5 (Minimales y Maximales) Si hA; i es un CPO y B es un subconjunto de A se dene Minimales de B como el conjunto de los elementos más pequeños de B , esto es, los elementos de B para l os cuales no existe en B algún elemento que sea más pequeño que el elemento en cuestión. Simbólicamente, Mins(B) = fx 2 B : (@b 2 B )(b < x)g = fx 2 B : (8b 2 B )(b x ) x = b)g : Análogamente se dene Maximales de B ,(Maxs(B)) como el conjunto de los elementos más grandes de B . Simbólicamente, Maxs(B) = fx 2 B : (@b 2 B )(x < b)g = fx 2 B : 8b 2 B (x b ) x = b)g : Observe que Mins(B) es un subconjunto de B , que puede incluso ser vacío. Observe además que si x; y 2 Mins(B), entonces x; y no pueden ser comparables, pues de serlo, sin perdida de generalidad, se tiene que x y ) x = y, lo cual es una contradicción. Denición 8.6 (Mínimo de B) Si hA; i es un CPO y B es un subconjunto de A se dice que x es el Mínimo de B si x pertenece a B y para todo b perteneciente a B se tiene que x b. Si no existe en B un elemento con esa propiedad, se dice que B no tiene mínimo. Simbólicamente, min(B ) = x , (x 2 B ) ^ (8b 2 B (x b)) : Denición 8.7 (Máximo de B) Si hA; i es un CPO y B es un subconjunto de A se dice que x es el Máximo de B si x pertenece a B y para todo b perteneciente a B se tiene que b x. Si no existe en B un elemento con esa propiedad, se dice que B no tiene máximo. Simbólicamente, max(B ) = x , (x 2 B ) ^ (8b 2 B (b x)) : Denición 8.8 (Minorantes o Cotas Inferiores) Si hA; i es un CPO y B es un subconjunto de A, se dice que x es un elemento minorante de B o una cota inferior de B si x pertenece a A y para todo b perteneciente a B se tiene que x b. Al conjunto de los elementos minorantes de B se denomina Minorantes de B. Simbólicamente, cotinf(B) = fx 2 A : (8b 2 B )(x b)g : 8.1. Relaciones de Orden Vicente Yriarte 83 Denición 8.9 (Mayorantes o Cotas Superiores) Si hA; i es un CPO y B es un subconjunto de A, se dice que x es un elemento mayorante de B o una cota superior de B si x pertenece a A y para todo b perteneciente a B se tiene que b x. Al conjunto de los elementos mayorantes de B se denomina Mayorantes de B. Simbólicamente, cotsup(B) = fx 2 A : (8b 2 B )(b x)g : Denición 8.10 (Supremo de un Conjunto) Si hA; i es un CPO y B es un subconjunto de A, se dice que x es el el supremo del conjunto B si x es el mínimo de las cotas superiores de B . Simbólicamente, sup (B ) = min (cotsup (B )) ; o equivalentemente x = sup (B ) () x = min (cotsup (B )) : Denición 8.11 (Ínmo de un Conjunto) Si hA; i es un CPO y B es un subconjunto de A, se dice que x es el el ínmo del conjunto B si x es el máximo de las cotas inferiores de B . Simbólicamente, inf (B ) = max (cotinf (B )) ; o equivalentemente x = inf (B ) () x = max (cotinf (B )) : Una forma más compacta de estas deniciones es: Denición 8.12 (Supremo) Dado un conjunto parcialmente ordenado hA; i y un subconjunto S de A el supremo de S es, si existe, la menor de las cotas superiores de S . Denición 8.13 (Ínmo) Dado un conjunto parcialmente ordenado hA; i y un subconjunto S de A el ínmo de S es, si existe, la mayor de las cotas inferiores de S . Observaciones El supremo y el ínmo de un conjunto S se suelen denotar por sup (S ) y inf (S ) respectivamente. Está claro que si S es un singletón, digamos S = fag, de A se tiene que sup (fag) = a e inf (fag) = a. Al supremo y al ínmo de una pareja no ordenada fx; yg de un CPO se les suele representar respectivamente por sup (x; y), inf (x; y) o por x _ y, x ^ y. Note que x _ y o x ^ y pueden no estar denidos. Importante: si dos elemento son comparables el mayor de ellos es el supremo y el menor es el ínmo de la pareja. Esto se formaliza en el siguiente teorema. Teorema 8.1 En todo conjunto parcialmente ordenado hA; i se cumple que (8x; y 2 A)((x y , x _ y = y) ^ (x y , x ^ y = x)) : Capítulo 8. 84 Reticulados y Álgebras de Boole Prueba: ()) Si x y se tiene que y es mayorante de x y de y, esto es, y 2 may (x; y). Para ver que es el menor de los mayorantes tomemos un mayorante cualquiera z 2 may (x; y). Por denición de mayorantes se tiene que x z ^ y z . Luego, y es, en efecto, menor que cualquier mayorante. (() Si x _ y = y, por denición de supremo se tiene que x y y que y y. Luego, en efecto, x y. La otra parte es análoga, y se deja como ejercicio. 2 Corolario 8.2 En todo conjunto parcialmente ordenado hA; i se cumple que (8x; y 2 A)(x _ y = y , x ^ y = x) : Corolario 8.3 En todo reticulado hL; i se cumple, para todo x; y 2 A, que (y < x _ y , (x ? 1 y _ y < x)) ^ (x ^ y < x , (x ? y _ y < x)) : Ambos corolarios se dejan como ejercicio. Denición 8.14 (Sub-CPO) Diremos que hS; i es un sub-CPO del CPO hA; i si y sólo si S A, es una relación de orden sobre S y 8x; y 2 S se tiene que x y , x y. Denición 8.15 (Cadena) Una cadena de un conjunto parcialmente ordenado hA; i es un sub-cpo linealmente ordenado. Denición 8.16 (Finitud) Se dice que un conjunto parcialmente ordenado hA; i es nito si y sólo si A es nito; de lo contrario se dice que es innito. Denición 8.17 Se dice que un conjunto parcialmente ordenado hA; i es discreto si y sólo si para todo par a; b 2 A no existe una cadena innita de elementos de A que sea, a la vez, mayorante de a y minorante de b. Por ejemplo, el cpo hIN ; i es discreto pero hQ; i no es discreto porque, por ejemplo, entre cero y uno hay innitas fracciones que mayoran a 0 y minoran a 1. Denición 8.18 (Altura) La altura de una cadena nita hB; i es jBj 1. Denición 8.19 (Altura Finita) Un conjunto parcialmente ordenado hA; i tiene altura nita si y sólo si todas sus cadenas son nitas. En tal caso su altura es la altura de la cadena más larga que posea. 1? signica: no comparables. 8.2. Reticulados Vicente Yriarte 85 8.2 Reticulados Denición 8.20 (Reticulado) Un reticulado es un conjunto parcialmente ordenado en el cual todo par (no ordenado) de elementos tiene supremo e ínmo. Denición 8.21 (Reticulado) Un conjunto parcialmente ordenado hA; Ri se denomina reticulado si para todo a; b 2 A se tiene que sup (fa; bg) e inf (fa; bg) existen. En la siguiente gura 8.1 se muestra la forma de los diagramas de Hasse para algunos conjuntos parcialmente ordenados. Nótese, por ejemplo, que si el conjunto base del orden fuese A = fa; b; c; d; eg, en todos los ejemplos con cinco elementos habría varias formas de nombrar los vértices dando cada una de ellas un orden parcial distinto, sin embargo, estructuralmente iguales. Digamos que son equivalentes. Más adelante formalizaremos la noción de equivalencia entre conjuntos parcialmente ordenadosIsomorsmos de conjuntos parcialmente ordenados. Algunos de ellos son reticulados y otros no. @@ @@ @ @ s (a) s @@ s s @@ @ s s s @@ @@ @@ s @ s s P PPPP s s s s s s s PPPP P Z @@ @@ @@ @@ Z ZZ @ @ @ ZZ @@ @@ @@ @ @@ Z @ @ @ @ Z ZZ @@ @@ @@ @@ ZZ @ @ @ @ Figura 8.1: Diagramas de Hasse de algunos CPO. (b) s s s (c) s s s s s s s s (e) s s s s s s (d) s s s s s s s s s (f ) s s s (g ) s s s s (h) s (i) s s s (j ) s s s Ejercicio 8.1 Diga cuáles de los diagramas de la gura anterior son reticulados y cuáles no. Justique su respuesta. Denición 8.22 (Sub-reticulado) Un sub-reticulado de un reticulado hL; Ri es un sub-cpo hS; R0 i en el cual se cumple que para todo par de elementos x; y 2 S el sup(x; y) y el inf(x; y) pertenecen a S . Alerta: El sup y el inf en hL; Ri. Denición 8.23 (Reticulado Acotado) Un reticulado se llama acotado si y sólo si posee máximo y mínimo. Se denota al máximo por b1 y al mínimo por b0. Teorema 8.4 Todo reticulado de altura nita tiene máximo y mínimo. Denición 8.24 (Complemento) Dado un reticulado acotado hL; i y un elemento x de L, se dice que y 2 L es un complemento de x si y sólo si sup(fx; yg) = b1 e inf(fx; yg) = b0. 86 Capítulo 8. Reticulados y Álgebras de Boole Denición 8.25 (Reticulado Complementado) Un reticulado hL; i se llama complementado si y sólo si para todo x 2 L existe y 2 L tal que el sup (x; y) = b1 2 y el inf (x; y) = b0. r8 r4 r2 r1 (a) @@ @@ @ @@ @ @ 12 r 6 r 3 r 6 r r4 r2 r1 (b) JJ JJ J J JJ Figura 8.2: Reticulados Dn . 3 r r2 r1 (c) Ejercicio 8.2 Analice cada uno de los diagramas de Hasse de la gura 8.1 y decida cuáles de los que son reticulados son complementados y cuáles no. Justique su respuesta. Denición 8.26 (Reticulado Completo) Un reticulado hL; i se llama completo si y sólo si para todo A L se tiene que existen inf (A) y sup (A). Teorema 8.5 Si hL; i es un reticulado nito, entonces es completo. Teorema 8.6 Si hL; i es un reticulado completo, entonces tiene b0 y b1. Denición 8.27 (Reticulado Distributivo) Un Reticulado hL; i se dice distributivo si y sólo si el supremo y el ínmo son mutuamente distributivos, esto es, si para toda terna x; y; z de elementos de L se tiene que sup (x; inf (y; z )) = inf (sup < x; y >; sup (x; z )) y inf (x; sup (y; z )) = sup (inf < x; y >; inf (x; z )) En un reticulado es común y conveniente representar al supremo del conjunto fx; yg como x _ y y al ínmo del mismo conjunto como x ^ y. Con esta notación la denición anterior se reescribe como: Un reticulado hL; i es distributivo si y sólo si para toda terna x; y; z de elementos de L se cumple que x _ (y ^ z ) = (x _ y) ^ (x _ z ), y que x ^ (y _ z ) = (x ^ y) _ (x ^ z ). Ejemplos de Reticulados Distributivos: a) hP (A); i es un reticulado distributivo para todo conjunto A. Porque el supremo y el ínmo son justamente la unión y la intersección de conjuntos que ya vimos son mutuamente distributivas. b) Si denotamos por Dn al conjunto de los divisores de n, el reticulado hDn ; ji es un reticulado distributivo pero no siempre es complementado (ver Figura 8.2). c) Las cadenas son distributivas. (Pruébelo.) 8.3. Álgebras de Boole Vicente Yriarte a @@ @ a r r d @@ @ @@ r r e @@ @ 87 @@ e r b d r c r QQQ QQ @@ r b r r c (b) (a) Figura 8.3: Reticulados no Distributivos. Reticulados No Distributivos: En la gura 8.3 se muestran dos reticulados no distributivos. (Muestre que no lo son.) Más aun, todo reticulado que no contenga una copia de tales reticulados como sub-reticulado es distributivo. Esto se formaliza en el siguiente teorema. Teorema 8.7 Un reticulado es distributivo si y sólo si no contiene un subreticulado isomorfo a los de la gura 8.3 . Ejercicio 8.3 Muestre que hD ; ji y hD ; ji no son complementados. Ejercicio 8.4 Demuestre que toda cadena de un reticulado es distributiva. Ejercicio 8.5 Analice cada uno de los diagramas de Hasse de la gura 8.1 y 18 40 decida cuáles de los que son reticulados son distributivos y cuáles no. Justique su respuesta. Teorema 8.8 En todo reticulado hL; i se tiene que se cumple una propiedad distributiva si y sólo se cumple la otra. El próximo teorema garantiza la unicidad de los complementos en los reticulados distributivos. Alerta: no garantiza la existencia. Teorema 8.9 En un reticulado distributivo acotado, si un elemento tiene complemento, éste es único. Ejercicio 8.6 Dibuje el diagrama de Hasse de todos los reticulados con a lo sumo cinco vértices. Nota: interesa es la forma,... no los etiquete. 8.3 Álgebras de Boole Denición 8.28 (Álgebra de Boole) Un álgebra de Boole es un reticulado distributivo y unívocamente complementado. 2 sup (x; y ) e inf ( x; y ) son abreviaturas de sup (f x; y g) y de inf (f x; y g) respectivamente. 88 Capítulo 8. Reticulados y Álgebras de Boole Teorema 8.10 Para todo conjunto A, se tiene que hP (A); i es un álgebra de boole. Prueba: hP (A); i es un conjunto parcialmente ordenado con máximo b1 = A y mínimo b0 = ;. Es un reticulado porque para todo par S ; S 2 P (A) se tiene que sup (S ; S ) = S [ S e inf (S ; S ) = S \ S Pruebelo. Es unívocamente complementado porque todo subconjunto S de A tiene como único complemento a A S pues S \ A S = ; y S [ A S = A. Y es distributivo porque la unión 1 1 2 1 2 1 2 1 2 2 e intersección de conjuntos son mutuamente distributivas. Por lo tanto es un álgebra de boole. 2 En la gura 8.4 se muestra el diagrama de Hasse del álgebra de boole hP (A); i para el conjunto A = fa; b; cg. fa; bg fag Q Q Q QQ QQ QQ Q fa; b; cg fa; cg fbg ; QQ QQ Q Q Q Q QQ fb; cg fcg Figura 8.4: Hasse del álgebra de Boole hP (A); i. Ejemplo 8.1 Sea B = f0; 1g y sea R = f< 0; 0 >; < 0; 1 >; < 1; 1 >g. Muestre que hB; Ri es un álgebra de boole. Respuesta: R es una relación reexiva, anti-simétrica y transitiva y por consiguiente es una relación de orden. (Vericarlo). Todo par de elementos de B tiene supremo e ínmo, luego hB; Ri es un reticulado. El máximo de B es 1 y el mínimo es 0. El complemento de 0 es 1 y el de 1 es 0. Finalmente, hB; Ri es distributivo y en consecuencia un álgebra de boole. Completar los detalles. Ejercicio 8.7 Sobre el conjunto de n tuplas de B = f0; 1g que denotaremos B n se dene la relación como < x1 ; x2 ; : : : ; xn >< y1 ; y2 ; : : : ; yn >() (8i 2 [n])(xi yi ) : Demuestre que hB n ; i es un álgebra de boole. 8.3. Álgebras de Boole Vicente Yriarte 89 Ejercicio 8.8 Demuestre que hD30 ; ji es un álgebra de boole. D es el conjunto de los divisores de 30 y j es la relación de divisibilidad. Ejercicio 8.9 Demuestre que si hB1 ; 1 i y hB2 ; 2 i son álgebras de boole, entonces hB1 B2 ; i es un álgebra de boole si se dene como: < a ; a >< a0 ; a0 >() a a0 ^ a a0 : 30 1 2 1 2 1 1 1 2 2 2 Dualidad Dado un CPO hA; i, puesto que es una relación de orden, se tiene que su conversa, esto es, la relación que resulta de invertir las coordenadas de los pares de la relación, es también una relación de orden que denotaremos por . Luego, hA; i es también un CPO. A este CPO lo denominamos el CPO dual. Además si hA; i es un reticulado, hA; i también lo es, sup (x; y) = inf (x; y) e inf (x; y) = sup (x; y) . Si hA; i es acotado, max (A) = min (A) y min (A) = max (A) . Como consecuencia de lo anterior los complementos se conservan: si x ^ y = b0 y x _ y = b1 en hA; i, entonces x _0 y = b10 y x ^0 y = b00 en hA; i. Luego, el dual de un álgebra de boole es un álgebra de boole isomorfa a la original. Las teoremas de una son teoremas de la otra. Denición 8.29 (Dual de una Proposición) El dual de una proposición es la proposición que resulta de sustituir todas las ocurrencias de ^ y _ por _ y ^ y las de b1, b0 por b0, b1 respectivamente. Teorema 8.11 (Principio de Dualidad) El dual de un teorema sobre álgebras de boole es también un teorema. Prueba: Si T es un teorema en un álgebra de boole hA; i, también su equivalente T 0 lo es en hA; i. Si representamos por _, ^, 1, 0 al suplemo, ínmo, máximo y mínimo de hA; i, y por _0 , ^0 , 10 , 00 al suplemo, ínmo, máximo y minimo de hA; i, T 0 se obtiene de T agregando las primas. Pero como _0 = ^; ^0 = _; 10 = 0; 00 = 1 al sustituir en T 0 los primados por su correspondiente se tiene el teorema dual. 2 Propiedades: Teorema 8.12 (Leyes de Dominancia) En toda álgebra de boole se tiene que (x ^ b0 = b0) y que (x _ b1 = b1). Teorema 8.13 (Leyes de Absorción) En toda álgebra de boole se tiene que x ^ (x _ y) = x y x _ (x ^ y) = x. Teorema 8.14 (Leyes de De Morgan) Si hL; i es un reticulado booleano, entonces para todo x; y 2 L se cumple que (x _ y)0 = x0 ^ y0 y que (x ^ y)0 = x0 _ y0 : 90 Capítulo 8. Reticulados y Álgebras de Boole Prueba: Probaremos la primera. La otra es el dual y se deja como ejercicio. Como el complemento es único en un álgebra de boole, basta probar que x0 ^y0 es el complemento de x_y, esto es, que (x_y)_(x0 ^y0 ) = b1 y que (x_y)^(x0 ^y0 ) = b0. En efecto: (x _ y) _ (x0 ^ y0 ) = = = = = ((x _ y) _ x0 ) ^ ((x _ y) _ y0 ) ((y _ x) _ x0 ) ^ (x _ (y _ y0 )) (y _ (x _ x0 )) ^ (x _ b1) b b b1(y^_b11=) ^b1 (x; _ 1) (x _ y) ^ (x0 ^ y0 ) = = = = = (x ^ (x0 ^ y0 )) _ (y ^ (x0 ^ y0 )) ((x ^ x0 ) ^ y0 ) _ (y ^ (y0 ^ x0 )) (b0 ^ y0 ) _ ((y ^ y0 ) ^ x0 ) b0 _ (b0 ^ x0) b0 _ b0 = b0 : 2 En un álgebra de boole no es cierto que x ^ y = x ^ z ) y = z ni que x _ y = x _ z ) y = z (mostrar ejemplo). Sin embargo se tiene el siguiente resultado. Aquí f simboliza al o lógico. Teorema 8.15 (Leyes de Cancelación) En toda álgebra de boole se cumplen las siguientes reglas de simplicación. (x ^ y = x ^ z ) f (x ^ y = x ^ z ) ) y = z ; (x _ y = x _ z ) f (x _ y = x _ z ) ) y = z : Denición 8.30 (Átomos y Co-átomos) En un reticulado acotado se llama átomo a cada uno de los sucesores inmediatos del b0 y se llaman co-átomos a los predecesores inmediatos del b1. En el álgebra de boole hP (A); i, los átomos son los singletones y los coátomos los conjuntos de la forma A fag, con a 2 A. En el álgebra de boole de los divisores de n = p1 p2 pk , donde los pi son primos distintos los átomos son los primos que dividen a n y los co-átomos los divisores de la forma n=pi . Ejercicio 8.10 ¾Cuáles son los átomos y los co-átomos en el álgebra de boole hBn; i de las n-tuplas booleanas descritas en el ejercicio 8.7? Teorema 8.16 Si x es un átomo en un álgebra de boole hB; i, entonces para todo y 2 B se tiene que x ^ y = x o x ^ y = b0. Prueba: Sea a un átomo y sea b 2 B, entonces a ^ b a, pero como a es un átomo se tiene que cualquier elemento menor o igual que él es él mismo o es el mínimo, esto es, a ^ b = a o a ^ b = b0. 2 8.3. Álgebras de Boole Vicente Yriarte 91 Corolario 8.17 Si x y x son átomos de un álgebra de boole hB; i y x 6= x , entonces x ^ x = b0. Prueba: Como x es un átomo, se tiene, en base al teorema anterior, que x ^ x = x o x ^ x = b0; si x ^ x = x , dado que x ^ x x se tiene que x x . Esto junto con la hipótesis x = 6 x implica que x es b0 lo cual es una contradicción pues x es un átomo. Luego, x ^ x = b0. 2 1 1 2 1 2 2 1 1 1 2 1 1 2 2 1 2 1 1 1 1 2 2 2 1 1 2 Denición 8.31 (Altura de un Elemento) La altura de un elemento x de un álgebra de boole es la altura de la cadena más larga que tiene como mínimo a b0 y como máximo a x. El siguiente teorema muestra otras dos posibles deniciones equivalentes de átomo. Se puede enunciar un teorema análogo para co-átomos. Teorema 8.18 Si hB; i es un álgebra de boole, entonces las siguientes tres armaciones son equivalentes: (i ) a es sucesor inmediato de b0 (ii ) a tiene un único predecesor (iii ) a tiene altura 1 Teorema 8.19 En toda álgebra de boole hB; i si para todo átomo a se tiene que x ^ a = b0, entonces x = b0. Prueba: Por absurdo, si para todo átomo a se tiene que x ^ a = b0 y x 6= b0, entonces el conjunto S = fy 2 B : b0 < y xg es no vacío porque x 2 S . Luego como todo sub-conjunto nito no vacío de un conjunto parcialmente ordenado tiene al menos un elemento minimal se tiene que S tiene al menos un elemento minimal. Sea z un elemento minimal de S , luego se tiene que z es un átomo y en consecuencia x ^ z = b0; lo cual es una contradicción porque como z 2 S se tiene que z x y en consecuencia x ^ z = z 6= b0. 2 El siguiente teorema establece que todo elemento de un álgebra de boole se puede expresar como suma de átomos. Los átomos en las álgebras de boole hacen el papel de los generadores en los grupos (por ejemplo: en los cíclicos o en los nitamente generados) o que las bases en los espacios vectoriales. Teorema 8.20 En toda álgebra de boole nita hB; i cualquier elemento x 6= b0 se puede expresar en forma única como suma de átomos. Prueba: Sea x 6= b0 y sea T = fa1; a2 : : : ; ang el conjunto de los átomos de B. Como x 6= b0 se tiene que fai : x ^ ai 6= b0g no es vacío; sea S = fai1 ; : : : ; aik g una enumeración de dichos átomos y denotemos por y = ai1 _ : : : _ aik . Probaremos primero que x ^ y = y y que x ^ y0 = b0. x ^ y = x ^ (ai1 _ ai2 _ : : : _ aik ) 92 Capítulo 8. Reticulados y Álgebras de Boole = (x ^ ai1 ) _ (x ^ ai2 ) _ : : : _ (x ^ aik ) = ai1 _ ai2 _ : : : _ aik = y ya que por el teorema anterior x ^ ais = b0 ó x ^ ais = ais y no son cero por construcción. Para ver que x ^ y0 = b0 mostraremos que para todo átomo ai se cumple que (x ^ y0 ) ^ ai = b0. Tenemos que x ^ y0 = x ^ (ai1 _ ai2 _ : : : _ aik )0 = x ^ (a0i1 ^ a0i2 ^ : : : ^ a0ik ). Por casos: si ai 2 S , entonces (x ^ y0 ) ^ ai = x ^ (a0i1 ^ a0i2 ^ : : : ^ a0ik ) ^ ai = b0 porque a0i ^ ai = b0; si ai 62 S , entonces (x ^ y0 ) ^ ai = x ^ (a0i1 ^ a0i2 ^ : : : ^ a0ik ) ^ ai = b0 por que, por denición de S , x ^ ai = b0. Luego, en base al teorema 8.19 se tiene que x ^ y0 = b0. Finalmente, como x = x ^ b1 = x ^ (y _ y0 ) = (x ^ y) _ (x ^ y0 ) = y _ b0 = y se tiene que x es disyunción de átomos. Para ver que esta representación es única supongamos que existen dos representaciones de x = xi1 _ xi2 _ _ xik y x = xj1 _ xj2 _ _ xj` y probaremos que todo xis es alguno de los xj y viceversa. Sea xis 2 fxi1 ; xi2 ; ; xik g, entonces xis ^ x = xis ^ (xi1 _ xi2 _ _ xik ) = (xis ^ xi1 ) _ (xis ^ xi2 ) _ _ (xis ^ xik ) = xis ^ xis = xis 6 s. Pero además, si porque xis es uno de los xi y xis ^ xir = b0 si r = xis 62 fxj1 ; xj2 ; ; xj` g se tiene que xis ^ x = xis ^ (xj1 _ xj2 _ _ xj` ) = b0, lo cual es una contradicción. Concluimos que todo xis es alguno de los xj y por consiguiente que k `. De manera análoga se concluye que todo xjs es alguno de los xi y por consiguiente que ` k. Esto prueba que la representación es única salvo el orden de aparición de los átomos. 2 Corolario 8.21 Si hB; i es un álgebra de boole nita con n átomos, entonces jB j = 2n . Como, según el teorema anterior, todo elemento de un álgebra de boole se puede expresar como disyunción de átomos y esta representación es única salvo por el orden de escritura de los átomos, se tiene que todo elemento de un álgebra de boole tiene asociado el conjunto de los átomos que se usan para representarlo. Esto permite denir el conjunto ato (x) como el conjunto de los átomos del álgebra que se usan para expresar a x como disyunción de átomos. Denición 8.32 (Átomos de un Elemento) Si x es un elemento de un álgebra de boole hB; i denotaremos por ato (x) al conjunto de los átomos de B que se usan en la representación de x como disyunción de átomos. Denición 8.33 (Isomorsmo de Álgebras de Boole) Se dice que dos álgebras de boole de soportes A y B respectivamente son isomorfas si y sólo si existe una función biyectiva ' : A ! B tal que para todo x; y 2 A se cumple que '(x _ y) = '(x) _ '(y); '(x ^ y) = '(x) ^ '(y) y '(x0 ) = '(x)0 8.3. Álgebras de Boole Vicente Yriarte 93 Teorema 8.22 (Stone) Toda álgebra de boole nita es isomorfa a un álgebra de boole hP (A); i. Prueba: Si hB; i es un álgebra de boole nita, entonces tiene un número nito de átomos; sea A el conjunto de los átomos de B , mostraremos una biyección entre B y P (A). Sea ' : B ! P (A), denida como '(x) = ato(x) para todo x 2 B . Hay que probar que ' es biyectiva y que para todo x; y 2 B se tiene que '(x _ y) = '(x) [ '(y), '(x ^ y) = '(x) \ '(y) y '(x) = '(x). ' está bien denida porque para todo x 2 B se tiene que ato (x) es sub-conjunto de A y por consiguiente ato (x) 2 P (A). Inyectividad: Sean W que '(x) = '(y), W x; y 2 B tales entonces ato (x) = ato (y), por lo tanto x = a2ato (x) a = a2ato (y) a = y, esto es x W= y. Sobreyectividad: Sea C 2 P (A), entonces C A; si consideramos z = a2C a tenemos que z 2 B y '(z ) = C . Homomorsmo: Sean x; y 2 B , veamos que '(x _ W y) = '(x) [ '(W y). Por denición W '(x _ y) = ato (x _ y), y como x _ y = ( a2ato (x) a) _ ( a2ato (y) a) = a2ato (y)[ato (y) a, se tiene que ato (x _ y) = ato (x) [ ato (y) y por consiguiente '(x _ y) = ato (x _ y) = ato (x) [ ato (y) = '(x) [ '(y). La prueba de que '(x ^ y) = '(x) \ '(y) es similar. (Hacerla.) Para ver que '(x) = '(x), consideremos por separado ambos lados de la igualdad. Por denición de ' se tiene que '(x) = ato (x) y como ato (x) \ ato (x) = ; y ato (x) [ ato (x) = A se tiene (probarlo) que ato (x) = A ato (x). Mientras que como '(x) = ato (x) y el complemento de 2 S en P (A) es A S , se tiene que '(x) = A ato (x). Este teorema puede usarse para probar que todas las álgebras de boole de n átomos son isomorfas. También puede usarse el siguiente teorema. (El cual se deja como ejercicio.) En la gura 8.5 se muestran los diagramas de Hasse de tres álgebras de boole con tres átomos isomorfas entre sí. Son ellas: partes de fa; b; cg, divisores de 30 y B 3 . fa; b; cg f g f g Q Q Q QQ f g f g QQ QQ Q a; b a; c a b ; QQ QQ Q Q Q Q QQ fb; cg 6 fcg 2 Q Q Q QQ QQ QQ Q 30 10 3 1 QQ QQ Q Q Q Q QQ 15 110 5 100 Q Q Q QQ QQ QQ Q 111 101 010 000 QQ QQ Q Q Q Q QQ 011 001 Figura 8.5: Álgebras de Boole Isomorfas. Teorema 8.23 Si A y B son álgebras de boole nitas con conjuntos de átomos S = fa1 ; : : : ; an g y T = fb1; : : : ; bn g respectivamente, entonces la función de- 94 Capítulo 8. Reticulados y Álgebras de Boole nida sobre los átomos de A por (ai ) = bi , para todo ai 2 S es un isomorsmo entre las dos álgebras. Teorema 8.24 Si hA; i y hB; i son álgebras de boole y ' : A ! B es un isomorsmo de álgebras de boole, entonces 1. '(b0) = b0, 2. '(b1) = b1, 3. Si x y, entonces '(x) '(y), 4. Si a es un átomo de A, entonces '(a) es un átomo de B . Este teorema se deja como ejercicio. Sugerencia: usar el Teorema 8.1. 8.4 Denición Algebraica de Álgebra de Boole En esta sección se darán las deniciones de reticulado y álgebras de boole desde el punto de vista algebraico; esto signica que se denirán estas estructuras basados en un conjunto L y dos operaciones binarias denidas sobre L que satisfacen una serie de propiedadesVale la pena recordar las deniciones de las estructuras algebraicas ya estudiadas: grupoide, semi-grupo, monoide, grupo, anillo, dominio de integridad, cuerpo y espacio vectorial. Deniremos básicamente dos nuevas estructuras algebraicas: reticulado algebraico y álgebra de boole. Denición 8.34 (Reticulado Algebraico) Un reticulado algebraico es una terna ordenada hL; _; ^i, en la cual L es un conjunto no vacío, y _, ^ son dos operaciones binarias conmutativas y asociativas tales que para todo par de elementos x; y 2 L se cumplen las siguientes dos propiedades x _ (x ^ y) = x y x ^ (x _ y) = x que llamaremos leyes de absorción. Teorema 8.25 (Idempotencia) Si hL; _; ^i es un reticulado algebraico, entonces se tiene que para todo x 2 L se cumple que x _ x = x y x ^ x = x. Teorema 8.26 Si hL; _; ^i es un reticulado algebraico, entonces se tiene que para todo x; y 2 L se cumple que x _ y = y si y sólo si x ^ y = x. Teorema 8.27 Dado un reticulado algebraico hL; _; ^i si denimos la relación en L como x y , x _ y = y, entonces es un orden parcial y hL; i es un reticulado en el cual el sup (x; y) = x _ y y el inf (x; y) = x ^ y. Teorema 8.28 Dado un reticulado hL; i, si para todo par x; y 2 L denimos x _ y = sup (x; y) y x ^ y = inf (x; y), se tiene que hL; _; ^i es un reticulado algebraico. 8.4. Denición Algebraica de Álgebra de Boole Vicente Yriarte 95 Estos últimos dos teoremas establecen que los reticulados y los reticulados algebraicos son la misma estructura; sólo que los enfoques de denición son diferentes. En adelante simplemente los llamaremos reticulados sin importar cual enfoque se haya usado para denirlos. Denición 8.35 (Álgebra de Boole) Un álgebra de boole es una terna ordenada hB; _; ^i (o si se preere hB; +; i) donde B es un conjunto no vacío, _ y ^ son dos operaciones binarias conmutativas y asociativas denidas sobre B que cumplen las siguientes propiedades: B1) Existe un elemento b0 2 B tal que para todo x 2 B se cumple que x _ b0 = x. B2) Existe un elemento b1 2 B tal que para todo x 2 B se cumple que x ^ b1 = x. B3) Para todo x 2 B existe un elemento x 2 B que llamaremos complemento de x y tal que x _ x = b1 y x ^ x = b0 B4) _ y ^ son mutuamente distributivas, esto es, para todo x; y; z 2 B se cumple que x _ (y ^ z ) = (x _ y) ^ (x _ z ) y que x ^ (y _ z ) = (x ^ y) _ (x ^ z ). Nota Vene: en general los elementos b0 y b1 de un álgebra de boole son distintos. Se puede probar que si son iguales el álgebra tiene un solo elemento. Si B fuese vacío tendríamos un álgebra de boole vacía donde las operaciones serían las operaciones vacías. Denición 8.36 (Sub-álgebras de Boole) Dada un álgebra de boole hB; _; ^i, diremos que hS; _; ^i es una sub-álgebra de boole de B , si y sólo si S es un álgebra de boole con las mismas operaciones de B y todo x 2 S tiene su complemento en S . En base a esta denición se tiene que toda sub-álgebra de un álgebra de boole con mínimo y máximo distintos contiene al menos esos dos elementos. Para probar que un subconjunto no vacío de un álgebra de boole es un sub-álgebra de boole basta probar que es cerrado bajo las dos operaciones _; ^ y bajo complementos. Esto se formaliza en el siguiente teorema. Ser cerrado bajo complemento signica que cada elemento tiene por complemento el mismo que tenía en el álgebra original. Teorema 8.29 Dada un álgebra de boole hB; _; ^i, un subconjunto no vacío S de B es un sub-álgebra de boole de B si y sólo si para todo x; y 2 S se cumple que x _ y; x ^ y; x 2 S . Más aun, basta probar que es no vacío, cerrado para una de las dos operaciones y que todo elemento tiene su complemento. Corolario 8.30 Dada un álgebra de boole hB; _; ^i, un subconjunto no vacío S de B es un sub-álgebra de boole de B si y sólo si para todo x; y 2 S se cumple que x ^ y; x 2 S . Ejercicio 8.11 Si B ; B son sub-álgebras de boole de B, ¾Será B \ B , subálgebra de B ? 1 2 1 2 Capítulo 8. 96 8.5 Funciones Booleanas Reticulados y Álgebras de Boole Dado B = f0; 1g y dada la relación de orden denida sobre B y dada por f< 0; 0 >; < 0; 1 >; < 1; 1 >g, se probó en el ejemplo 8.1 que hB; i es un álgebra de boole. Luego si denotamos por + y por al supremo y al ínmo, se puede denotar a esta álgebra de boole por hB; +; i. Las tablas de las operaciones + y se dan a continuación. 0 1 + 0 1 0 0 1 0 0 0 1 1 1 1 0 1 Denición 8.37 (Variables Booleanas) Una variable x es booleana si y sólo si toma valores en B. Denición 8.38 (Función Booleana) Una función booleana (o de conmutación) de n variables es una función f : Bn ! B. Representaremos al conjunto de las funciones booleanas en n variables por Fn . En la tabla 8.1 se muestran tres funciones booleanas en dos variables de las 16 que hay. Hay 16 porque a cada una de las 22 tuplas se le puede asignar dos valores: 0 o 1. Recuerde que una función es un conjunto de pares ordenados en el que todos los elementos del conjunto partida aparecen como primera coordenada de exactamente un par. La representación real de la función f de la tabla 8.1 es f<< 0; 0 >; 1 >; << 0; 1 >; 0 >; << 1; 0 >; 0 >; << 1; 1 >; 1 >g. Tabla 8.1: Algunas Funciones Booleanas en 2 Variables. x y f (< x; y >) 0 0 1 1 0 1 0 1 1 0 0 1 x y g(< x; y >) 0 0 1 1 0 1 0 1 0 0 0 0 x y h(< x; y >) 0 0 1 1 0 1 0 1 0 1 1 0 Hay dos maneras equivalentes de mostrar que las funciones booleanas forman un álgebra de boole: el enfoque relacional dene la relación de orden como f g si y sólo si para toda ~x 2 Bn se tiene que f (~x) g(~x). Es claro de esta denición que la función constante 0 es el mínimo y que la función constante 1 es el máximo. Es fácil probar que hFn ; i es un reticulado acotado, distributivo y unívocamente complementado, y en consecuencia: un álgebra de boole. Denición 8.39 (Complemento de una Función Booleana) Dada una función booleana f de n variables su complemento es la función f tal que para toda asignación de las variables se tiene que f (~x) = f (~x). En la tabla 8.1 el complemento de la función f es la función h. (Se obtiene cambiando los ceros por unos y los unos por ceros.) 8.5. Funciones Booleanas Vicente Yriarte 97 Usando el enfoque algebraico, sobre el conjunto de las funciones booleanas en n variables se denen dos operaciones como sigue: (f + g)(x1 ; x2 ; : : : ; xn ) = f (x1 ; x2 ; : : : ; xn ) + g(x1 ; x2 ; : : : ; xn ) (f g)(x1 ; x2 ; : : : ; xn ) = f (x1 ; x2 ; : : : ; xn ) g(x1 ; x2 ; : : : ; xn ) Con estas dos operaciones hFn ; +; :i es un álgebra de boole; se deja como ejercicio. Ejercicio 8.12 Demuestre que el conjunto de las funciones booleanas en n variables con estas dos operaciones es un álgebra de boole. 8.5.1 Expresiones Booleanas Así como las funciones de IR en IR pueden tener varias expresiones algebraicas que las describan en base a la variable x, las funciones booleanas se pueden representar por expresiones algebraicas en base a sus variables. En lo sucesivo trataremos de describir estas expresiones y luego trataremos de hallar expresiones óptimas en el sentido que se hagan menos operaciones al evaluarlas o que se evalúen en menos tiempo. Denición 8.40 (Expresión Booleana) Diremos que e es una expresión booleana en las variables x1 ; x2 ; : : : ; xn si y sólo si cumple con una de las siguientes armaciones: (i ) es xi o es xi , con 1 i n, (ii ) es igual a e1 + e2 o a e1 e2 y e1 , e2 son expresiones booleanas, (iii ) es igual a e1 y e1 es una expresión booleana. Ejemplo 8.2 (Ejemplos de Expresiones Booleanas) Son expresiones booleanas en tres variables: z , xy, xy + z , x + y + z , x, xy + z , xy + xy + z, xy + z , (xy + xy + z)(xz + z + y), xyz , xyz + xyz + y z. Nota: se omitieron los . Una función booleana se puede representar por más de una expresión booleana. Por razones prácticas, estaremos interesados en representar a las funciones booleanas con expresiones óptimas. A continuación damos un ejemplo de cómo obtener la función booleana que representa una determinada expresión booleana (representación algebraica). Ejemplo 8.3 Hallar la función booleana que podemos representar por medio de la siguiente expresión booleana: xz + y. Explicación: Dada la expresión booleana en tres variables xz + y, representamos sus valores en la siguiente tabla para cada una de las posibles combinaciones diferentes que toman las variables y obtenemos la función cuyas imágenes representamos en la tabla en la última columna bajo el nombre de f . Decimos 98 Capítulo 8. Reticulados y Álgebras de Boole Tabla 8.2: Tabla de una Función Booleana. x y z xz f (x; y; z ) = xz + y 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 que f (x; y; z ) = xz + y para signicar que la función booleana que se puede representar con la expresión booleana xz + y la denominaremos f . Nota: La representación algebraica de f no es única; por ejemplo xyz + y es otra representación. Recuerde que la función es el conjunto de los pares ordenados. En el ejemplo 8.3 se presentó el resultado de evaluar una expresión booleana para cada uno de los posibles valores de las variables. El problema inverso es hallar una expresión algebraica para una función de la cual se conoce su valor para cada uno de los valores de las variables. Este problema se resuelve fácilmente si la función en cuestión es no nula sólo para una asignación particular de las variables. Por ejemplo, si f es una función booleana en las variables x; y; z tal que f (< 1; 0; 1 >) = 1 y f (~x) = 0 para toda ~x 6=< 1; 0; 1 >, entonces f (< x; y; z >) = xyz es la expresión buscada. Si, por ejemplo, f es una función booleana sobre las variables x; y; z y se sabe que f (< 1; 1; 0 >) = f (< 1; 1; 1 >) = f (< 0; 0; 1 >) = 1 y f (~x) = 0 para el resto de los ~x, entonces f se puede expresar como f (< x; y; z >) = xy z +xyz + x y z . Vericarlo. Observe que se creó un término por cada evaluación de f con valor no nulo. Toda función booleana se puede expresar como una expresión booleana de esta forma. Esto se formalizará a continuación. 8.5.2 Formas Canónicas y Normales Formas Disyuntivas A continuación presentamos una serie de deniciones que nos serán de mucha utilidad en el momento de hablar sobre funciones booleanas. Denición 8.41 (Literal) Dado un conjunto de variables booleanas x1 ; x2 ; : : : ; xn se denomina literal a cada una de dichas variables o a sus complementos. 8.5. Funciones Booleanas Vicente Yriarte 99 Denición 8.42 (Término) Un término es una conjunción de literales. Denición 8.43 (Conjunción Fundamental) Una conjunción fundamental de un conjunto de variables x1 ; x2 ; : : : ; xn es un término de la forma y1; y2 ; : : : ; yn donde yi = xi o yi = xi . Denición 8.44 (Forma Canónica Disyuntiva) Una representación de una función f como una suma (disyunción) de conjunciones fundamentales se denomina forma canónica disyuntiva de la función f . Denición 8.45 (Forma Normal Disyuntiva) Una representación de una función f como una suma (disyunción) de conjunciones se denomina forma normal disyuntiva de la función f . Teorema 8.31 En el álgebra de boole de las funciones booleanas de n variables, los átomos son las conjunciones fundamentales. Prueba: Si f es una conjunción fundamental, es no nula sólo para una de las asignaciones de las variables x1 ; : : : ; xn . Luego, si g < f se tiene que g es nula para toda asignación que lo es f , y como f 6= g se tiene que g = 0. Luego f es un átomo por tener un único predecesor. 2 Corolario 8.32 El álgebra de boole de las funciones de n variables tiene 2n átomos y 2(2n) funciones. Teorema 8.33 Toda función booleana f : Bn ! B no nula tiene una única for- ma canónica disyuntiva.(salvo por el orden de las conjunciones fundamentales.) Prueba: Como hFn ; i es un álgebra de boole, cada uno de sus elementos se puede expresar como disyunción de átomos y los átomos en Fn son justamente las conjunciones fundamentales. 2 Ejemplo 8.4 Halle la forma canónica disyuntiva de la función g(< x; y; z >) = xy + z y. Respuesta: Introduciremos las variables que faltan sin que se altere la función. Como z + z = 1 y x + x = 1, se tiene que g(< x; y; z >) = xy + z y = xy(z + z)+(x + x)z y y en consecuencia que g(< x; y; z >) = xyz + xy z +xz y + x z y. Ejemplo 8.5 Halle la forma canónica disyuntiva de la función g(< u; x; y; z >) = xz + xz y + ux y. Respuesta: Consideremos cada término por separado: xz = (u + u)x(y + y)z = uxyz + u xyz + ux y z + u x y z xz y = (u + u)x y z = ux y z + u x y z 100 Capítulo 8. Reticulados y Álgebras de Boole u x y = u x y(z + z ) = u x y z + u x y z Usando la propiedad de idempotencia se tiene que la forma canónica disyuntiva de g es: g(< u; x; y; z >) = uxyz + u xyz + ux y z + u x y z + ux y z + u x y z + u x y z Ejercicio 8.13 Halle la forma canónica disyuntiva de las funciones f (< u; x; y; z >) = xy + ux y + ux y +u x, y g(< u; x; y; z >) = ux y +yz + x Comentario: En el álgebra de boole de las funciones booleanas con n variables el máximo es la función f = 1 que es la función que da 1 para toda evaluación de las variables, esto es, f (~x) = 1 para todo ~x 2 Bn y el mínimo es la función f tal que para todo ~x 2 Bn se tiene que f (~x) = 0 y que se representa por 0. Como las funciones de la forma y y yn con yi literales son justamente los átomos de esta álgebra de boole se tiene que el resto de las funciones se pueden expresar como suma de ellas. Si se considera Fn sin la función constante 0, los 1 2 elementos minimales de este subconjunto son justamente las conjunciones fundamentales. Es por ello que se les suele denominar mini-términos (términos minimales...). Cada mini término se puede expresar como un número en notación binaria en base a que sus literales sean xi o xi y asociarle el correspondiente número en notación decimal. Así P la función g(< x; y; z >) = xyz + xy z +xz y + x z y se puede representar por m (1; 5; 6; 7). Formas Conjuntivas Así como la función xyz vale 1 si y sólo si x = 1 ^ y = 1 ^ z = 1 la función x + y + z vale cero si y sólo si x = 0 ^ y = 0 ^ z = 0. Puede probarse que las funciones de la forma y1 + y2 + + yn donde los yi son literales son los co-átomos del álgebra de boole de las funciones booleanas con n variables y en consecuencia toda función boolena de n variables se puede expresar como un producto de este tipo de funciones. Denición 8.46 (Disyunción Fundamental) Una disjunción fundamental de un conjunto de variables x1 ; x2 ; : : : ; xn es una expresión de la forma y1 + y2 + + yn donde yi = xi o yi = xi . Denición 8.47 (Forma Canónica Conjuntiva) Una representación de una función f como un producto (conjunción) de disyunciones (sumas) fundamentales se denomina forma canónica conjuntiva de la función f . Denición 8.48 (Forma Normal Conjuntiva) Una representación de una función f como un producto (conjunción) de disyunciones se denomina forma normal conjuntiva de la función f . 8.6. Ejercicios Vicente Yriarte 101 8.6 Ejercicios 1. Denotamos al conjunto de las funciones booleanas de n variables por Fn = ff=f : B n ! B g con B = f0; 1g. ¾Cuántos átomos tiene hFn ; i? 2. Demuestre que toda cadena es distributiva. 3. Demuestre que si hL; i es una cadena de altura mayor o igual que tres, no es complementada. 4. Halle una condición necesaria y suciente para que el reticulado hDn ; ji sea un álgebra de boole. (Nota: n denota al conjunto de los divisores de y j denota a la relación de divisibilidad.) 5. Demuestre que en un álgebra de boole con n átomos a1 ; a2 ; : : : ; an el máximo es a1 _ a2 _ _ an . 6. Demuestre que si dos álgebras de boole tienen igual número de átomos, son isomorfas. 7. Probar que si hB1 ; 1 i y hB2 ; 2 i son álgebras de boole, entonces hB1 B2 ; i es un álgebra de boole si se dene como: < a1 ; a2 >< a01 ; a02 >() a1 1 a01 ^ a2 2 a02 . 8. Demuestre que la intersección de dos sub-álgebras es una sub-álgebra. 9. Demostrar que: (a) y x si y sólo si x ^ y = b0 (b) x y si y sólo si x _ y = b1. 10. Demuestre que si Aa = fa1; : : : ; an g y Ab = fb1; : : : ; bn g son los átomos de las álgebras de boole A y B respectivamente, entonces A y B son isomorfas. 11. Demuestre que un sub-conjunto S de un álgebra de boole B , es un subálgebra de boole de B si y sólo si para todo a; b 2 S , se tiene que a _ 2 S . Demuestre además, que si S es una sub-álgebra, entonces bb;0; ab1 ^2 b;S a¾Cuántas sub-álgebras tiene hP (A); i si A = fa; b; cg? 12. Dada un álgebra de boole hB; _; ^i, demuestre que un subconjunto S de B es una sub-álgebra si y sólo si b1 2 S y para todo a; b 2 S se tiene que a ^ b 2 S. 13. Demuestre que si en un álgebra de boole B la altura del elemento x que denotaremos por alt (x) es mayor o igual que 2, entonces existen y; z 2 B tales que x = y _ z , alt (y) < alt (x) y alt (z ) < alt (x). 14. Demuestre que si hB; i es un álgebra de boole y un elemento tiene un solo predecesor inmediato, entonces es un átomo. D n 102 Capítulo 8. Reticulados y Álgebras de Boole 15. Dado el CPO hA; i se dene la relación como a b , b a. Demuestre que: (a) hA; i es un CPO (b) Si hA; i es un reticulado, entonces hA; i también es un reticulado y que sup (x; y) = inf (x; y) e inf (x; y) = sup (x; y) (c) Si hA; i es un reticulado acotado, entonces hA; i también lo es y max (A) = min (A) y min (A) = max (A) (d) Si hA; i es un álgebra de boole, entonces hA; i también lo es, y son isomorfas. 16. Sean B1 y B2 dos álgebras de boole y sea f : B1 ! B2 una función biyectiva tal que para todo a; b 2 B1 se tiene que f (a _ b) = f (a) _ f (b) y f (a) = f (a). Demuestre que f es un isomorsmo entre álgebras de boole. 17. Demuestre que un reticulado es distributivo si y sólo si no contiene un subreticulado isomorfo a los de la gura: @ @@ @@ r r d @@ r r @@ e e r b d @ r c ( a) @@ @ @@ QQQ QQ a a r r b r r c (b) 18. Diga cuáles de las armaciones siguientes son verdaderas y cuáles falsas. (a) Todo subconjunto de un reticulado, que es un reticulado, es un subreticulado. (b) Todas las álgebras de booel nitas son isomorfas. (c) Todo sub-cpo de un reticulado es un reticulado. (d) Toda cadena es distributiva. (e) Todas las álgebras de boole de n átomos son isomorfas. (f) Existen sub-conjuntos de un álgebra de boole cerrados para _ y para ^ que aun siendo álgebras, no son sub-álgebras. (g) Todo reticulado es distributivo. (h) En un reticulado, el complemento de un elemento es único. (i) Un sub-álgebra de boole puede tener un máximo que no sea el del álgebra. (j) Todo elemento de un álgebra de boole distinto del máximo, se puede expresar como conjunción de coátomos.