75
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE FÍSICA Y MATEMÁTICAS LATTICES FINITAS TESIS QUE PRESENTA: CRISPÍN HERRERA YÁÑEZ PARA OBTENER EL TÍTULO DE: LICENCIADO EN FÍSICA Y MATEMÁTICAS ASESOR: DR. ADRIÁN ALCÁNTAR TORRES México, D.F. Diciembre de 2008

LATTICES FINITAS - tesis.ipn.mx

  • Upload
    others

  • View
    24

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LATTICES FINITAS - tesis.ipn.mx

INSTITUTO POLITÉCNICO NACIONALESCUELA SUPERIOR DE FÍSICA Y MATEMÁTICAS

LATTICES FINITAS

TESIS QUE PRESENTA:

CRISPÍN HERRERA YÁÑEZ

PARA OBTENER EL TÍTULO DE:

LICENCIADO EN FÍSICA Y MATEMÁTICAS

ASESOR:

DR. ADRIÁN ALCÁNTAR TORRES

México, D.F. Diciembre de 2008

Page 2: LATTICES FINITAS - tesis.ipn.mx

ii

Page 3: LATTICES FINITAS - tesis.ipn.mx

Agradecimientos

Aprovecho este espacio para agradecer a todas aquellas personas que hicieron posiblela realización de este trabajo de tesis.

Primeramente a mis padres Margarita Yáñez López y Crispín Herrera Yáñez por suapoyo y consejo.

A mis hermanas Lorena, Gabriela, Ivonne y Karla por su amor y enseñanzas.

Al Dr. Adrián Alcántar Torres por la dirección de este trabajo y guía en el área.

A mis amigos dentro y fuera de la carrera.

Finalmente a Dios por permitirme tener un desarrollo profesional.

Page 4: LATTICES FINITAS - tesis.ipn.mx

iv AGRADECIMIENTOS

Page 5: LATTICES FINITAS - tesis.ipn.mx

Resúmen

Sea L = (L,v) un conjunto parcialmente ordenado y ≺ la correspondiente relaciónde cubiertas. Se presentan programas en C++ que calculan los siguientes: una extensiónlineal para el orden v, se calcula v a partir de ≺ y visceversa, se determina cuando lacerradura transitiva de una relación binaria es un orden, se determina si v define unalattice y en caso afirmativo se calculan las tablas de multiplicar u y t y se calculanlas anticadenas de (L,v). Se describen las algebras de Boole como un tipo especialde lattice con más aplicaciones y se presenta una aplicación conocida para simplificarcircuitos. Finalmente se describe un algoritmo para calcular todos los representantes delas lattices con n elementos con la relación “ser isomorfo.”

Page 6: LATTICES FINITAS - tesis.ipn.mx

vi RESÚMEN

Page 7: LATTICES FINITAS - tesis.ipn.mx

Índice general

Agradecimientos iii

Resúmen v

1. Conceptos Básicos 11.1. Conjuntos Parcialmente Ordenados . . . . . . . . . . . . . . . . . . . . . 11.2. Conjuntos Parcialmente Ordenados como Gráficas . . . . . . . . . . . . . 31.3. Cerradura Transitiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4. Conjuntos Parcialmente Ordenados Graduados . . . . . . . . . . . . . . . 71.5. Propiedades de Lattices . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.6. Cota para el Número de Líneas en un Diagrama de Hass . . . . . . . . . 161.7. Cálculos mediante C++ . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2. Álgebras de Boole 372.1. Lattices Distributivas y Modulares . . . . . . . . . . . . . . . . . . . . . 372.2. Polinomios de Boole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.3. Forma Minima de los Polinomios de Boole . . . . . . . . . . . . . . . . . 532.4. Circuitos Eléctricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

3. Generación de Lattices Finitas 593.1. Lattices Canónicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613.2. Árbol de Lattices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Bibliografía 67

vii

Page 8: LATTICES FINITAS - tesis.ipn.mx

viii ÍNDICE GENERAL

Page 9: LATTICES FINITAS - tesis.ipn.mx

Capítulo 1

Conceptos Básicos

Para comenzar la presente exposición se definen algunos conceptos de la teoría deconjuntos y de relaciones para poder establecer las propiedades básicas de los conjuntosparcialmente ordenados.

1.1. Conjuntos Parcialmente Ordenados

Sean A y B dos conjuntos no vacíos, para a ∈ A y b ∈ B se define la pareja orde-nada (a, b) := {{a}, {a, b}}; su primera componente es a y su segunda componente es b.Notemos que (a, b) = (a′, b′) si, y solamente si, a = a′ y b = b′.

En efecto, si (a, b) = (a′, b′) por definición equivale a {{a}, {a, b}} = {{a′}, {a′, b′}}.Tenemos dos casos {a} = {a′} o {a} = {a′, b′}, si {a} = {a′} entonces a = a′ y {a, b} ={a′, b′} luego también b = b′. Si {a} = {a′, b′} por el cardinal tenemos que a = a′ = b′

luego {{a}, {a, b}} = {{a′}, {a′, b′}} = {a′} = {a} y nuevamente por el cardinal a = b.En ambos casos a = a′ y b = b′. Por otra parte es inmediato que si a = a′ y b = b′

entonces {{a}, {a, b}} = {{a′}, {a′, b′}}.El producto cartesiano de los conjuntos A y B es el conjunto A× B = {(a, b) : a ∈

A y b ∈ B}. El conjunto A× ∅ está bien definido y además es vacío pues al suponerque no, cuando tomamos (a, b) ∈ A× ∅ tenemos que a ∈ A y b ∈ ∅ lo cual es unacontradicción pues no existe ningún elemento en el vacío. Luego, tenemos que A× ∅ =∅ × B = ∅ × ∅ = ∅.

Sean A y B dos conjuntos. Una relación R de A a B es un subconjunto de A× B. Enel caso de que A = B, para abreviar decimos que R es una relación sobre A. Si (a, b) ∈ Rentonces escribimos aRb (a ∼ b) y decimos que a esta R-relacionado con b. Además si ano está R-relacionado con b, escribimos a�R b (a � b). Cuando no se presta a confusionespodemos sustituir R-relacionados por relacionados.

Para una relación R sobre A y B ⊆ A, definimos R|B = R ∩ (B× B).Una función f de A a B, denotado por f : A → B, es una relación de A a B tal

que para todo a ∈ A existe b ∈ B para los cuales (a, b) ∈ f que cumple la condición si(a, b), (a, b′) ∈ f , entonces b = b′. Se escribe b = f(a) para el único b tal que (a, b) ∈ f . Ase llama el dominio de la función f y B se llama el contradominio.

1

Page 10: LATTICES FINITAS - tesis.ipn.mx

2 CAPÍTULO 1. CONCEPTOS BÁSICOS

Se escribe f(C) := {b ∈ B : b = f(a) para algún a ∈ C} para C ⊆ A y se llamaimagen de C bajo f .

f−1(D) = {a ∈ A : f(a) ∈ D} para D ⊆ B se llama la imagen inversa de D bajo f .Para una b ∈ B tal que existe a ∈ A con f(a) = b, a se llama la preimagen de b.f |C es la función con dominio C y se llama restricción de f a C.f se dice sobre o suprayectiva si cada elemento del contradominio tiene una preimagen

en el dominio.f se dice inyectiva si para a, a′ ∈ A con f(a) = f(a′), implica que a = a′.f es biyectiva si es inyectiva y suprayectiva y en este último caso se puede definir la

función inversa f−1 : B → A que a cada b ∈ B le asocia el a con f(a) = b y se denotapor f−1(b) = a.

Una relación R sobre un conjunto A puede cumplir las siguientes propiedades:R es reflexiva si aRa para todo a ∈ R

R es simétrica si aRb implica bRa para todo a, b ∈ R

R es antisimétrica si para todo a, b ∈ R, aRb y bRa implica que a = b

R es transitiva si para todo a, b, c ∈ R, aRb y bRc implica aRc

Una relación R sobre A es de equivalencia si es reflexiva, simétrica y transitiva.Para a ∈ A se define la clase de equivalencia de a como [a] := {b ∈ A : aRb}.

Definición 1.1.1 Una relación R sobre un conjunto A se dice una relación de ordenparcial si R es reflexiva, antisimétrica y transitiva. A la pareja (A, R) se le llama con-junto parcialmente ordenado. Si B ⊆ A a la pareja (B, R|B) la nombramos subconjuntoparcialmente ordenado de (A, R).

Para denotar una relación de orden parcial usualmente se escribe ≤ en vez de R; aquíse hace la convención de que ≤ se reserva para el orden usual en los números reales yutilizaremos v para denotar un orden parcial arbitrario y se abrevia P para (P,v).

Dado un conjunto parcialmente ordenado (A,v), definimos al conjunto parcialmenteordenado (A,w) mediante la siguiente relación:

x w y ⇔ y v x (x, y ∈ A).

Definición 1.1.2 Una relación de orden parcial v sobre P es un orden lineal si paracada a, b ∈ P sucede alguna de a v b o b v a. A la pareja (P,v) se le llama conjuntolinealmente ordenado o cadena.

Definición 1.1.3 Sea P un conjunto parcialmente ordenado. Para a, b ∈ P al conjunto[a, b] := {p ∈ P |a v p v b} lo llamaremos intervalo. Si el intervalo [a, b] contieneúnicamente a los elementos a, b y estos son diferentes entre sí, entonces denotamos pora ≺ b la relación a v b y decimos que a es una cubierta inferior de b y que b es unacubierta superior para a.

Page 11: LATTICES FINITAS - tesis.ipn.mx

1.2. CONJUNTOS PARCIALMENTE ORDENADOS COMO GRÁFICAS 3

1.2. Conjuntos Parcialmente Ordenados como Gráficas

Definición 1.2.1 Un gráfica (dirigida) es una pareja (V, E), en donde V es un conjuntoy E es una relación sobre V . A los elementos de V se les llama vértices (nodos o puntos)y a los elementos de E se les llama líneas o aristas.

Debido a la definición anterior un conjunto parcialmente ordenado es una gráfica.La utilidad de tomar en cuenta que un conjunto parcialmente ordenado es una gráficaradica en que las herramientas para representar una gráfica nos sirven para representarun conjunto parcialmente ordenado tomando en cuenta las consideraciones pertinentes.

La manera de representar una gráfica es dibujando un punto para cada vértice y unalínea dirigida uniendo al vértice a con el vértice b si la pareja (a, b) es una arista.

Las siguientes son ejemplos de gráficas.Sea V = {1, . . . , 10} y E = {(3, 1), (5, 3), (6, 5), (4, 2), (6, 4), (8, 6), (7, 6), (10, 8), (9, 7),

(10, 9)} con representación en la figura 1.1.

tt t

tt

t

tt

tt

.........................................................................................

.........................................................................................

....................................................................................................................................

....................................................................................................................

..................................................................................................................................

......................................................................................

......................................................................................

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

........

...............................................................................................

HH

H

HH

H

HH

H

H

H

1

3

5

8

6

10

2

4

9

7

Figura 1.1:

Sea V = {1, 2, 3, 4, 5} y E = {(2, 1), (3, 2), (4, 3), (5, 4), (1, 5)} con representación enla figura 1.2.

tt

t tt

..............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................H

H

HJ

N

1

2

34

5

Figura 1.2:

Page 12: LATTICES FINITAS - tesis.ipn.mx

4 CAPÍTULO 1. CONCEPTOS BÁSICOS

A una gráfica (V, E) podemos asociarle su matriz de adyacencia. Si |V | = n sinpérdida de generalidad podemos definir V = {1, . . . , n} y entonces la matriz adyacentede (V, E) es una matriz A de tamaño n×n cuyas entradas únicamente son unos y ceros,i.e., A(i, j) = 1 si, y sólo si, (i, j) ∈ E.

EjemplosPara la gráfica de la figura 1.1 la matriz de adyacencia es la siguiente:

0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 01 0 0 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0 00 0 1 0 0 0 0 0 0 00 0 0 1 1 0 0 0 0 00 0 0 0 0 1 0 0 0 00 0 0 0 0 1 0 0 0 00 0 0 0 0 0 1 0 0 00 0 0 0 0 0 0 1 1 0

Para la gráfica de la figura 1.2 la matriz de adyacencia es la siguiente:

0 0 0 0 11 0 0 0 00 1 0 0 00 0 1 0 00 0 0 1 0

Para la representación mediante un diagrama de un conjunto parcialmente ordenado

(P,v) lo que se hace es representar a (P,≺); si a ≺ b, a, b ∈ P entonces se dibuja a amás abajo que a b y se unen con la respectiva línea (no dirigida). A tal representación sele conoce como diagrama de Hass.

EjemplosSea P = {1, . . . , 8} y la relación sobre P definida por la matriz de adyacencia:

1 0 0 0 0 0 0 01 1 0 0 0 0 0 01 0 1 0 0 0 0 01 0 0 1 0 0 0 01 1 1 0 1 0 0 01 1 0 1 0 1 0 01 0 1 1 0 0 1 01 1 1 1 1 1 1 1

Unos breves cálculos nos muestran que la relación definida por la matriz es una

relación de orden parcial y a continuación se presenta la matriz adyacente a (P,≺) y eldiagrama de Hass se muestra en la figura 1.3.

Page 13: LATTICES FINITAS - tesis.ipn.mx

1.2. CONJUNTOS PARCIALMENTE ORDENADOS COMO GRÁFICAS 5

0 0 0 0 0 0 0 01 0 0 0 0 0 0 01 0 0 0 0 0 0 01 0 0 0 0 0 0 00 1 1 0 0 0 0 00 1 0 1 0 0 0 00 0 1 1 0 0 0 00 0 0 0 1 1 1 0

t

t t t

t t t

t

.........................................................................................................................................................................................................................

...............................................................................................................................................................

........................................................................................................................................................................................................................................................................................................................................................................................

.........................................................................................................................................................................................................................

.........................................................................................................................................................................................................................

.........................................................................................................................................................................................................................

...............................................................................................................................................................

.........................................................................................................................................................................................................................

..........................

..........................

..........................

..........................

..........................

..........................

..........................

..........................

.........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

.........

.........................................................................................................................................................................................................................

1

2 3 4

5 6 7

8

Figura 1.3:

Hagamos una permutación de las etiquetas de los elementos del conjunto parcialmenteordenado representado en la figura 1.3 para que quede del modo representado en lafigura 1.4.

De este modo la matriz de adyacencia de la gráfica definida por el diagrama de Hassde la figura 1.4 es la siguiente:

1 0 1 1 0 0 0 11 1 1 1 1 1 1 10 0 1 0 0 0 0 00 0 1 1 0 0 0 00 0 1 0 1 0 0 00 0 1 1 1 1 0 00 0 1 0 1 0 1 10 0 1 0 0 0 0 1

La matriz de adyacencia al conjunto parcialmente ordenado definido por la figura 1.3

es triangular superior y por tanto más ordenada que la matriz adyacente al conjuntoparcialmente ordenado definido por la figura 1.4. En el ejemplo anterior se muestra cómola manera en que se etiquetan los elementos nos permite una representación matricial

Page 14: LATTICES FINITAS - tesis.ipn.mx

6 CAPÍTULO 1. CONCEPTOS BÁSICOS

t

t t t

t t t

t

.........................................................................................................................................................................................................................

...............................................................................................................................................................

........................................................................................................................................................................................................................................................................................................................................................................................

.........................................................................................................................................................................................................................

.........................................................................................................................................................................................................................

.........................................................................................................................................................................................................................

...............................................................................................................................................................

.........................................................................................................................................................................................................................

..........................

..........................

..........................

..........................

..........................

..........................

..........................

..........................

.........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

.........

.........................................................................................................................................................................................................................

3

5 8 4

7 6 1

2

Figura 1.4:

mejor. Para obtener siempre una matriz triangular superior al representar un orden bastacon pedir: i w j implica que i ≥ j.

1.3. Cerradura Transitiva

Sea (V, E) una gráfica.Un arco de a a b es una sucesión de vértices a = v0, . . . , vk = b tales que (vi, vi+1) ∈ E

para i = 0, . . . , i = k − 1.La longitud del arco es k la cual puede tomar el valor cero en cuyo caso es trivial.Un arco de a a a es un ciclo y una gráfica con ciclos triviales es llamada acíclica.La cerradura transitiva de E es la relación E sobre V definida de la siguiente manera:

(a, b) ∈ E si, y sólo si, existe un arco de a a b.

Observación 1.3.1 Sea (V, E) una gráfica. (V, E) es acíclica si, y sólo si, (V, E) es unconjunto parcialmente ordenado.

DemostraciónSi suponemos que (V, E) es acíclica y (a, b), (b, a) ∈ E se tiene entonces que existen

arcos a = v0, . . . , vk = b y a = w0, . . . , wl = b de a a b y de b a a respectivamente conlo cual existe el arco a = u0 = v0, . . . , uk = vk, . . . , uk+l+1 = wk = b de a a a. Como lagráfica (V, E) es aciclica el ciclo (ui)

k+l+1i=0 es trivial y por tanto también lo son (vi)

ki=0

y (wi)ki=0 lo que implica a = b y por tanto que E es antisimétrica.Al permitir ciclos de

longitud cero se tiene (a, a) ∈ E, ∀a ∈ V . De lo anterior se sigue que E es una relaciónde orden parcial.

Recíprocamente si E es una relación de orden parcial por transitividad para todo ciclode a a a se tiene que (a, v), (v, a) ∈ E para todo v en el ciclo. Por ser E antisimétricaa = v y de ahí que (V, E) es acíclica. Como E ⊂ E se tiene que (V, E) es acíclica. �

Page 15: LATTICES FINITAS - tesis.ipn.mx

1.4. CONJUNTOS PARCIALMENTE ORDENADOS GRADUADOS 7

Observación 1.3.2 Sea (P, E) una gráfica y (P,v) un conjunto parcialmente ordenado.La cerradura transitiva de E es v si, y solamente si,

≺⊆ E ⊆v . (*)

DemostraciónNecesidad. Si E =v por definición E ⊆v y a ≺ b implica (a, b) ∈ E. Por definición

la sucesión a, b es un arco respecto a E de a a b, es decir, (a, b) ∈ E.Suficiencia. Claramente la cerradura transitiva de ≺ es v y A ⊆ B implica que A ⊆ B.

Por lo anterior ≺⊆ E implica v⊂ E y E ⊆v implica que E ⊆v. �Como consecuencia de la observación anterior un conjunto finito parcialmente orde-

nado P se puede especificar con el conjunto P y alguna relación E que cumpla (*).

1.4. Conjuntos Parcialmente Ordenados Graduados

Definición 1.4.1 Un orden parcial P = ({1, . . . , n},v) es graduado si:

i ≤ j ⇒ gradP (i) ≤ gradP (j).

A continuación se presenta la justificación de la definición.Sea P un conjunto parcialmente ordenado.a ∈ P es el último elemento de P si a w b, para todo b ∈ P .e ∈ P es el primer elemento de P si e v b, para todo b ∈ P .b ∈ P es un elemento máximo de P si ningún elemento es más grande, i.e., c v x

implica que c = x para todo x ∈ P .d ∈ P es un elemento mínimo de P si x v d implica que x = b para todo x ∈ P .Podemos notar que el primer elemento es un elemento mínimo y que el último elemento

es un elemento máximo.El conjunto de los elementos máximos en un conjunto finito parcialmente ordenado

P se llama el primer nivel de P y se denota por niv1(P ). De manera recurrente se puededefinir el (m + 1)-ésimo nivel de P de la siguiente forma:

nivm+1(P ) := niv1(P \m⋃

i=1

nivi(P ))

Más aún, para a ∈ P denotemos por gradP (a) al grado de a en P, i.e., al número ktal que a ∈ nivk(P ).

Observación 1.4.2 Un elemento a ∈ P pertenece a nivm(P ) si m es el máximo cardinalde una cadena en P con primer elemento a.

Page 16: LATTICES FINITAS - tesis.ipn.mx

8 CAPÍTULO 1. CONCEPTOS BÁSICOS

DemostraciónProbemos esto por inducción sobre m. Si m=1 entonces no existe un a′ ∈ A que sea

mayor que a, de lo contrario se puede formar una cadena en A con primer elemento a ycardinal al menos dos lo cual rompe con la propiedad máxima del cardinal de la cadena.Luego a ∈ niv1(A).

Supongamos que el resultado es válido para k ≤ m. Sea

a = am v am−1 v · · · v a1

una cadena de máximo cardinal con primer elemento a. Se sigue de la propiedadmáxima que

ak v · · · v a1

es una cadena de máximo cardinal con primer elemento ak y por hipótesis de induccióngradP (ak) = k, 1 ≤ k ≤ m. a v am−1 implica que a ∈ P \

⋃m−2i=1 nivi(P ) y no es máximo

en P \⋃m−2

i=1 nivi(P ) luego a ∈ P \⋃m−1

i=1 nivi(P ).Si b ∈ P con a @ b, al tomar una cadena con último elemento a y que contenga a b

concluimos que gradP (b) ≤ m, i.e., a es máximo en⋃m−1

i=1 nivi(P ) y se tiene el resultado.�Como consecuencia inmediata se concluye lo siguiente:

i v j ⇒ gradP (i) ≥ gradP (j).

Teorema 1.4.3 ({1, . . . , n},v) es graduado si, y sólo si,

k⋃h=1

nivh(P ) = {1, . . . , |k⋃

h=1

nivh(P )|} para k = 1, . . . , gradP (n). (1.1)

DemostraciónLa doble implicación se demuestra de la siguiente manera.Necesidad. Sea j ∈

⋃kh=1 nivh(P ) (k ∈ {1, . . . , gradP (n)}), de la definición i ≤ j ⇒ i ∈⋃k

h=1 nivh(P ) y para |⋃k

h=1 nivh(P )| < j se tiene que |⋃k

h=1 nivh(P )| < j = |{1, . . . , j}| ≤|⋃k

h=1 nivh(P )| lo cual es una contradicción. Por lo tanto se cumple la igualdad parak = 1, . . . , gradP (n).

Suficiencia. Para i, j ∈ P con i ≤ j, i, j ∈⋃gradP (j)

h=1 nivh(P ) y así gradP (i) ≤ gradP (j)y se tiene el resultado. �

1.5. Propiedades de LatticesDefinición 1.5.1 Sea (A;v) un conjunto parcialmente ordenado y B ⊆ A.

1. a ∈ A es una cota superior para B si b v a ∀b ∈ B.

Page 17: LATTICES FINITAS - tesis.ipn.mx

1.5. PROPIEDADES DE LATTICES 9

2. a ∈ A es una cota inferior para B si a v b ∀b ∈ B.

3. A la menor de las cotas superiores de B, si existe, se le llama el supremo de B yse denota por sup B.

4. A la mayor de las cotas inferiores de B, si existe, se le llama el ínfimo de B y sedenota por ınf B.

Si B = {a1, . . . , an} entonces escribimos inf(a1, . . . , an) y sup(a1, . . . , an) en lugar deinf{a1, . . . , an} y sup{a1, . . . , an}, respectivamente.

Definición 1.5.2 Un conjunto parcialmente ordenado (L,v) es una lattice ordenada sipara todo a, b ∈ L, los elementos sup(a, b), ınf(a, b) existen en L.

Ejemplos:

1. Si consideramos (M,v) con M 6= ∅ y v un orden lineal sobre M para cada parx, y ∈ M tenemos que se cumple alguna de x v y o y v x, donde sup(x, y) = y yınf(x, y) = x o sup(x, y) = x y ınf(x, y) = y, respectivamente. Así para cada parx, y ∈ M sup(x, y),ınf(x, y) ∈ M luego(M,v) es una lattice por definición.

2. N con la relación a v b si, y solamente si, a|b es una lattice. Primeramente a|a ∀a ∈N entonces a v a.

Si a v b y b v a entonces a|b y b|a ⇒ a = b

Si a v b y b v c entonces a|b y b|c ⇒ b = ap y c = bq para p, q ∈ N ⇒ c = (qp)a ⇒a|cDe lo anterior tenemos quev es una relación de orden parcial. Además para x, y ∈ Ntenemos que

sup(x, y) = mcm(x, y) ınf(x, y) = mcd(x, y)

Por definición x, y|mcm(x, y) ⇒ x, y v mcm(x, y) y entonces mcm(x, y) es unacota superior para {x, y}. Si z es una cota superior para {x, y} entonces x, y|zy por definición de mínimo común múltiplo mcm(x, y)|z ⇒ mcm(x, y) v z ⇒sup(x, y) = mcm(x, y) Por otro lado observemos que mcd(x, y)|x, y ⇒ mcd(x, y) esuna cota inferior para el conjunto {x, y}. Además si z es una cota inferior para {x, y}entonces z|x, y. Por definición de mcd entonces z|mcd(x, y) ⇒ z v mcd(x, y) ⇒ınf(x, y) = mcd(x, y). De lo anterior (N,v) es una lattice.

3. Sea M un conjunto y consideremos (P(M),⊆). Es claro que ⊆ es una relación deorden parcial sobre P(M). Más aún para A, B ∈ M tenemos

sup(A, B) = A ∪B ınf(A, B) = A ∩B

Primero A, B ⊆ A∪B ⇒ A∪B es una cota superior para {A, B}. Si C es una cotasuperior para {A, B} entonces A, B ⊆ C ⇒ A ∪B ⊆ C ⇒ sup(A, B) = A ∪B. En

Page 18: LATTICES FINITAS - tesis.ipn.mx

10 CAPÍTULO 1. CONCEPTOS BÁSICOS

segundo lugar A∩B ⊆ A, B ⇒ A∩B es una cota inferior para {A, B}. Si C es unacota inferior para {A, B} entonces C ⊆ A, B luego C ⊆ A∩B ⇒ ınf(A, B) = A∩B.De lo anterior se prueba que (P(M),⊆) es una lattice.

Observación 1.5.3 Sea (L,v) una lattice ordenada, A = {a1, . . . , an} ⊆ L. A tiene elsupremo e ínfimo en L. Además

ınf A = ınf(ak+1, ınf(a1, . . . , ak)) ysup A = sup(ak+1, sup(a1, . . . , ak))

DemostraciónSea A = {a1, . . . , an}. Probemos el resultado por inducción sobre |A|. Para |A| = 1

claramente sup A = ınf A = a1. Supongamos que el resultado es cierto para |A| = k yprobemos que se cumple para |A| = k + 1. Debido a que |{a1, . . . , ak}| = k por hipótesisde inducción sup(a1, . . . , ak), ınf(a1, . . . , ak) ∈ L. α = ınf(ak+1, ınf(a1, . . . , ak)) ∈ L porser L lattice. Luego α v {ak − 1}, ınf(a1, . . . , ak), es decir, α v ak+1, a1, . . . , ak. Luego αes una cota inferior para A y si β ∈ L es alguna otra cota inferior para A, en particularβ es una cota inferior para {a1, . . . , ak} luego β v ınf(a1, . . . , ak) lo cual implica β v α.Por lo tanto ınf A = α. Análogamente sup A = sup(ak+1, sup(a1 . . . , ak)) ∈ L por ser Llattice. �

A continuación se presenta una definición algebraica de lattice; pero de hecho, semostrará que ambas definiciones son equivalentes.

Definición 1.5.4 Una lattice (algebraica) (L,u,t), es un conjunto L con dos opera-ciones binarias u (intersección o producto) y t (unión o suma) las cuales satisfacen lassiguientes leyes para todo x, y, z ∈ L:

x u y = y u x x t y = y t x (L1)x u (y u z) = (x u y) u z x t (y t z) = (x t y) t z (L2)x u (x t y) = x x t (x u y) = x (L3)

Dos aplicaciones de (L3) son las siguientes

x u x = x u (x t (x u x)) =x

x t x = x t (x u (x t x)) =x

las cuales nos llevan a la siguiente ley adicional:

x u x = x x t x = x (L4)

(L1) es la ley conmutativa, (L2) es la ley asociativa, (L3) es la ley de absorción y (L4)es la ley de idempotencia.

Page 19: LATTICES FINITAS - tesis.ipn.mx

1.5. PROPIEDADES DE LATTICES 11

Notemos que si xuy = x por (L3) xty = (xuy)ty = y y recíprocamente si xty = ypor (L3) x u y = x u (x t y) = x, luego

x u y = x ⇔ x t y = y (1.2)

Debido a (L1) y (L2) para {a1, . . . , an} v L las operaciones siguientes quedan unívo-camente determinadas un

i=1ai := a1u, . . . ,uan y tn1ai := a1t, . . . ,tan.

Teorema 1.5.5 1. Sea (L,v) una lattice ordenada. Si definimos

x u y : = ınf(x, y) x t y : = sup(x, y)

entonces (L,u,t) en una lattice algebraica.

2. Sea (L,u,t) una lattice algebraica. Definimos un orden en L de la siguiente man-era:

x v y ⇔ x u y = x

entonces (L,v) es una lattice ordenada.

Demostración

1. Veamos que (L,u,t) cumple con la definición de lattice algebraica.

x u y = ınf(x, y) = y u x, x t y = sup(x, y) = y t x para todo x, y ∈ L. (Secumple (L1))

Sean x, y, z ∈ L. Para demostrar que (x u y) u z = x u (y u z) por definiciónequivale a demostrar que se cumple ınf(ınf(x, y), z) = ınf(x, ınf(y, z)).Por la observación 1.5.3 ınf(ınf(x, y), z) = ınf(x, y, z) = ınf(x, ınf(y, z)).Análogamente para demostrar que (x t y) t z = x t (y t z) basta probar quesup(sup(x, y), z) = sup(x, sup(y, z)), pero esto se sigue de la observación 1.5.3.(Se cumple (L2))

Para x, y ∈ L tenemos que x u (x t y) = ınf(x, sup(x, y)) = x, pues x vsup(x, y). Análogamente tenemos que xt (xu y) = sup(x, ınf(x, y)) = x, puesınf(x, y) v x. (Se cumple (L3))

Por lo tanto (L,u,t) es una lattice algebraica.

2. Probemos que v es una relación de orden parcial.

Como a u a = a para toda a ∈ L se tiene que a v a. (v es reflexiva)

Si a v b y b v a entonces aub = a y bua = b lo cual impica a = aub = bua = b.(v es antisimétrica)

Si a v b y b v c entonces a u b = a y b u c = b, luego a u c = (a u b) u c =a u (b u c) = a u b = a lo cual implica que a v c. (v es transitiva)

Page 20: LATTICES FINITAS - tesis.ipn.mx

12 CAPÍTULO 1. CONCEPTOS BÁSICOS

Así (L,v) es un conjunto parcialmente ordenado.

Sean a, b ∈ L. Por (L3)

a = a u (a t b), b = b u (a t b) ⇒ a, b v a t b

luego a t b es una cota superior para {a, b}. Si existe c ∈ L una cota superior para{a, b} entonces tenemos que a t c = c y a t b = c, luego por (L2) tenemos que

c t (a t b) = (c t a) t b = c t b = c ⇒a t b v c ⇒ a t b = sup(a, b)

Nuevamente por (L3)

a = a t (a u b) y b = b t (a u b) ⇒ a u b v a, b

luego a u b es una cota inferior para {a, b}. Si c ∈ L una cota inferior para {a, b}entonces a u c = b u b = c y por (L2)

c u (a u b) = (c u a) u b = c u b = c ⇒c v a u b ⇒ a u b = ınf(a, b)

Por lo tanto (L,v)es una lattice ordenada. �

Se sigue del teorema anterior que existe una correspondencia uno a uno entre laslattices algebraicas y las lattices ordenadas y por lo tanto podemos usar el concepto delattice para ambas. Denotemos por L la lattice asociada a las lattices (L,v) y (L,u,t).

Por la observación 1.5.3 y por el teorema 1.5.5 para L, {a1, . . . , an} ⊆ L

ınf(a1, . . . , an) = uni=1ai y sup(a1, . . . , an) = tn

i=1ai.

También por a observación 1.5.3 y por el teorema 1.5.5 toda lattice finita tiene unúltimo y un primer elemento.

Definición 1.5.6 1. Un conjunto parcialmente ordenado M es una unión semilatticesi, y solo si, sup(a, b) existe en M para todo a, b ∈ M .

2. Consideremos (M, ∗), con M un conjunto no vacío y ∗ una operación binaria sobreM . El algebra (M, ∗) es una semilattice si y solo si ∗ es idempotente, asociativa yconmutativa.

Sea L una lattice y sea A un enunciado en L. Si intercambiamos los símbolos u y ten A, nuevamente obtenemos un enunciado en L; esta última se llama el enunciado dualde A y se denota por D(A). Se observa que el enunciado dual del enunciado D(A) es A.Consecuentemente, la dualidad de los enunciados A y D(A) es mutua y frecuentementese suele decir que son duales uno del otro.

Page 21: LATTICES FINITAS - tesis.ipn.mx

1.5. PROPIEDADES DE LATTICES 13

Consideremos un conjunto de proposiciones teóricas de lattice H. Denotamos porD(H) el conjunto de enunciados duales para cada enunciado de H. Un conjunto H parael cual H = D(H) se llama un conjunto de enunciados dual en sí mismo.

Un enunciado B es corolario de H = {Aγ} si B se puede probar al utilizar los A′γs. Si

podemos probar B a partir de H, entonces obtenemos una prueba del enunciado D(B)por los enunciados D(H). Luego, B es un corolario de H si, y solamente si, D(B) es uncorolario de D(H).

Cuando tenemos H = D(H) si un enunciado B se obtiene de H, entonces el dual D(B)de B también se obtiene de D(H).

Los axiomas de lattice que aparecen en L1 son duales uno del otro y de igual maneraocurre en L2 y L3; así, el conjunto de axiomas que aparecen en L1, L2 y L3 es dual en símismo. A partir de lo anterior podemos establecer el siguiente:

Principio de Dualidad 1.5.7 Cualquier enunciado que envuelve las operaciones u yt que sea válido en una lattice (L,u,t) también es válido si se reemplaza u por t y tpor u en todas partes del enunciado.

Se definen las siguientes operaciones sobre L:

a ∧ b = a t b

a ∨ b = a u b

∀a, b ∈ L.

Por el principio de dualidad (L,∧,∨) define una nueva lattice. Esta nueva lattice sellama la lattice dual de L y se denota por D(L). Podemos notar que se cumple la siguienteigualdad D(D(L)) = L. Puede ocurrir que D(L) ≈ L y en este caso se dice que L es dualen sí misma.

Lema 1.5.8 Sea L una lattice.

y v z ⇒ x u y v x u z , x t y v x t z

para toda x, y, z ∈ L.

Demostración

y v z ⇒ x u y = (x u x) u (y u z) = (x u y) u (x u z) ⇒ x u y v x u z.

La segunda fórmula se verifica por dualidad. �

Teorema 1.5.9 Los elementos de una lattice satisfacen las siguientes desigualdades dis-tributivas:

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

(x t y) u (x t z) w x t (y u z).

Page 22: LATTICES FINITAS - tesis.ipn.mx

14 CAPÍTULO 1. CONCEPTOS BÁSICOS

y también satisfacen las siguientes desigualdades modulares:

x w z ⇒ x u (y t z) w (x u y) t z = (x u y) t (x u z),

x v z ⇒ x t (y u z) v (x t y) u z = (x t y) u (x t z).

DemostraciónTenemos que (xu y) v x y (xu z) v x. Entonces (xu y)t (xu z) v x. Por otra parte

(xuy) v y y (xuz) v z. Por el lema anterior (xuy)t (xuz) v yt (xuz) v ytz. Luegox y yt) son cotas superiores para {(x u y), (x u z)} y así (x u y) t (x u z) v x u (y t z).

La segunda desigualdad se cumple por dualidad y las desigualdades modulares sonun caso especial de las distributivas. �

Definición 1.5.10 Sea L una lattice y S ⊆ L. S es una sublattice de L si (S,u|S,t|S)es una lattice.

Sean L y M lattices. Una función f : L → M se dice:

unión homomorfismo si, y sólo si, f(x t y) = f(x) t f(y),

intersección homomorfismo si, y sólo si, f(x u y) = f(x) u f(y),

orden homomorfismo si x v y implica que f(x) v f(y)

para todo x, y ∈ L.Decimos que f es un homomorfismo de lattices (cuando no se preste a confusión se

utilizará homomorfismo) si es unión e intersección homomorfismo.Un homomorfismo de lattices que sea inyectivo, suprayectivo o biyectivo se llama

monomorfismo, epimorfismo o isomorfismo respectivamente.Si existe un isomorfismo de L a M, entonces se dice que L y M son isomorfas y esto

se denota por L ≈ M.

Lema 1.5.11 Un conjunto finito parcialmente ordenado (L,v) con un último(primer)elemento y en el cual para todo x, y ∈ L, ınf(x, y) ∈ L(sup(x, y) ∈ L) es una lattice.

DemostraciónSólo basta demostrar que para todo x, y ∈ L, sup(x, y) ∈ L. Como L tiene un último

elemento L 6= ∅, sean pues a, b ∈ L. Sea p una cota superior para {a, b}, el cual siempreexiste porque podemos tomar al último elemento como p. Si p = sup(a, b) ya terminamos;de lo contrario existe p′ tal que p′ v p o p′ �v p.

Si p′ �v p consideremos ınf(p, p′) y como p y p′ son dos cotas superiores de {a, b}entonces a su vez a,b son cotas superiores de {p, p′} luego a, b v ınf(a, b), i.e., ınf(a, b)es una cota superior de {a, b}. Luego si p no es el supremo de {a, b} existe p1 = p′

una cota superior para {a, b} tal que p v p1. Si p1 es el supremo de {a, b} terminamos,de lo contrario, existe p2 (que se construye de la manera en que se construye p′) unacota superior para {a, b} tal que p2 v p1. Siguiendo recurrentemente el procedimiento

Page 23: LATTICES FINITAS - tesis.ipn.mx

1.5. PROPIEDADES DE LATTICES 15

podemos encontrar pn, . . . , p1 cotas superiores de {a, b} tal que pn v, . . . ,v p1. Como Les finito el proceso no puede continuar indefinidamente, por lo que existe un índice k ∈ Ntal que pk ∈ L es el supremo de {a, b}. Por lo tanto (L,v) es una lattice.

Por el principio de dualidad se cumple con supremo. �

Definiciones 1.5.12 Sea (P,v) un conjunto parcialmente ordenado.

Para S ⊆ P definimos al conjunto inferior generado por S como↓ S = {p ∈ P |p v s para algún s ∈ S} y definimos al conjunto superior generadopor S como ↑ S = {p ∈ P |s v p para algún s ∈ S}.

Sea Q ⊂ P . Si v |Q es la relación identidad en Q entonces Q es una anticadena.

Definiciones 1.5.13 Sea L una lattice.

a ∈ L se dice unión irreducible si para todo b, c ∈ L

a = b t c ⇒ a = b o a = c.

a ∈ L se dice intersección irreducible si para todo a, b ∈ L

a = b u c ⇒ a = b o a = c.

Si L tiene un primer elemento c, entonces a ∈ L es un átomo si a no es el primerelemento de L y para todo b ∈ L \ {c}

c v b v a ⇒ b = a.

Si L tiene un último elemento c, entonces a ∈ L es un coátomo si a no es el últimoelemento de L y para todo b ∈ L \ {c}

a v b v c ⇒ b = a.

Lema 1.5.14 Sea L una lattice finita y a ∈ L que no es el primer ni último elemento.Entonces (L′ = L \ {a},v |L′) es una lattice si, y solamente si, a es unión o intersecciónirreducible en L.

DemostraciónNecesidad. Supongamos que a no es unión ni intersección irreducible. Entonces existen

b, c, d, e ∈ L diferentes de a tales que ınfL(b, c) = a = supL(d, e). Si f es una cota inferiorpara {b, c} y una cota superior para d, e entonces

a = supL

(e, d) v f v ınfL

(b, c) = a ⇒ f = a

Como L′ es una lattice sup |L′(e, d), ınf |L′(b, c) ∈ L′. Por transitividad b y c soncotas superiores para {d, e} y d y e son cotas inferiores para {b, c} ⇒ ınf |L′(b, c) =

Page 24: LATTICES FINITAS - tesis.ipn.mx

16 CAPÍTULO 1. CONCEPTOS BÁSICOS

sup |L′(d, e) = a ∈ L \ {a} #. Por lo tanto a es unión o intersección irreducible (noimportando si L es finita o no).

Suficiencia. Como L es finita L tiene un último elemento y como a no es el últimoelemento de L, L′ tiene un último elemento. Si a es intersección irreducible ∀b, c ∈ L′,b u c 6= a, i.e., b u |L′c ∈ L′. Por el lema 1.5.11 L′ es una lattice. Por el principio dedualidad si a es unión irreducible L′ es una lattice. �

Por el lema anterior si quitamos átomos a una lattice finita entonces obtenemos latticescon menos elementos. También podemos obtener lattices al añadir átomos a una latticefinita.

1.6. Cota para el Número de Líneas en un Diagramade Hass

Consideremos a (M,v) una semilattice con n elementos. Sea e = |E| donde E es unarelación que cumple (∗). Si hacemos E =≺ usemos la notación e = e≺, i.e., el numero delíneas en el diagrama de Hass.

Teorema 1.6.1 En una semilattice con n elementos se tiene:

n− 1 ≤ e≺ ≤ n3/2.

DemostraciónSea M una intersección semilattice. Sea C(x) = {y ∈ M | y ≺ x}. Si z ∈ C(x)∩C(y)

y x 6= y entonces z = xu y. Así que para x 6= y, C(x)∩C(y) es vacío o a lo más tiene unelemento de donde se sigue que C(x) ∪ {x} y C(y) ∪ {y} no pueden tener subconjuntosde dos elementos en común. Si tomamos M = {0, 1, . . . , n− 1} y ci = |C(i)| tenemos

n−1∑i=0

(ci + 1

2

)≤

(n2

)

y con un poco de algebra se obtiene∑n−1

i=0 C2i ≤ n2. Por otra parte tenemos que e≺ =∑n−1

i=0 ci y usando la desigualdad de Cauchy-Schwarz

(e≺n

)2

=

(c0+, . . . , cn−1

n

)2

≤ c20

n+, . . . , +

c2n−1

n≤ n

de donde se obtiene e2≺ ≤ n3 . �

Page 25: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 17

1.7. Cálculos mediante C++En la presente sección se presentan algunos programas en C++ para facilitar el estudio

de lattices finitas; aquí podemos considerar a un conjunto parcialmente ordenado finito(P,w) tomando P = {1, 2, . . . , n− 1, 0} y a w lo tomamos como la matriz de adyacenciacorrespondiente.

Figura 1.5: Ejemplo para calcular una extensión lineal

A continuación se describen algunas funciones que se necesitan para la mayoría de losprogramas.

Las bibliotecas a utilizar son las siguientes:

#include < iostream >

#include < fstream >

Se definen:

typedef int Scalar;typedef Scalar ∗ V ector;typedef V ector ∗ Matrix;typedef Matrix ∗ Tensor;

Page 26: LATTICES FINITAS - tesis.ipn.mx

18 CAPÍTULO 1. CONCEPTOS BÁSICOS

Crea espacio para un arreglo tri-dimensional, en donde los argumentos son T paradesignar el nombre del arreglo y el tamaño es n por m por l :

void CreateSpaceForTensor( Tensor& T, int n, int m, int l){

T = new Matrix[n];for ( int i=0; i<n;i++)

T[i] = new Vector[m];for ( int i=0; i<n; i++)

for ( int j=0; j<m; j++)T[i][j] = new Scalar[l];

for ( int i=0; i<n;i++)for ( int j=0; j<m;j++)

for ( int k=0; k<l; k++)T[i][j][k]=0;

}

Desocupa el espacio de un arreglo tri-dimensional de nombre T y de tamanño n porm por l:

void DeleteSpaceForTensor( Tensor T, int n, int m, int l=0){

for ( int i=0; i<n;i++)for ( int j=0; j<m;j++){

delete [] T[i][j];}

for ( int i=0; i<n; i++)delete [] T[i];

delete [] T;}

Crea espacio para un arreglo bi-dimensional, en donde los argumentos son M paradesignar el nombre del arreglo y el tamaño es n por m :

void CreateSpaceForMatrix( Matrix& M, int n, int m){

M = new V ector[n];for( int i = 0; i < n; i + + )

M [i] = new Scalar[m];for( int r = 0; r < n; r + + )

for( int c = 0; c < m; c + + )M [r][c] = 0;

}

Desocupa el espacio de un areglo bi-dimensional de nombre M :

Page 27: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 19

void DeleteSpaceForMatrix( Matrix M, int n, int m = 0){

for( int i = 0; i < n; i + + )delete[] M [i];

delete[] M ;}

Crea espacio para un arreglo unidimensional de nombre v y de tamaño dim con elargumento opcional init para la inicialización que de no especificarse se toma como cero:

void CreateSpaceForV ector( V ector& v, int dim, Scalar init = 0){

v = new Scalar[dim];for(int i = 0; i < dim; i + + )

v[i] = init;}

Borra el espacio para un arreglo uni-dimensional de nombre v:

void DeleteSpaceForV ector( V ector v ){

delete[] v;}

Hace todas las entradas del arreglo de nombre v de tamaño dim iguales al argumentoopcional init que de no especificarse se toma como cero:

void InitializationV ector( V ector& v, int dim, Scalar init = 0){

for(int i = 0; i < dim; i + +)v[i] = init;

}

Se especifica el nombre de un archivo de texto con la estructura de la figura 1.5 parapoder inicializar un arreglo bidimensional de tamaño n por n y de nombre M :

void ReadFileMatrix( ifstream& InF, Matrix& M, int& n){

InF >> n;CreateSpaceForMatrix( M, n);for( int row = 0; row < n; row + + )

for( int col = 0; col < n; col + +)InF >> M [row][col];

}

Page 28: LATTICES FINITAS - tesis.ipn.mx

20 CAPÍTULO 1. CONCEPTOS BÁSICOS

Se especifica el nombre de un archivo de texto para poder escribir el arreglo definidopor M cuyo tamaño es n por m:

void WriteF ileMatrix( ofstream& OutF, Matrix M, int n, int m){

for( int row = 0; row < n; row + + ){

for( int col = 0; col < m; col + +)OutF << M [row][col] << ” ”;

OutF << endl;}

}

Se especifica el nombre de un archivo de texto para poder escribir el arreglo definidopor v de tamaño dim:

void WriteF ileV ector( ofstream& OutF, V ector v, int dim){

OutF << n << endl;for( int col = 0; col < dim; col + +)

OutF << v[col] << ” ”;OutF << endl;

}

Para el arreglo de nombre v y tamaño dim devuelve el valor 0 si todas las entradasson cero y devuelve 1 en caso contrario:

int Zero( V ector v, int dim){

for( int i = 0; i < dim; i + + )if( v[i]! = 0 )

return 1;return 0;

}

Para el arreglo v de tamaño dim la función devuelve el valor entero que correspondeal índice de la primera emtrada del arreglo cuyo valor sea diferente de cero:

Page 29: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 21

int first( V ector v, int dim){for( int i = 0; i < dim; i + + )

if( v[i]! = 0 ){

return i;}

return 0;}

Para el arreglo v de tamaño dim se crea un arreglo de tamaño dim y nombre r, endonde la primera entrada no cero (de izquierda a derecha) de v corresponde a un cero enr y las demás entradas son iguales:

int rest(Vector v,Vector& r,int dim){

r = new Scalar[dim];for (int i=0; i<n; i++)

r[i]=v[i];for( int i=0; i<dim; i++ )

if ( v[i]!=0){

r[i]=0;return i;

}return -1;

}

Para el arreglo v de tamaño dim la función devuelve el valor entero que correspondeal índice de la última entrada (de izquierda a derecha) del arreglo cuyo valor sea diferentede cero:

int last(Vector v, intdim){

for ( int i=0; i<dim; i++)if( v[dim-1-i]==1){

return dim-1-i;}

return-1;}

Devuelve el valor 0 si el índice que corresponde a la última entrada del arreglo v nocero es menor que el índice que corresponde a la última entrada del arreglo v no cero, endonde ambos son de tamaño dim.

Page 30: LATTICES FINITAS - tesis.ipn.mx

22 CAPÍTULO 1. CONCEPTOS BÁSICOS

int lessthan(Vector v,Vector u, intdim){

inta=last(v,dim);intb=last(u,dim);if( a < b)

return0;return1;

}

Para el arreglo de nombre E de tamaño n por n se crea un arreglo de nombre NewEdel mismo tamaño que E, el arreglo T de tamaño n es una permutación de las etiquetasde los elementos de E y así obtenemos NewE:

void NewOrder( Matrix E, Matrix& NewE, Vector T, int n){

CreateSpaceForMatrix(NewE,n,n);int a,b;for ( int i=0; i<n; i++)

for ( intj=0; j<n; j++){

a=T[i];b=T[j];NewE[i][j]=E[a][b];

}}

Extensión Lineal

Una extensión lineal de un conjunto parcialmente ordenado (P,v) es un orden linealsobre P que contiene a v. Al considerar a P finito obtendremos un programa que calculela función grado de la sección 1.4 para después calcular una extensión lineal.

La idea básica es separar a P en niveles y despues tomar un elemento a la vez de cadanivel hasta agotar a P . Después de un número finito de pasos se obtiene un orden linealpara P .

Teorema 1.7.1 Dado (P, E) en donde E es una relación que cumple (*), el algoritmode la figura 1.1 determina si la cerradura transitiva de E es orden parcial en tiempoO(n + e), en donde e es el número de unos en E (el numero de lineas en el diagrama deHass). En caso afirmativo obtenemos la función grado.

DemostraciónVéase [3] p.209.

Page 31: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 23

int MapDepth(Matrix E,Matrix& S,int n){Vector Z,I;CreateSpaceForMatrix(S,2,n);CreateSpaceForVector(Z,n);CreateSpaceForVector(I,n);int grado=1;for ( int a=0; a<n; a++)

for (int i=0; i<n; i++)if ( i!=a ){

I[a] += E[i][a];}

for (int a=0; a<n; a++)if ( I[a]==0){

Z[a]=1;S[1][a]=grado;I[a]=1;

}while( Zero(Z,n)==1){

for ( int a=0; a<n; a++)if ( Z[a]==1){

for ( int b=0; b<n; b++)if ( (E[a][b]==1) and (a!=b)){

I[b]-=1;}

}InitializationVector(Z,n);grado++;for ( int a=0; a<n; a++)

if ( I[a]==0){

Z[a]=1;S[1][a]=grado;I[a]=1;

}}for ( int i=0; i<n-1; i++ ){

if ( S[1][i]==0){

return 1;}S[0][i]=i+1;

}DeleteSpaceForVector(Z);DeleteSpaceForVector(I);return0;

}

Cuadro 1.1: mapdepth

Page 32: LATTICES FINITAS - tesis.ipn.mx

24 CAPÍTULO 1. CONCEPTOS BÁSICOS

Podemos utilizar algo como la siguiente función main para desplegar en un archivode texto la función grado.

int main(){

Matrix E;Matrix S;int n; string inputFileName;cout <<endl<< "Input file name ( to compute map depth) : ";cin >> inputFileName;ifstream InF( inputFileName.c_str() );ReadFileMatrix(InF,E,n);int u=MapDepth(E,S,n);if ( u == 1){

cout <<endl<< "E no define una relacion de orden parcial."<<endl<<endl;cout <<endl<< " End of the program."<<endl<<endl;system("pause");return0;

}string outputFileName = inputFileName+".md.txt";ofstream OutF( outputFileName.c_str() );OutF << "La función grado es:"<<endl;WriteFileMatrix(OutF,S,2,n);OutF <<endl;DeleteSpaceForMatrix(E,n);DeleteSpaceForMatrix(S,2);cout <<endl<< " End of the program."<<endl<<endl;system("pause");return 0;

}

Page 33: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 25

Ahora utilizaremos la función de la figura 1.2 para calcular la extensión lineal

void TopologicalSort(Matrix S,Vector& T, int n){

CreateSpaceForVector(T,n);int grado=0;int i=0;while ( i < n){

grado++;for ( int j=0; j<n; j++ )

if ( S[1][j]==grado ){

T[i]=j;i++;

}}

}

Cuadro 1.2: Topological Sort

Page 34: LATTICES FINITAS - tesis.ipn.mx

26 CAPÍTULO 1. CONCEPTOS BÁSICOS

Podemos utilizar la siguiente función main para desplegar a E con el nuevo eti-quetamiento, obteniendo en particular una matriz triangular superior y utilizarla paraalgunos de los programas siguientes.

int main(){

Matrix E;Matrix S;Vector T;Matrix NewE;int n;string inputFileName;cout <<endl<< "Input file name ( to compute topological sort) : ";cin >> inputFileName;ifstream InF( inputFileName.c_str() );ReadFileMatrix(InF,E,n);int u=MapDepth(E,S,n);if ( u == 1){

cout <<endl<< "E no define una relación de orden parcial."<<endl<<endl;cout <<endl<< " End of the program."<<endl<<endl;system("pause");return0;

}string outputFileName = inputFileName+".ts.txt";ofstream OutF( outputFileName.c_str() );OutF <<endl;TopologicalSort(S,T,n);NewOrder(E,NewE,T,n);OutF << "El nuevo orden es:"<<endl;WriteFileMatrix(OutF,NewE,n,n);OutF <<endl;DeleteSpaceForMatrix(NewE,n);DeleteSpaceForMatrix(E,n);DeleteSpaceForMatrix(S,2);DeleteSpaceForVector(T);cout <<endl<< " End of the program."<<endl<<endl;system("pause");return0;

}

Page 35: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 27

Relación de Cubiertas

Dado una relación de orden v sobre P deseamos calcular la relación de cubiertas yaque tiene varias aplicaciones, como por ejemplo trazar el diagrama de Hass de P.

Teorema 1.7.2 La función de la figura 1.3 calcula la relación de cubiertas a partir dev en tiemp O(ne≺ + n2), en donde e≺ es el numero de lineas del diagrama de Hass dela relación ≺

DemostraciónVéase [3] p.214.

void UpperCovers( Matrix E, Matrix& UC, int n){CreateSpaceForMatrix(UC,n,n);Vector T,S;CreateSpaceForVector(T,n);CreateSpaceForVector(S,n);for ( int a=0; a<n; a++){

InitializationVector(S,n); for ( int x=a+1; x<n; x++){

if( E[a][x] ){

for ( int i=0; i<n; i++)T[i]=S[i];

int f=first(T,n);while ( (Zero(T,n)==1) and (E[f][x]==0) ){

T[f]=0;f=first(T,n);

}if ( Zero(T,n)==0)

S[x]=1;}

}for ( int k=0;k<n;k++)

UC[a][k]=S[k];}DeleteSpaceForVector(T);DeleteSpaceForVector(S);}

Cuadro 1.3: Upper covers

Page 36: LATTICES FINITAS - tesis.ipn.mx

28 CAPÍTULO 1. CONCEPTOS BÁSICOS

Podemos escribir la relación de cubiertas en un archivo de texto con la siguientefuncion main.

int main(){

Matrix E;Matrix UC;int n;string inputFileName;cout <<endl<< "Input file name ( to compute upper covers ) : ";cin >> inputFileName;ifstream InF( inputFileName.c_str() );string outputFileName = inputFileName+".upc.txt";ofstream OutF( outputFileName.c_str() );ReadFileMatrix(InF,E,n);UpperCovers(E,UC,n);WriteFileMatrix(OutF,UC,n,n);DeleteSpaceForMatrix(E,n);DeleteSpaceForMatrix(UC,n);cout <<endl<< " End of the program."<<endl<<endl;system("pause");return 0;

}

Page 37: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 29

Cerradura Transitiva

Dada la relación de cubiertas ahora podemos calcular la cerradura transitiva.

Teorema 1.7.3 La función de la figura 1.4 obtiene una descomposición en cadenas entiempo O(n + e≺) aparitr de la relación ≺ en donde e≺ es el n’mero de lineas en eldiagrama de Hass.

Demostración Véase [3] p.213.

void ChainDecomposition(Matrix U,Vector& C, int n, int & k){

CreateSpaceForVector(C,n,-1);Vector UC;CreateSpaceForVector(UC,n);int h=0;for ( int x=0; x<n; x++)

if ( C[x]==-1){

for ( int i=0; i<n; i++)UC[i]=U[x][i];

C[x] = h;while ( Zero(UC,n)==1){

inty = first(UC,n);if( C[y]==-1){

C[y] = h;for ( int i=0; i<n; i++)

UC[i]=U[y][i];}else

UC[y]=0;}h+=1;

}k=h;DeleteSpaceForVector(UC);

}

Cuadro 1.4: Chain Decomposition

Page 38: LATTICES FINITAS - tesis.ipn.mx

30 CAPÍTULO 1. CONCEPTOS BÁSICOS

Teorema 1.7.4 Dada la relación de cubiertas y una particion en k cadenas de P lafun-ción de la figura 1.5 calcula la cerradura transitiva de ≺ en tiempo O((n + e≺)k + ev).

DemostraciónVéase [3] p.213.

void TransitiveClosure( Matrix U, Matrix& F, int n){

Vector C;int k;ChainDecomposition(U,C,n,k);Tensor G;CreateSpaceForTensor(G,k,n,n);for ( int x=0; x<n; x++){

for ( int y=0; y<x; y++)if ( U[y][x]==1){

for ( int h=0; h<k; h++)if ( Zero(G[h][y],n)==1){

if ( lessthan(G[h][x],G[h][y],n)==0){

for ( int i=0;i<n;i++)G[h][x][i]=G[h][y][i];

}}

}G[C[x]][x][x]=1;

}CreateSpaceForMatrix(F,n,n);for ( int h=0; h<k; h++)

for ( int i=0; i<n; i++)for ( int j=0; j<n; j++){

F[j][i]= ( F[j][i] || G[h][i][j]);}

DeleteSpaceForTensor(G,k,n);DeleteSpaceForVector(C);

}

Cuadro 1.5: Transitive Closure

Page 39: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 31

Tablas para las Operacaiones Binarias u y t

Ahora podemos determinar si una relación de orden parcial define una lattice, y a suvez calcular las tablas de multiplicar de u y t.

Teorema 1.7.5 La función de la figura 1.6 determina si la relación de orden ≺ defineuna lattice en tiempo O(e≺ + 1) y en caso afirmativo calcula la tabla JOIN.

DemostraciónVéase [3] p.217.

int JoinTable(Matrix E, Matrix UC, Matrix& JOIN, int n){

CreateSpaceForMatrix(JOIN,n,n);Vector T,S;CreateSpaceForVector(T,n);CreateSpaceForVector(S,n);for ( int x=0; x<n; x++){

JOIN[x][x]=x;for ( int y=0; y<x; y++){

InitializationVector(T,n);for ( int z=0; z<x; z++)

if ( UC[z][x] ){

int h=JOIN[y][z];T[h]=1;

}int q;for (intz=0; z<x; z++)if ( T[z]==1){

q = z;}for ( int z=0; z<x; z++ )

if( T[z] == 1 ){

if( E[z][q]==0)return 1;

}JOIN[x][y]=q;JOIN[y][x]=q;

}}DeleteSpaceForVector(T); DeleteSpaceForVector(S);return 0;

}

Cuadro 1.6: Join Table

Page 40: LATTICES FINITAS - tesis.ipn.mx

32 CAPÍTULO 1. CONCEPTOS BÁSICOS

Podemos escribir en un archivo de texto la tabla JOIN mediante la siguiente funciónmain:

int main(){

Matrix E;Matrix UC;Matrix JOIN;intn;string inputFileName;cout <<endl<< "Input file name ( to compute join table ) : ";cin >> inputFileName;ifstream InF( inputFileName.c_str() );ReadFileMatrix(InF,E,n);UpperCovers(E,UC,n);int u=JoinTable(E,UC,JOIN,n);if( u == 1)

{cout <<endl<< "Este orden no es una lattice."<<endl<<endl;cout <<endl<< " End of the program."<<endl<<endl;system("pause");return 0;

}string outputFileName = inputFileName+".join.txt";ofstream OutF( outputFileName.c_str() );WriteFileMatrix(OutF,JOIN,n,n);DeleteSpaceForMatrix(E,n);DeleteSpaceForMatrix(UC,n);DeleteSpaceForMatrix(JOIN,n);cout <<endl<< " End of the program."<<endl<<endl;system("pause");return 0;

}

Page 41: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 33

Anticadenas de un Conjunto Parcialmente Ordenado

Uno de los conceptos en teoría del orden con mas apariciones y con mayor aplicaciónes el de anicadena,

Teorema 1.7.6 La función de la figura 1.7 encuentra todas las anticadenas de unarelación de orden parcial en tiempo O(nN) en donde N es el número de anticadenas.

Demostración Véase [3] p.225.

Page 42: LATTICES FINITAS - tesis.ipn.mx

34 CAPÍTULO 1. CONCEPTOS BÁSICOS

void antichains(Vector A, int x, Vector T,Matrix O,int n,int& contador, ofstream& OutF){

contador++;Vector Aprima;Aprima = new Scalar[n];for ( int i=0; i<n; i++)

Aprima[i]=A[i];Aprima[x]=1;WriteFileVector(OutF,Aprima,n);if ( Zero(T,n)==1){

Vector r;r = new Scalar[n];for ( int i=0;i<n;i++)

r[i]=T[i];int firstT=rest(T,r,n);if ( firstT!=-1){

antichains(A,firstT,r,O,n,contador,OutF);}Vector Tprima;CreateSpaceForVector(Tprima,n,0);for ( int l=0; l<n; l++)

if ( T[l]!=0){

if ( ( O[l][x]!=1) and ( O[x][l]!=1)){

Tprima[l]=1;}

}if ( Zero(Tprima,n)==1){

Vector rprima;rprima = new Scalar[n];for ( int i=0 ;i<n;i++)

rprima[i]=Tprima[i];int firstTprima=rest(Tprima,rprima,n);if ( firstTprima!=-1){

antichains(Aprima,firstTprima,rprima,O,n,contador,OutF);}

}}

}

Cuadro 1.7: Antichains

Page 43: LATTICES FINITAS - tesis.ipn.mx

1.7. CÁLCULOS MEDIANTE C++ 35

Debido a la inicialización de los argumentos en Antichains podemos utilizar la sigu-iente función para nuestros fines.

voidPreantichains(Matrix O,intn, ofstream& OutF){

intcontador=0;intx=0;Vector T,A;CreateSpaceForVector(T,n,1);CreateSpaceForVector(A,n,0);T[x]=0;antichains(A,x,T,O,n,contador,OutF);OutF << contador << endl;DeleteSpaceForVector(T);DeleteSpaceForVector(A);

}

Para escribir en un archivode texto las anticadenas y el número de ellas podemos usarla siguiente función main.

intmain(){

Matrix O;intn;string inputFileName;cout <<endl<< "Input file name ( to obtain antichains ) : ";cin >> inputFileName;ifstream InF( inputFileName.c_str() );string outputFileName = inputFileName+".anti.txt";ofstream OutF( outputFileName.c_str() );ReadFileMatrix(InF,O,n);Preantichains(O,n,OutF);DeleteSpaceForMatrix(O,n);cout <<endl<< " End of the program."<<endl<<endl;system("pause");

}

Page 44: LATTICES FINITAS - tesis.ipn.mx

36 CAPÍTULO 1. CONCEPTOS BÁSICOS

Page 45: LATTICES FINITAS - tesis.ipn.mx

Capítulo 2

Álgebras de Boole

2.1. Lattices Distributivas y Modulares

A continuación se presentan las lattices modulares y las distributivas. Más adelante sedemostrará que toda lattice distributiva es modular. En el caso de lattices distributivasfinitas cada elemento se puede escribir como unión de elementos unión-irreducibles endonde tal expresión no contiene repeticiones; luego la lattice queda determinada por loselementos unión irreducibles. Así como tal utilidad se presentan otras que heredan lasalgebras booleanas que son lattices distributivas. Para comenzar se presenta la definiciónde lattice modular:

Definición 2.1.1 Una lattice L se dice modular si para todo x, y, z ∈ L se cumple lallamada ecuación mudular:

x v z ⇒ x t (y u z) = (x t y) u z.

Por el principio de dualidad una lattice es modular si, y solamente si, para todox, y, z ∈ L se cumple:

x w z ⇒ x u (y t z) = (x u y) t z.

Ejemplos

Los subgrupos normales de un grupo ordenados con el orden de la inclusión formanuna lattice modular.

Sea G un grupo y A, B, C ⊆ G subgrupos normales de G. A ∩ B y AB = BA ={ab | a ∈ A, b ∈ B} son subgrupos normales que corresponden al ínfimo y supremode A y B respectivamente. Si suponemos A ⊆ C por el teorema 1.5.9 se cumpleA(B ∩ C) ⊆ (AB) ∩ C y solo basta demostrar la desigualdad recíproca. (AB) ∩ Ccorresponde a los productos ab ∈ C con a ∈ A y b ∈ B. b = a−1(ab) con ab ∈ C ya−1 ∈ A ⊂ C luego b ∈ C y por tanto (AB) ∩ C ⊆ A(B ∩ C).

37

Page 46: LATTICES FINITAS - tesis.ipn.mx

38 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Los subespacios de un espacio vectorial ordenados con el orden de la inclusiónforman una lattice modular.

Se sigue del anterior

Los siguientes dos teoremas caracterizan a las lattices modulares.

Teorema 2.1.2 Una lattice L es modular si, y sólo si, para todo x, y, z ∈ L:

x t (y u (x t z)) = (x t y) u (x t z). (a)

DemostraciónNecesidad. Se sigue al observar la desigualdad x v (x t z).Suficiencia. Supongamos que la ecuación (a) es válida. x v z implica x t z = z y al

sustituir se tiene el resultado. �

Teorema 2.1.3 Una lattice L es modular si, y solamente si, ninguna sublattice es iso-morfa a la lattice pentagono.

DemostraciónNecesidad. Se procede a mostrar que la lattice pentagono no es modular, donde la

lattice pentagono se define sobre el conjunto {a, b, c, 0, 1} y cuya relación de orden semuestra en el diagrama de Hass de la figura 2.1:

Figura 2.1: lattice pentagono

c @ a, se cumple a t (b u c) = a t 0 = a y (a t b) u c = 1 u c = c con a 6= b. Luego nose cumple la ecuación modular. Así cualquier lattice que contenga a la lattice pentagonocomo sublattice no puede ser modular

Page 47: LATTICES FINITAS - tesis.ipn.mx

2.1. LATTICES DISTRIBUTIVAS Y MODULARES 39

Suficiencia. Supongamos que L no es modular. Entonces existen x, y, z ∈ L tales que

x v z ⇒ x t (y u z) @ (x t y) u z

Sean I = x t y, a = (x t y) u z, b = y,c = x t (y u z) y O = y u z. Probemos que estesubconjunto de L forma una sublattice isomorfa a la lattice pentagono. Se tiene que I yO son una cota superior e inferior para {a, b, c},

O v c u b v a u b = (x t y) u z u y = y u z = O

I w a t b w c t b = x t (y u z) t y = x t y = I

por la ley de absorsión y asociatividad. Luego a u b = c u b = O, a t b = c t b = I y{O, a, b, c, I} es una sublattice. A continuación se verifica que sus elementos son diferentes.Si b = O entonces c u b = b, c t b = c = I lo cual implica I = c lo cual contradiceI = c @ a @ a v I. De ahí que O 6= b.

Supongamos I = a entonces a t b = a, a u b = b lo cual implica O = b lo cualcontradice lo anterior. Así I 6= a.

Supongamos c = b entonces O = b u b = b lo cual contradice lo anterior. Así c 6= b.Los casos restantes se tratan de manera similar. �

Definición 2.1.4 Una lattice L es distributiva si para todo x, y, z ∈ L satisface la lla-mada ecuación distributiva:

x t (y u z) = (x t y) u (x t z).

Por el principio de dualidad una lattice es distributiva si, y solamente si, ∀ x, y, z ∈ Lse cumple:

x u (y t z) = (x u y) t (x u z).

Ejemplos

1. Sea G un grupo y denotemos por L(G) la lattice de todos los subgrupos de G. Ungrupo G se dice ciclico generalizado si cualesquiera a, b ∈ G son potencia de un ter-cer elemento c = (a, b) de G. Se tiene entonces que la lattice L(G) es distributiva si ysolo si G es un grupo ciclico generalizado. Dem: Sea G un grupo ciclico generalizado.Sean A, B, C subgrupos de G y por el teorema 1.5.9 para ver que L(G) es distribu-tiva solo basta probar que se cumple la desigualdad Au(BtC) v (AuB)t(AuB).Sea a ∈ Au(BtC) y supongamos que es de la forma a = bc con a ∈ A, b ∈ B, c ∈ C.Por definición existe d ∈ G tal que b = dm,c = dn y de aquí que a = dm+n Sim′ = mcm(m,m+n) y n′ = mcm(n, m+n) entonces dm′ ∈ AuB y dn′ ∈ AuC; yde aquí que si h = αm′ + βn′ = MCD(m′, n′) luego se tiene dh ∈ (AuB)t(AuB).Pero de la igualdad h = MCD(m′, n′) = MCD(mcm(m, m+n), mcm(n,m+n)) =mcm(MCD(m, n), m + n) = MCD(m, n) con m + n|MDC(m,n). De ahí que

Page 48: LATTICES FINITAS - tesis.ipn.mx

40 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

a = dm+n = dhk = (dh)k ∈ (A u B) t (A u B) para algún k. Recíprocamentesupongamos L(G) es distributiva y sean a, b ∈ G con m, n dos enteros. Si A, B yC denotan los subgrupos generados por a,b y c = ab respectivamente , entonces(A t B) u C = (A u C) t (B u C). Pero A ∩ C esta generado por la mas pe-queña potencia ar = ch el cual a su vez es potencia de algún C y de B u C conbs = ck.Claramente ar y bs son permutable; de aquí que el subgrupo generado porellos consiste de amrbns = cmh+nk y por hipotesis amrbns = ab para algunos m, n;de aqui que amr−1 = b1−ns. De ahí que amr−1 es permutable con b, lo que implicaque tamnièn con bs pero amr = (am)r es permutable con bs y luego tambièn cona. Nuevamente b1−ns = amr−1 es permutable con a asi también con b = (bs)nb1−ns

y ab = ba. Se concluye que a, b generan un subgrupo conmutativo de G. Ahorausando el teorema para grupos abelianos con dos generadores este sbgrupo es ci-clico o tiene dos generadores independientes a′, b′. En ultimo caso, los subgruposgenerados por a′, b′ y a′b′ son no distributivas.

2. Un conjunto parcialmente ordenado G es un grupo parcialmente ordenado si satis-face:

i G es un grupo

ii la relación de inclusión es invariante bajo todas las traslaciones de grupo x →a + x + b

Si un grupo parcialmente ordenado G es una lattice entonces G es un l -grupo. Unespacio vectorial parcialmente ordenado es un espacio vectorial V sobre los reales,el cual es un grupo parcialmente ordenado bajo la adición y cumple que para todoescalar positivo λ ∈ R, x → λx es un automorfismo de grupos. Si V es una latticeentonces V es una lattice vectorial. Mostremos a continuación que R cumple conla definición de lattice vectorial con el orden y suma usuales. R con el orden usualesta totalmente ordenado y por lo tanto es una lattice. R es un grupo abeliano conla suma. Si T : R → R es una traslación de grupo entonces T (x) = x + α paraalgún α ∈ R. Si A, B ⊆ R con A ⊆ B entonces también se cumple A + α ⊆ B + α(A + α = {a + α | a ∈ A}). Para todo λ ∈ R, f : R → R,f(x) = λx es unatransformación lineal y de hecho un automorfismo. Se tiene que R es una latticevectorial.

3. Por el teorema de Riesz-Fischer se tiene que los espacios LP son espacios linealesnormados completos, que además son lattices con el orden usual definido por:

f v g si, y sólo si, f ≤ g c.t.p. f , g ∈ LP

Page 49: LATTICES FINITAS - tesis.ipn.mx

2.1. LATTICES DISTRIBUTIVAS Y MODULARES 41

Observación 2.1.5 Para todo x, y, z ∈ L se tiene:

(x u y) t (y u z) t (z u x) = ((x u y) t (y u z)) t (z u x) (por asociatividad)v (y u (x t z)) t (z u x) (por la des distributiva)v (y t (z u x)) u (z t x) (por la des modular)v (x t y) u (y t z) u (z t x) (por la des distributiva)

(2.1)

Teorema 2.1.6 Una lattice L es distributiva si, y sólo si, para todo x, y, z ∈ L

(x u y) t (y u z) t (z u x) = (x t y) u (y t z) u (z t x). (2.2)

DemostaciónNecesidad.

(x u y) t (y u z) t (z u x) = (x u y) t ((y u z) t (z u x)) por asociatividad= (x t (y u z) t (z u x)) u (y t (y u z) t (z u x)) por la ecuación distributiva= (x t (y u z)) u (y t (z u x))por la ley de absorción= [(x t y) u (x t z)] u [(y t z) u (y t x)]por la ecuación distributiva= (x t y) u (y t z) u (z t x)por asociatividad

Suficiencia.Por la desigualdad distributiva sólo basta mostrar la desigualdad recíproca

x u (y t z) v (x u y) t (x u z) ∀x, y, z ∈ L

Se intersecta ambos lados de la ecuación con x. Del lado derecho de la acuación seobtiene:

x u [(x t y) u (y t z) u (z t x)] = [x u (x t y)] u [(y t z) u (z t x)] (asociatividad)= x u [(y t z) u (z t x)] (ley de absorción)= [x u (y t z)] u (y t z) (asociatividad)= x u (y t z) (ley de absorción)

Del lado izquierdo de la ecuación se obtiene:

x u [(x u y) t (y u z) t (z u x)] v {x u [(y u z) t (z u x)]} t (x u y)

v [(x u y u z) t (z u x)] t (x u y)

v (x u z) t (x u y)

Y se concluye el resultado �

Corolario 2.1.7 Toda lattice distributiva es modular.

Page 50: LATTICES FINITAS - tesis.ipn.mx

42 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Figura 2.2: lattice diamante

Teorema 2.1.8 Una lattice modular es distributiva si, y sólo si, ninguna de sus sublat-tices es isomorfa a la lattice diamante.

DemostraciónNecesidad. La lattice diamante se define sobre el conjunto {O, I, a, b, c} y la relación

de orden se muestra en el diagrama de Hass de la figura 2.2:A continuación se prueba que la lattice diamante no es distributiva. De hecho se sigue

de la desigualdad:

a t (b u c) = a t 0 = a 6= 1 = 1 u 1 = (a t b) u (a t c)

Suficiencia. Sea L una lattice modular pero no distributiva. Por el teorema 2.1.6 ypor la ecuación 2.1 existen x, y, z ∈ L tales que

(x u y) t (y u z) t (z u x) A (x t y) u (y t z) u (z t x)

Utlizando los elementos x, y, z ∈ L se construye una sublattice isomorfa a la latticediamante deacuerdo a la siguiente definición:

I = (x t y) u (y t z) u (z t x)

O = (x u y) t (y u z) t (z u x)

a = O t (x u I)

b = O t (y u I)

c = O t (z u I)

Page 51: LATTICES FINITAS - tesis.ipn.mx

2.1. LATTICES DISTRIBUTIVAS Y MODULARES 43

Observamos fácilmente que O < a, b, c < I. Por la ley modular

O @ I ⇒ O t (x u I) = (O t x) u I

De esta manera

a t b = (O t (x u I)) t (O t (y u I))

= O t (x u I) t (y u I)

= O t [(x u (y t z)) t (y u (z t x))] por la ley de absorción

Además x u (y t z) v x v z t x. De aquí que

a t b = O t [((x u (y t z)) t y) u (z t x)] por la ley modular

Por la ley modular (x u (y t z)) t y = (x t y) u (y t z), luego

a t b = O t I = I

Por dualidad a u b = O. De manera similar

b u c = c u a = O y b t c = c t a = I

Para probar que los elementos O, I, a, b, c son distintos, se procede de la siguentemanera.

Si suponemos O = a. Entonces

a u b = a ⇒ a t b = b ⇒ I = b

a u c = a ⇒ a t c = c ⇒ I = c

Se sigue que

I = I u I = b u c = O

lo que contradice O @ I.Los casos restantes se resuelven de manera similar. �

Corolario 2.1.9 Una lattice es distributiva si, y sólo si, ninguna de sus sublattices esisomorfa a la la lattice diamante o pentagano.

Page 52: LATTICES FINITAS - tesis.ipn.mx

44 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Teorema 2.1.10 Una lattice L es distributiva si, y sólo si, para todo x, y, z ∈ L

x u y = x t z, x t y = x t z ⇒ y = z.

DemostraciónNecesidad. Supongamos que x u y = x u z y x t y = x t z luego entonces

y = y u (x t y) por la ley de absorción= y u (x t z)

= (y u x) t (y u z) L es distributiva= (x u y) t (y u z) ley conmutativa= (x u z) t (y u z)

= (x t y) u z L es distributiva= (x t z) u z

= z ley de absorción

Suficiencia. Supongamos que L no es distributiva. Por el corolario 2.1.9 L contiene almenos una sublattice isomorfa a la lattice pentagono o diamante.

Si contiene una sublattice isomorfa a la lattice pentagono entonces existen elementosa, b, c, O, I ∈ L distintos a pares tales que la relación de orden reducida a estos quedadefinida por el digrama de la figura 2.1. Así a t b = c t b = I y a u b = c u c = O porla ley de cancelación a = c lo cual es una contradicción. Análogamente se tiene para unasublattice isomorfa a la lattice diamante. Por lo tanto L es distributiva. �

Definición 2.1.11 Una lattice L con 0 y 1 se dice con complemento si para cada x ∈ Lexiste al menos un elemento y tal que x u y = 0 y x t y = 1 y en este caso y es elcomplemento de x. Cuando el complemento de x es único este se denota por x′.

Teorema 2.1.12 Sea L una lattice distributiva. Si x tiene complemento entonces estees único.

DemostraciónSupongamos que x ∈ L tiene los complementos y1, y2 ∈ L. Entonces x u yi = 0 y

x t yi = 1 para i = 1, 2. Por la regla de la cancelación del teorema anterior se teney1 = y2 �

Un tipo especial de lattice es el que acontinuación se describe y seguramente es deltipo que tiene mas aplicaciones.

Definición 2.1.13 Un algebra de Boole es una lattice distributiva con complemento.

De ahora en adelante B denota un conjunto con dos operaciones binarias u, t con uncero (denotado simplemente por 0), un uno (denotado simplemente por 1) y una operaciónunaria llamada complemeteno (′). Lo anterior es B = (B,u,t, 0, 1,′ ) o simplementeB = (B,u,t).

Page 53: LATTICES FINITAS - tesis.ipn.mx

2.1. LATTICES DISTRIBUTIVAS Y MODULARES 45

Teorema 2.1.14 (“Las leyes de Morgan”) En un algebra de Boole se tiene: ∀x, y ∈ B

(x u y)′ = x′ t y′ (x t y)′ = x′ u y′

Demostración

(x u y) t (x′ t y′) = (x t x′ t y′) u (y t x′ t y′)

= (1 t y′) u (1 t x′) = 1

(x u y) u (x′ t y′) = (x u y u x′) t (x u y u y′)

= (0 t y) u (0 t x) = 0

Lo anterior implica que el complemento de xuy es (x′ty′). Por dualidad se sigue la otraigualdad. �

Corolario 2.1.15 En un algebra de Boole se tiene:

∀ x, y ∈ B x v y ⇔ x′ w y′.

Demostración

x v y ⇔ x u y = x ⇔ x′ = (x u y)′ = x′ t y′ ⇔ x′ w y′

Definición 2.1.16 Un anillo R = (R, +, ·) con identidad se dice un anillo de Boole sitodos sus elementos son idempotentes, es decir, x2 = x, ∀x ∈ R.

Teorema 2.1.17 Todo anillo de Boole es conmutativo y de caracterítica 2.

DemostraciónSean x, y ∈ R. Entonces

x + y = (x + y)(x + y) = x2 + xy + yx + y2 = x + xy + yx + y.

Es decir, xy + yx = 0 y para x = y se tiene 2x = 0. Además se tiene xy = xy + (xy +yx) = (xy + xy) + yx = 2xy + yx = yx. �

Teorema 2.1.18 Si definimos las operaciones + y · en un algebra de Boole, (B,u,t, 0, 1,′ ),

x + y := (x u y′) t (x′ u y), x · y := x u y,

se obtiene un anillo de Boole R((B)) = (B, +, ·) Por otra parte si definimos las opera-ciones u y t en un anillo de Boole, R = (R, +, ·),

x t y := x + y + xy, x u y := x · y

el complemento x′ por x′ = x+1 entonces se obtine un algebra de Boole B(R) = (B,u,t).Mas aún

B(R(B)) = B R(B(R)) = R

Page 54: LATTICES FINITAS - tesis.ipn.mx

46 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

DemostraciónDada un algebra de Boole (B,u,t, 0, 1,′ ), definimos

x + y := (x u y′) t (x′ u y)

xy := x u y

Claramente + es conmutativa. Para probar que + es asociativa, para todo x, y, z ∈ Bse tiene

(x + y) + z = [(x u y′) t (x′ u y)] + z

= {[(x u y′) t (x′ u y)] u z′} t {[(x u y′) t (x′ u y)]′ u z}= {[(x u y′) t (x′ u y)] u z′} t {[(x′ t y) u (x t y′)] u z}= {[(x u y′) t (x′ u y)] u z′} t {[(x u y) t (x′ u y′)] u z}= (x u y′ u z′) t (x′ u y u z′) t (x u y u z) t (x′ u y′ u z)

= x + (y + z),

por simetría en x y en z y usando conmutatividad.Además x+0 = (xu0′)t(x′u0) = (xu1)t(0) = x y x+x = (xux′)t(x′ux) = 0t0 = 0.

Así tenemos la existencia de un neutro aditivo e inversos aditivos. De lo anterior se sigueque (B, +) es un grupo abeliano.

Se sabe que · es asociativo, conmutativo con neutro multiplicativo 1.Para propbar la propiedad distributiva de la suma con respecto a la multiplicación,

para todo x, y, z ∈ B:

xy + xz = (x u y) + (x u z)

= ((x u y) u (x u z)′) t ((x u y)′ u (x u z))

= [x u y u (x′ t z′)] t [(x′ t y′) u (x u z)]

= (x u y u z′) t (x u z u y′)

= x u ((y u z′) t (y′ u z))

= x(y + z).

Finalmente se tiene la idempotencia, i.e., x2 = x u x = x. Por lo tanto (B, +, ·, 0, 1) esun anillo de Boole.

Reciprocamente supongamos que (B, +, ·, 0, 1) es un anillo de Boole. Definimos

x t y := x + y + xy

x u y := xy

x′ := x + 1

Page 55: LATTICES FINITAS - tesis.ipn.mx

2.1. LATTICES DISTRIBUTIVAS Y MODULARES 47

Por el teorema 2.1.17 se sigue que u y t son conmutativos.Para probar la asociatividad se tiene:

x t (y t z) = x t (y + z + yz)

= x + y + z + yz + xy + xz + xyz

= (x + y + xy) t z

= (x t y) t z

De manera similar x u (y u z) = (x u y) u z.Para probar la ley de absorción:

x u (x t y) = x u (x + y + xy)

= x2 + xy + x2y

= x + xy + xy = x + 2xy = x

Para probar distributividad se tiene:

x u (y t z) = x(y + z + yz)

= xy + xz + xyz

= xy + xz + xyxz

= xy t xz

= (x u y) t (x u z).

De esta manera se tiene que (B,u,t) es una lattice distributiva.Claramente 0 y 1 son el primer y el último elemento respectivamente.

x u x′ = x(1 + x) = x + x = 0

x t x′ = x + x′ + xx′ = 2x + 1 = 1

Se sigue entonces que el complemento de x es x′ y por lo tantro (B,u,t, 0, 1,′ ) es unalgebra de Boole.

Finalmente, dada un algebra de Boole B, defnimos las operaciones en R(B):

x ∧ y := xy

x ∨ y := x + y + xy

Entonces x ∧ y = xy = x u y y

x ∨ y = x + y + xy = 1 + (1 + x)(1 + y) = 1 + x′y′ = (x′ u y′)′ = x t y

Por último 1+x = (1ux′)t(1′ux) = x′t0 = x′. Esto prueba B(R(B)) = B. SimilarmenteR(B(R)) = R. �

Page 56: LATTICES FINITAS - tesis.ipn.mx

48 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Definición 2.1.19 Sean B1 y B2 dos algebras de Boole. Entoces la función f : B1 → B2

se dice un homomorfismo (entre algebras de Boole) si f es un homomorfismo de latticesy ∀x ∈ B1 se tiene f(x′) = (f(x))′. También podemos hablar de monomorfismos, epi-morfismo e isomorfismo de algebras de Boole. Si existe un isomorfismo entre algebrasdeBoole, B1 y B2 lo denotamos por B1

∼=b B2

Teorema 2.1.20 Sea f : B1 → B2 un homomorfismo de Boole. Entonces:

1. f(0) = 0 y f(1) = 1

2. ∀x, y ∈ B1 , x v y ⇒ f(x) v f(y)

3. f(B1) es un algebra de Boole y es una subalgebra de B2.

Demostración

1. Sea x ∈ B1, f(0) = f(x u x′) = f(x) u f(x′) = f(x) u (f(x))′ = 0 y f(1) =f(x t x′) = f(x) t f(x′) = f(x) t (f(x))′ = 1

2. Sean x, y ∈ B1, x v y ⇒ x = x u y ⇒ f(x) = f(x) u f(y) ⇒ f(x) v f(y)

3. Sean a, b ∈ f(B1), luego existen x, y ∈ B1 tales que f(x) = a y f(y) = b. a ub = f(x) u f(y) = f(x u y) ∈ f(B1), a t b = f(x) t f(y) = f(x t y) ∈ B1 ya′ = (f(x))′ = f(x′), i.e, f(B1) es cerrado bajo las operaciones u,t,′ y por lo tantoes una subalgebra de B2 �

Lema 2.1.21 Todo átomo de una lattice con cero es unión-irreducible.

Lema 2.1.22 Sea L una lattice distributiva con p ∈ L unión-irreducible y p v a t b.Entonces p v a o p v b.

Definición 2.1.23 Sea L una lattice. Sean a, b ∈ L y x ∈ [a, b] con xuy = a y xty = bentonces y se dice un complemento relativo de x con respecto a [a, b].

Si para cada intervalo [a, b] cada elemento x ∈ [a, b] tiene un complemento relativocon respecto a [a, b] entonces L se dice relativamente con complemento.

Si L tiene cero y para todo [0, b] cada uno de sus elementos tiene un complementorelativo, entonces L se dice seccionalmente con complemento.

Teorema 2.1.24 Sea L una latiice. Entonces las siguentes implicaciones suceden:

1. (L es un algebra de Boole) ⇒ (L es relativamente con complemento)

2. (L es relativamente con complemento) ⇒ (L es seccionalmente con complemento)

3. (L es finita y seccionalmente con complemento) ⇒ (cada a ∈ L, a 6= 0, es uniónde un número finito de átomos.)

Page 57: LATTICES FINITAS - tesis.ipn.mx

2.1. LATTICES DISTRIBUTIVAS Y MODULARES 49

Demostración

1. Primeramente se procede a mostrar que si L es distributiva y con complementoentonces L es relativamente con complemento. Sea a v x v b. Entonces existec ∈ L tal que x u c = 0 y x t c = 1. Tomése y = b u (a t c). y es un complementorelativo de x con respecto a [a, b] dado que

x u y = x u [b u (a t c)] = x u (a t c) = (x u a) t (x u c) = x u a = a

y

x t y = x t [b u (a t c)] = x t [(b u a) t (b u c)] = x t (b u c)

= (x t b) u (x t c) = x t b = b

Así L es relativamente con complemento.

2. Si L es relativamente con complemento entonces para todo [a, b] cada uno de suselementos tiene un complemento relativo; en particular sucede para los intervalosde la forma [0, b], i.e., L es seccionalmente con complemento.

3. Al ser L finita sea {p1, . . . , pn} el conjunto de átomos menores que a y tomemos b =p1t, . . . ,tpn. Se tiene b v a y al suponer b 6= a entonces b posee un complementoen [0, a] y lo denotamos por c.

Si p es un átomo menor que c entonces p ∈ {p1, . . . , pn} y p = p u b v c u b = 0 locual es una contradicción y de aquí que a = b = p1t, . . . ,tpn. �

Teorema 2.1.25 (Teorema de representación). Sea B un algebra de Boole finita, y de-notemos por A al conjunto de todos los átomos en B. Entonces B es isomorfo a P(A),es decir,

(B,u,t) ∼=b (P(A),∩,∪)

DemostraciónSea v ∈ B un elemento arbitrario y sea A(v) := {a ∈ B| a es un átomo, a v v} y

A(v) = ∅ si v = 0. Entonces A(v) ⊆ A. Definimos

h :B → P(A), v 7→ A(v).

Mostremos que h es un homomorfismo de algebras de boole. Sean v, w ∈ B. Parax ∈ A(v u w), x es un átomo y x v v u w, luego x v v y x v w; lo cual implicaque x ∈ A(w) y x ∈ A(v), es decir, x ∈ A(v) u A(w). De esta forma probamos queA(v) ∩A(w) = A(v u w) y por tanto que h es intersección homomorfismo. Similarmentetenemos que h(v t w) = h(v) ∪ h(w) y h(v′) = A \ h(v).

Page 58: LATTICES FINITAS - tesis.ipn.mx

50 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Dado que B es finito usaremos el teorema 2.1.24 para probar que h es biyectiva. Sesabe que v ∈ B se puede expresar como la unión de un número finito de átomos, digamosv = a1, . . . , an con ai v v. Supongamos h(v) = h(w), i.e., A(v) = A(w). Entoncesai ∈ A(v) y ai ∈ A(w) ⇒ v v w y w v v. Se tiene entonces que v = w y por lo tanto hes inyectiva.

Para probar que h es sobre se verifica a continuación que para cada C ∈ P(A) existeun v ∈ B tal que h(v) = C. Sean C ⊆ A, C = {c1, . . . , cn} y v = c1 t · · · t cn. EntoncesC ⊆ h(v).

Reciprocamente , si a ∈ h(v), entonces a es un átomo con a v v = c1 t · · · t cn. Deaquí que a v ci, para algún 1 ≤ i ≤ n, por el lema 2.1.21 y el lema 2.1.22. Por ser ci

átomo a = ci ∈ C. De esta manera h(v) = C. �

Teorema 2.1.26 El cardinal de un algebra de Boole finita es siempre de la forma 2n ycualesquiera dos algebras de Boole con el mismo cardinal son isomorfas.

DemostraciónSea Bi (i=1,2) un algebra de Boole. Por el teorema 2.1.25 Bi

∼=b P(Ai), en dondeAi es el conjunto de átomos de Bi. Se sabe que |Bi| = |P(Ai)| = 2|Ai| lo cual prueba laforma del cardinal.

|B1| = |B2| implica que |A1| = |A2|, luego entonces existe una biyección f : A1 → A2.Definimos la función

g : P(A1) −→ P(A2), A 7−→ f(A)

Al ser f biyectiva se sigue que g es biyectiva, si A, C ⊆ A1 entonces f(A ∪ C) =f(A) ∪ f(C), f(A ∩ C) = f(A) ∩ f(C) y A2 \ f(A) = f(A1 \ A). De lo anterior se tieneque g es un isomorfismo entre algebras de Boole y podemos escribir P(A1) ∼=b P(A2).Por transitividad B1 = B2. �

Teorema 2.1.27 Para toda algebra de Boole finita B, B 6= 0 existe un n ∈ N tal que:

B ∼=b {0, 1}n

DemostraciónSe procede a mostrar por indución sobre |B|. Si |B| = 2, el resultado es obvio.

Supongamos |B| > 2 y tomemos a ∈ B, a 6= 0 y a 6= 1.La función f : B → [0, a] × [a, 1], definida por b 7→ (a u b, a t b), es inyectiva por la

regla de cancelación.

f(b u c) = (a u (b u c), a t (b u c))

= ((a u b) u (a u c), (a t b) u (a t c))

= (a u b, a t b) u (a u c, a t c)

= f(b) u f(c) (f es intersección homomorfismo)

Page 59: LATTICES FINITAS - tesis.ipn.mx

2.2. POLINOMIOS DE BOOLE 51

f(b t c) = (a u (b t c), a t (b t c))

= ((a u b) t (a u c), (a t b) t (a t c))

= (a u b, a t b) t (a u c, a t c)

= f(b) t f(c) (f es unión homomorfismo)

además

(a u b′, a t b′) u (a u b, a t b) = (a u b′ u b, a t (b u b′)) = (0, a)

(a u b′, a t b′) t (a u b, a t b) = (a t (b′ u b), a t b t b′) = (a, 1)

i.e. (f(b))′ = f(b′)

De lo anterior se siague que f es un homomorfismo de Boole.Finalmemte si (x, y) ∈ [0, a]× [a, 1], sea b := y u (a′ t x) y al evaluar en f

f(b) = (a u [y u (a′ t x)], a t [y u (a′ t x)])

= (a u (a′ t x), a t [y u (a′ t x)])

= ((a u a′) t (a u x), y u (1 t x))

= (0 t x, y u 1) = (x, y)

f es un isomorfismo de Boole B ∼=b [0, a] × [a, 1]. Por hipótesis de inducción existenn,m ∈ N con [0, a] ∼=b {0, 1}n y [a, 1] ∼=b {0, 1}m. De aqí que B ∼=b {0, 1}n+m. �

Teorema 2.1.28 Sea B un algebra de Boole. Para funciones de Bn en B se define:

f u g : Bn → B, x 7→ f(x) u g(x);

f t g : Bn → B, x 7→ f(x) t g(x);

f ′ : Bn → B, x 7→ (f(x))′

f0 : Bn → B, x 7→ 0;

f1 : Bn → B, x 7→ 1;

∀x ∈ Bn. Luego el conjunto de todas las funciones de Bn en B es un algebra de Booolecon las operaciones definidas como anteriormente.

Demostración Véase [6] p.30.

2.2. Polinomios de BooleDefinición 2.2.1 La noción de polinomio de Boole se define de forma recurrente. SeaXn = {x1, . . . , xn} un conjunto de n símbolos llamados variables o indeterminadas, elcual no contiene al 0 o al 1. Los polinomios sobre Xn son los objetos que se puedenobtener recursivamente aplicando las siguientes:

Page 60: LATTICES FINITAS - tesis.ipn.mx

52 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

1. x1, . . . , xn y 0, 1 son polinomios de Boole.

2. si p y q son polinomios de Boole, entonces también lo son

(p) u (q), (p) t (q), (p)′

Se denota al conjunto de polinomios de Boole por Pn.Algunosjemplos de polinomios de Boole sobre {x1, x2} son 0, 1, x1, x2, x1 u x2, x1 t

x2, x′1 u x2.

Dado que todo polinomio en n variables puede verse como un polinomio en n+1variables se tienen las siguientes contenciones:

P1 ⊆ P2 ⊆ · · · ⊆ Pn ⊆ Pn+1.

Se quiere que x1 u x2 sea lo mismo que x2 u x1 por lo cual se introduce el concepto defunciones polinomiales.

Definición 2.2.2 Sea B un algebra de Boole y p un polinomio de Boole en Pn. Entoncesse define

pB : Bn → B, (a1, . . . , an) 7→ pB(a1, . . . , an)

donde pB(a1, . . . , an) es un elemento en B que resulta de sustituir cada xi por ai.

Definición 2.2.3 Pn(B) := {pB|p ∈ Pn}

Teorema 2.2.4 Sea B un algebra de Boole; entonces el conjunto Pn(B) es un algebrade Boole y una subalgebra del algebra de Boole Fn(B) de todas las funciones de Bn en B.

Demostración Véase [6] p.33.

Definición 2.2.5 Dos polinomios p, q ∈ Pn se dicen equivalentes, p ∼ q, si sus funcionespolinomiales sobre el algebra B = {0, 1} son iguales, es decir

p ∼ q ⇔ pB = qB

Notemos que la relación ∼ es una relación de equivalencia que particiona a Pn en clasesde polinomios con igual función polinomial.

Teorema 2.2.6 1. La relación ∼ es una relación de equivalencia sobre Pn.

2. Pn/ ∼ es un algebra de Boole con respecto a las operaciones ususales de clases y

Pn/ ∼∼=b Pn(B).

Demostración Véase [6] p.33.

Page 61: LATTICES FINITAS - tesis.ipn.mx

2.3. FORMA MINIMA DE LOS POLINOMIOS DE BOOLE 53

Teorema 2.2.7 Sean p, q ∈ Pn y supongamos que p ∼ q y sea B un algebra de Boolearbitraria. Entonces pB = qB.

Demostración Véase [6] p.34.

Definición 2.2.8 N ⊆ Pn es un sistema de formas normales si

1. Cada p ∈ Pn es equivalente a algún q ∈ N

2. ∀q1, q2 ∈ N, q1 6= q2 ⇒ q1 � q2.

Teorema 2.2.9 Los siguientes conjuntos son sistemas de formas normales en Pn:

(i) Nd := {t(i1,...,in)∈{1,−1}ndi1...in u xi11 u, · · · u xin

n , donde di1...in ∈ {0, 1}}(ii) Nc := {u(i1,...,in)∈{1,−1}ci1...in t xi1

1 t, . . . ,txinn , donde ci1...in ∈ {0, 1}}

Demostración Véase [6] p.33.

Definición 2.2.10 Sea p ∈ Pn.

1. El polinomio univocamente determinado pd ∈ Nd con p ∼ pd se llama la formanormal disyuntiva de de p.

2. El polinomio univocamente determinado pc ∈ Nc con p ∼ pc se llama la formanormal conjuntiva de de p.

La forma normal disyuntiva de un polinomio p puede obtenerse con la aplicaciónsucesiva de las siguientes reglas

Paso 1. Aplicando las leyes de Morgan se elimina ′ de los terminos que agrupa.Paso 2. Aplicar las leyes distributivas para expresar a p como la unión de intersec-

ciones. En cada intersección los x′is pueden aparecer como xi, x′i o no aparecer.Paso 3. Si xi esta ausente agregar xi t x′i Paso 4. Nuevamente aplicar las leyes dis-

tributivas hasta que se obtiene la union de intersecciones.

2.3. Forma Minima de los Polinomios de BooleEn vez de utilizar xuy y xty se utilizará xy y x+y respectivamente. Se considerarán

polinomios en su forma normal disyuntiva o como suma de productos. Cualquier xi

indicando complemento o no , 0 y 1 se definen como literales. df denotará el numerototal de literales que aparecen en f cuando se expresa como suma de productos; ef

denotará el numero de productos que aparecen en f cuando se expresa como suma deproductos. Decimos que una expresión de suma de productos f es más simple que otraexpresión de suma de productos g si df ≤ dg y ef ≤ eg pidiendo además que al menos unade las dos desigualdades sea estricta. f se dice minimal si no hay una expresión de sumade productos mas simple que sea equivalente a f . En otras palabras estamos buscandola expresión más corta con el minimo número de literales que sea equivalente a f . Talforma minimal no siempre es única. Un polinomio de Boole también se denomina comoexpresión.

Page 62: LATTICES FINITAS - tesis.ipn.mx

54 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Definición 2.3.1 Una expresión p implica una expresión q si para toda

b1, . . . , bn ∈ B, pB(b1, . . . , bn) = 1 ⇒ qB(b1, . . . , bn) = 1;

p se dice una implicante de q.

Definición 2.3.2 Una expresión producto es una expresión en donde + no aparece. Unimplicante primo para una expresión p es una expresión producto(o simplemente un pro-ducto) α la cual implica p, pero α no implica a p si alguno de sus elementos es eliminado.Un producto cuyos factores forman un subconjunto de factores de otro producto se dicesubproducto de este último., i.e., q es un subproducto de p ∈ Pn si existen p1, p2 ∈ Pn

tales que p = p1qp2.

Teorema 2.3.3 Un polinomio p ∈ Pn es equivalente a la suma de todas las implicantesprimas de p.

Demostración Véase [6] p.46.

2.4. Circuitos EléctricosUna de las mas importantes aplicaciones del algebra moderna, además de antigua,

es el uso de las Algebras de Boole para modelar y simplificar circuitos eléctricos. Loscontactos en un circuito eléctrico son elementos con dos estados (abierto/cerrado) comopor ejemplo contactos mecánicos, semiconductores, celdas fotoeléctricas o transistores.El tipo de los dos estados depende del tipo de circuito; podemos considerar elementosque sean conductores o no conductores, que esten cargados o no, que esten magnetizadospositiva o negativamente.

En un circuito los contactos pueden simbolizarse como en la figura 2.3.El símbolo S ′

1 indica un contacto que esta en el estado opuesto a S1. De manerasimilar todos los contactos etiquetados con S1 indican que todos al mismo tiempo estanabiertos o cerrados. En un circuito, cuando S1 y S2 estan conectados en serie (figura2.4) entonces hay corriente si, y sólo si, ambos, S1 y S2, están cerrados. Cuando S1 y S2

están conectados en paralelo (figura 2.5) entonces existe corriente si, y sólo si, ambos oal menos uno de S1 y S2 está cerrado.

Definición 2.4.1 1. Xn = {x1, ..., xn} y sus elementos se llaman contactos.

2. Cada p ∈ Pn es un circuito de contactos.

3. x′i es el contacto complemento de xi.

4. xixj es la conexión en serie de xi y xj.

5. xi + xj es la conexión en paralelo de xi con xj.

6. Para cada p ∈ Pn la correspondiente p ∈ Pn(B) es la función contacto de p.

Page 63: LATTICES FINITAS - tesis.ipn.mx

2.4. CIRCUITOS ELÉCTRICOS 55

Figura 2.3:

Figura 2.4: 1

Figura 2.5:

Page 64: LATTICES FINITAS - tesis.ipn.mx

56 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Figura 2.6:

7. p(a1, ..., an) es el valor de del circuito p en a1, . . . , an ∈ B. Los ai son las variablesde entrada.

Los circuitos pueden representarse gráficamente como en el siguiente ejemplo:El circuito definido por x1x2 + x3x4 se puede representar por el diagrama de la

figura 2.6:Lo anterior nos indica como modelar circuitos eléctricos mediante el uso de los poli-

nomios de Boole. Diferentes circuitos eléctricos operan de la misma forma si sus valoresson los mismos para todas las posibles combinaciones de variables de entrada. Es decir,que para los correspondientes polinomios p,q se tiene pB = qB.

Dado un circuito eléctrico y su polinomio de Boole asosiado p, al encontrar un poli-nomio equivalente q a p más simple tenemos un circuito elétrico asosiado a q con lasmismas propiedades que el inicial pero más simple. Esto se obtiene al transportar elpolinomio dado a su forma normal disyuntiva y entonces aplicar otro método de simpli-ficación.

Ejemplos 2.4.2 1. Dado el circuito p = x1(x2(x3 + x4) + x3(x5 + x6)), obtenemos sudiagrama en la figura 2.7:

Para el circuito definido por p = x1(x′2(x6 + x3(x4 + x′5)) + x7(x3 + x6)x

′8), su correspon-

diente diagrama aparece en la figura 2.8:

Si p = (((x1x2)′x3)+x4)((x1x2)+(x′3x4)) entonces p es equivalente a q = (((x′1 +x′2)x3)+

x4)((x1x2) + (x′3x4)) cuyo diagrama corresponde a la figura 2.9.Consideremos el circuito de la figura 2.10.Observamos que tenemos corriente si y solo si: x1 y x2 estan cerradas o

x1, x3 y x5 estan cerradas ox4 y x5 estan cerradas ox4, x3 y x2 estan cerradas.

El correpondiente polinomio que describe al circuito es:

p = x1x2 + x1x3x5 + x4x5 + x4x5

Page 65: LATTICES FINITAS - tesis.ipn.mx

2.4. CIRCUITOS ELÉCTRICOS 57

Figura 2.7:

Figura 2.8:

Figura 2.9:

Page 66: LATTICES FINITAS - tesis.ipn.mx

58 CAPÍTULO 2. ÁLGEBRAS DE BOOLE

Figura 2.10:

Figura 2.11:

El circuito con la misma función polinomica se representa en la figura 2.11

Page 67: LATTICES FINITAS - tesis.ipn.mx

Capítulo 3

Generación de Lattices Finitas

Definición 3.0.3 Sea n ∈ N. Denotamos por Ln al conjunto de las lattices L tales que

1. L = {0, 1, . . . , n− 1}

2. 0 es el primer elemento y 1 el último elemento de L

Si L ∈ Ln decimos que L es una n-lattice.

Definición 3.0.4 Sea A ⊆ L no vacío y L una n-lattice. A es una L-anticadena si A esuna anticadena y se cumple la siguiente propiedad:

a u b ∈ {0}∪ ↑ A, ∀a, b ∈↑ A.

Lema 3.0.5 Sea L una n-lattice y A ⊆ L\{0}. A es una L-anticadena si, y sólo si, existeuna lattice LA con LA = {0, 1, . . . , n − 1, n} tal que L es un subconjunto parcialmenteordenado de LA; n es un átomo en LA y A es el conjunto de sus cubiertas superiores.

DemostraciónNecesidad. Definamos LA como ({0, 1, . . . , n},vA) en donde

vA=v ∪{(0, n), (n, n)} ∪ ({n}× ↑ A)

Sean a, b, c ∈ {0, 1, . . . , n}.

Para a 6= n, (a, a) ∈v por ser v una relación de orden parcial y (n, n) ∈vA pordefinición, lo cual implica que vA es reflexiva.

Supongamos que a vA b y b vA a. Si alguno de a o b es n entonces a = b = n.Si a, b 6= n entonces a = b por ser v un orden parcial, lo cual implica que vA esantisimétrica.

59

Page 68: LATTICES FINITAS - tesis.ipn.mx

60 CAPÍTULO 3. GENERACIÓN DE LATTICES FINITAS

Supongamos que a vA b y b vA c. Si a = n entonces b ∈↑ A luego existe a1 ∈ A talque a1 v b y por transitividad de v a1 v c, lo cual implica c ∈↑ A y por definición(a, c) = (n, c) ∈ {n}× ↑ A ⊆vA .

Si b = n entonces por definición a = n ; así a vA C.

Análogamente si c = n entonces a = b = c = n y por definición se tiene quea = n vA n = c.

Por otra parte si a, b, c 6= n entonces a vA c por la transitividad de v.

Dado lo anterior se sigue que vA es transitiva.

Se concluye que vA es una relación de orden parcial y por lo tanto que (L,v) es unsubconjunto parcialmente ordenado de LA.

Ahora analicemos los siguientes casos:

Si alguno de a o b es igual a n entonces a uLA b = 0.

Si alguno de a o b no pertenecen a ↑ A entonces n �v a o n �v a respectivamente;luego para a ∈↑ A y b /∈↑ A la única cota inferior en común de a y b es el 0, lo cualimplica a uLA b = 0 y lo mismo pasa si b ∈↑ A y a /∈↑ A.

Si a, b /∈↑ A por lo anterior n no es una cota inferior para {a, b} y como L es una latticeentonces a u b = a uLA b

Si a, b ∈↑ A entonces como A es una L-anticadena a u b ∈ {0}∪ ↑ A. Como n es unacota inferior para ↑ A entonces a uLA b ∈ {n}∪ ↑ A

Así a uLA b ∈ LA para todo a, b ∈ LA. Por definición n vA a1 para algún a1 ∈ A ypor transitividad de vA se tiene que a vA 1, luego 1 es el último elemento de LA. Por ellema 1.5.11 LA es una lattice.

Finalmente se sigue de la construcción de LA que n es un átomo en LA. Si a1 es unacubierta superior de n entonces por definición a1 ∈↑ A. Luego existe a ∈ A tal que a v a1

y por definición de cubierta superior a1 = a lo cual implica lo siguiente:

conjunto de cubiertas superiores ⊆ A.

Por otro lado si a ∈ A entonces por definición de LA se tiene que n v a. Si b ∈ LA\{n} estal que n v b v a entonces b ∈↑ A, luego existe a′ ∈ A tal que a′ v b y por transitividada′ v a. Como A es una anticadena y a, a′ ∈ A entonces a′ = b = a. Por lo tanto

A ⊆ conjunto de cubiertas superiores de n.

De aquí que el conjunto de cubiertas superiores de n es A.Suficiencia. Sean a, a′ ∈ A con a 6= a′. Como A es el conjunto de las cubiertas

superiores de n entonces a �v a′ y a′ �v a, lo cual implica que A es una anticadena enLA y por lo tanto también en L. Sean c, d ∈↑ A =↑ {n}\{n}. Entonces cuLAd ∈ {n}∪ ↑ Ay así c uL d ∈ {0}∪ ↑ A. Por lo tanto A es una L-anticadena. �

Page 69: LATTICES FINITAS - tesis.ipn.mx

3.1. LATTICES CANÓNICAS 61

3.1. Lattices CanónicasDefinición 3.1.1 Sea L una n-lattice (n ≥ 3). Definimos la función peso w : Ln → Nn−2

de la siguiente manera

w(L) = (w2(L), . . . , wn−1(L)), en donde wi(L) =∑i≺j

2j. (3.1)

Observación 3.1.2 La función 3.1 es inyectiva.

DemostraciónSean L,L′ ∈ Ln.Se cumple lo siguiente:

w(L) = w(L′) ⇔ wi(L) = wi(L′) ∀i = 2, . . . , n− 1.

Supongamos que∑

i≺j 2j =∑

i≺′k 2k. Sean j1 y k1 los mínimos índices que aparecenrespectivamente en las sumatorias de ambos lados de la igualdad.

2j1(1 +∑

i≺j, j 6=j1

2j−j1) = 2k1(1 +∑

i≺′k, k 6=k1

2k−k1)

en donde j − j1, k − k1 > 0. Como 2 no divide a (1 +∑

i≺j, j 6=j12j−j1) ni a (1 +∑

i≺′k, k 6=k12k−k1) y la descomposición en factores primos es única entonces j1 = k1.

Luego∑

i≺j, j 6=j12j−j1 =

∑i≺′k, k 6=k1

2k−k1 . Siguiendo recurrentemente (un número finitode veces) el procedimiento sobre las cubiertas superiores de i en L y L′ tenemos que elconjunto de cubiertas superiores de i es el mismo en L y L′. Además si el conjunto decubiertas superiores de i es el mismo en L y L′ ∀i = 2, . . . , n− 1 entonces el conjunto decubiertas superiores de L y L′ es el mismo y por tal motivo una n-lattice L queda deter-minada por el conjunto de sus cubiertas superiores o inferiores lo cual implica L = L′.Así w es inyectiva. �

Ordenemos a Nn−2 con el orden lexicográfico. Para (a2, . . . , an−2), (b2, . . . , bn−2) ∈Nn−2, definimos (a2, . . . , an−2) vlex (b2, . . . , bn−2) si existe un i = 2, . . . , n − 2 tal queai ≤ bi y ak = bk para k = 2, . . . , i− 1.

Definición 3.1.3 Sea C una n-lattice. Decimos que C es una lattice canónica si paratoda n-lattice L isomorfa a C se tiene que w(C) vlex w(L).

Observación 3.1.4 Sea A una L-anticadena en una n-lattice L. Si LA es canónicaentonces L también es canónica.

DemostraciónSupongamos que L no es canónica. Denotemos por C a la lattice canónica isomorfa a

L con f : L → C el isomorfismo entre lattices. Probemos que f(A) es una C-anticadenaen C. Sean x, y ∈ f(A), y supongamos que x y y están relacionados con x 6= y. Entonces

Page 70: LATTICES FINITAS - tesis.ipn.mx

62 CAPÍTULO 3. GENERACIÓN DE LATTICES FINITAS

por la fórmula 1.2 y el teorema 1.5.5 se tiene alguna de x u y = x o x u y = y. Comoexisten a, b ∈ A ⊆ L tales que f(a) = x y f(b) = y y f es isomorfismo se cumplef(a u b) = f(a) u f(b) = f(a), lo cual implica que a u b = a, lo cual implica a v b. Estono es posible pues A es una anticadena. Análogamente no puede ocurrir que x u y = y.Luego f(A) es una anticadena.

Probemos la igualdad f(↑ A) =↑ f(A). Sea a′ ∈ f(↑ A), luego existe a ∈↑ A tal quef(a) = a′ y existe un a0 ∈ A tal que a0 v a, lo cual implica que f(a0) v f(a), lo cualimplica que a′ = f(a) ∈↑ f(A). Luego f(↑ A) ⊆↑ f(A). Por otra parte sea a′ ∈↑ f(A),luego existe a ∈ f(A) tal que a v a′. Por ser f biyectiva entonces existen x ∈ A y y ∈ Ltales que a = f(x) y a′ = f(y). Luego x v y, lo cual implica que y ∈↑ A Así a′ ∈ f(↑ A).Por lo tanto se sigue la igualdad.

De la igualdad f(↑ A ∪ {0}) = f(↑ A) ∪ f({0}) =↑ f(A) ∪ {0} se sigue que f(A) esuna C-anticadena y luego LA ≈ Cf(A). Como w(C) vlex w(L) y n es un átomo en laslattices L y C entonces se cumple la desigualdad w(Cf(A)) vlex w(LA). �

3.2. Árbol de LatticesConsideremos a la única 2-lattice y definamos

T2 := el conjunto formado por la única 2-lattice

Definamos recurrentemente al conjunto Tn+1, de la siguiente manera:

Tn+1 := {LA | L ∈ Tn, A es una L-anticadena en L tal que LA es canónica}

Sea:

T =∞⋃

n=2

Tn

Para L = ({0, . . . , l},vL),M = ({0, . . . ,m},vM) ∈ T definamos:

L vT M si, y sólo si, l ≤ m y vL=vM |{0,...,l}

Es fácil notar que vT es una relación de orden parcial:

∀L ∈ T l = l y vL=vL. (vT es reflexiva)

Si L,M ∈ T con L vT M y M vT L entonces l = m y vM=vL |{0,...,m} =vL

|{0,...,l} =vL de donde se sigue que L = M. (vT es simétrica)

Si L,M,S ∈ T entonces por definición de vT se tiene que l ≤ m y m ≤ s ⇒ l ≤ s,y además se puede escribir vS |{0,...,l} = (vS |{0,...,m})|{0,...,l} =vM |{0,...,l} =vL. (vTes transitiva)

Page 71: LATTICES FINITAS - tesis.ipn.mx

3.2. ÁRBOL DE LATTICES 63

Sea L una l-lattice canónica. Por el lema 1.5.14 las lattices

({0, . . . , l − 1},vL |{0,...,l−1}), . . . , ({0, 1},vL |{0,1})

son todas canónicas y de ahí que L ∈ T .

Notemos que si L,L′ ∈ T con l = l′, L vT L′ se tiene que @L′ |{0,...,l} =@L′=@L y asíL = L′.

Luego

({0, 1},vL |{0,1}) ≺T , . . . ,≺T ({0, . . . , l − 1},vL |{0,...,l−1}) ≺T L,

y por lo tanto ↓ L es una cadena.A continuación se muestra un algoritmo recurrente que genera exactamente todas las

n-lattices canónicas para un n dado. m toma el valor inicial 2 y L toma el valor inicial{0, 1}.

NextLattice(entero m, m-lattice canónica L){

if( m < n )then para cada L-anticadena Ade L do

if LA es un lattice canónicathen NextLattice(m + 1, LA)

elseoutput L

}

Como se menciono con anterioridad en una n-lattice L el cero representa el primerelemento y en un conjunto parcialmente ordenado P con n elementos el último nivelcorresponde al conjunto de elementos mínimos. De acuerdo con la ecuación 1.1 se puededefinir una n-lattice como canónica si cumple con la definición tomando al cero como elelemento n. Como gradL(i) ≤ grdL(n − 1) para todo i ≤ j entonces n − 1 es un átomoen L. Por el lema 1.5.14 ({0, . . . , n− 2},vL |{0, . . . , n− 2}) es una n-1-lattice.

Teorema 3.2.1 Toda lattice canónica L es graduada.

DemostraciónSea L una n-lattice canónica y supongamos que no es graduada. Entonces existe

al menos un k ∈ {1, . . . , nivL(n − 1)} tal que Mk =⋃k

h=1 nivh(L) es diferente de{1, . . . , |

⋃kh=1 nivh(L)|}. Sea m el menor de los k′s que cumplen esta propiedad. Sea

i el menor número en {1, . . . , |⋃k

h=1 nivh(L)|} \⋃k

h=1 nivh(L) y sea j cualquiera en⋃mh=1 nivL(h) \ {1, . . . , |

⋃mh=1 nivL(h)|}. Entonces i < j pero gradL(j) < gradL(i). Defí-

nase L′ como la n-lattice isomorfa a L que se obtiene de intercambiar las etiquetas de icon j.

Page 72: LATTICES FINITAS - tesis.ipn.mx

64 CAPÍTULO 3. GENERACIÓN DE LATTICES FINITAS

(i) wk(L) = wk(L′) para toda k = 2, . . . , i − 1; debido a la elección de i se tiene

que k ∈ Mm y entonces gradL(k) ≤ m. Sea c alguna cubierta de k en L. EntoncesgradL(c) ≤ m − 1. Dado que

⋃m−1h=1 nivL(h) coincide con {1, . . . , |

⋃m−1h=1 nivL(h)|}

por la elección de m, se sigue de c ∈ Mm−1 y que i /∈ Mm−1 ⊆ Mm que c < i < j.De aquí que las cubiertas de k en L sean diferentes de i, j y coincidan con lasrespectivas en L′.

(ii) wi(L′) = wj(L); pues gradL′(i) < gradL′(j) se sigue que j no es una cubierta

superior de i en L′. De aquí que las cubiertas de i en L′ coincidan con las de j enL.

(iii) wj(L) < wi(L); dado que j ∈ Mm toda cubierta de j pertenece a Mm−1 ={1, . . . , |Mm−1|} y de ahí que wj(L) < 2|Mm−1|+1. Además gradL(i) > m = gradL(j)y por lo tanto existe una cubierta c de i en L con gradL(c) ≤ m donde c /∈ Mm−1

y de ahí que wi(L) ≤ 2c ≤ 2|Mm−1|+1 > wj(L). Es decir wi(L) > wi(L′)

De lo anterior se sigue que w(L) > w(L′) lo que contradice que L sea canónica y se tieneel resultado. Aunado al anterior se tiene el siguiente:

Teorema 3.2.2 Sea L una n-lattice canónica. Entonces w2(L) ≤, . . . , wn−1(L).

DemostraciónSean i, j ∈ {2, . . . , n − 1} con i < j. Si gradL(i) = gradL(j) considérese la lattice L′

que se obtiene de intercambiar las etiquetas de i con j. Por el teorema anterior Lç esgraduada y se tiene que wk(L) = wk(L

′) para k = 1, . . . , i − 1 y wi(L) ≤ wi(L′) por la

L. Dado que las cubiertas de i en L′ coinciden con las cubiertas de j en L, se tiene quewi(L

′) = wj(L). Se sigue entonces que wi(L) ≤ wj(L). Si gradL(i) < gradL(j) entoncesexiste una cubierta c de j tal que gradL(c) = gradL(j)− 1 ≤ gradL(i), y dado que L esniveliada no existe c ≤ m y i ≺ m. Se sigue entonces que wi(L) < 2c ≤ wj(L).

A continuación se hace un resúmen del algoritmo para construir todas las n-latticescanónicas:

Se construye la única 2-lattice.

Una vez que se construyeron todas las n-1-lattices canónicas

Dada L una n-1-lattice se encuentran todas L-anticadenas A que intersecten alpenúltimo o antepenúltimo nivel de L.

Se conservan solamente aquellas A tales que wn−1(L) ≤∑

a∈A 2a = wn(LA)

Para cada A que se conservó se calcula LA

• Determinar si LA es canónica al encontrar una permutación ϕ de las etiquetasde LA tal que el peso de la lattice resultante al reetiquetar es más pequeño queel de la lattice LA. De hecho por el teorema 3.2.1 es suficiente al considerarpermutaciones que dejan los niveles de LA fijos.

Page 73: LATTICES FINITAS - tesis.ipn.mx

3.2. ÁRBOL DE LATTICES 65

• Otro posible método para reducir el número de permutaciones consideradas sebasa en la siguiente observación: Sea k = gradLA(n). Dado que L es grad-uada, {0} ∪

⋃k−1i=1 nivi(L) = {0, 1, . . . ,m}. Dado que L es canónica tam-

bién lo es ({0, 1, . . . ,m},vL). De aquí que solamente se necesita considerarpermutaciones ϕ tal que la restricción ϕ|{0,1,...,m} es una automorfismo de({0, 1, . . . ,m},vL)

Page 74: LATTICES FINITAS - tesis.ipn.mx

66 CAPÍTULO 3. GENERACIÓN DE LATTICES FINITAS

Page 75: LATTICES FINITAS - tesis.ipn.mx

Bibliografía

[1] Garrett Birkhoff. Lattice Theory, American Mathematical Society, Colloquium Pub-lications, Volumen 25, Tercera Edición 1961.

[2] Reinhard Diestel. Graph Theory, Springer Verlag, Electronic Edition 2000.

[3] Ralph Freese, Jaroslav Ježek y J. B. Nation. Free Lattices, American MathematicalSociety, Mathematical Surveys and Monographs, Volumen 42, 1995.

[4] George Grätzer. General Lattice Theory, Birkhäuser Verlag Basel 1978.

[5] Jobst Heitzig and Jürgen Reinhold. Counting Finite Lattices, Algebra univers. 48,Birkhäuser Verlag Basel, 2002.

[6] Rudolf Lidl y Günter Pilz. Applied Abstract Algebra, Springer Verlag (Undergraduatetexts in mathematics) 1984.

67