35
Matemáticas Discretas Apuntes de Curso José de Jesús Angel Angel [email protected]

C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

Embed Size (px)

Citation preview

Page 1: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

Matemáticas Discretas

Apuntes de Curso

José de Jesús Angel [email protected]

Page 2: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

Contenido

1. Números Enteros 3

2. Bases de números 62.1. Base 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 62.2. base 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 72.3. de base 10 a base 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 72.4. Base 4,8,16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 8

3. Aritmética Modular 103.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . 103.2. El conjunto de elementos módulon, Zn. . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2.1. Propiedades de las congruencias . . . . . . . . . . . . . . . . .. . . . . . . . . 113.3. La suma enZn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.4. El producto enZn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.5. Sin es número primo,Zn es campo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.6. Algunos teoremas importantes . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . 133.7. Aplicaciones de la aritmética modular. . . . . . . . . . . . . .. . . . . . . . . . . . . . 13

3.7.1. Intercambio de claves Diffie-Hellman. . . . . . . . . . . . .. . . . . . . . . . . 143.7.2. Calcular logaritmos discretos a fuerza bruta. . . . . .. . . . . . . . . . . . . . . 143.7.3. Elevar a potencias modulares (Método binario). . . . .. . . . . . . . . . . . . . 153.7.4. Método RSA (Rivest, Shamir, Adleman). . . . . . . . . . . . .. . . . . . . . . 16

3.8. Ejercicios: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . 16

4. Combinatoria 184.1. Combinaciones y Permutaciones . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . 184.2. Problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 194.3. Problemas algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 23

5. Recurrencia 265.1. Recurrencias lineales de primer orden . . . . . . . . . . . . . .. . . . . . . . . . . . . 265.2. Recurrencias lineales de segundo orden homogéneas . . .. . . . . . . . . . . . . . . . 265.3. Recurrencias lineales de segundo orden no homogéneas .. . . . . . . . . . . . . . . . . 265.4. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 275.5. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 27

5.5.1. Algoritmo de la Burbuja . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 275.5.2. Torres de Hanoi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 285.5.3. Sucesión de Fibonacci . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 285.5.4. Divide y Venceras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 28

6. Gráficas 296.1. Matrices de Adyacencia e Incidencia . . . . . . . . . . . . . . . .. . . . . . . . . . . . 306.2. Caminos eulerianos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . 306.3. Gráficas planas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 306.4. Caminos hamiltonianos . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 316.5. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 31

Page 3: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

2

7. Árboles 34

Page 4: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

1Números Enteros

Definición 1 Los números enteros son el conjuntoZ = {...− 2,−1, 0, 1, 2, ...}.

Propiedades de los números enteros:

1. Los números enteros esán ordenados, es decir para todo dosnúmeros enterosa, b siempre se cumpleuna y solo una de las siguientes opciones:

a) a < b.

b) a > b.

c) a = b

2. Dado dos números enterosa, b, b divide aa si existe otro número enteroc tal queb = ac. Seescribeb|a. También se dice quea es factor deb, o queb es múltiplo dea. Decimos también quebes divisible pora.

3. Un número (entero diferente de 1) es primo si solo es divisible por si mismo y por 1.

4. Ejemplos de números primos son= {2, 3, 5, 7, 11, 13, 17, 19, ...}.

5. Hay una cantidad infinita de números primos.

6. Teorema Fundamental de la Aritmética: todo número enterose escribe como producto de potenciasde números primos (salvo signo).

7. En los números enteros no hay inversos multiplicativos, no existe la división, sin embargo tenemosel Algoritmo de Euclides: Dados dos números enterosa, b entonces existen números enterosq, rtales quea = qb+ r, donde0 ≤ r < b, q es el cociente yr se llama residuo.

8. El máximo común divisor de dos númerosa, b es un divisor común dea y b que es máximo. Sedenotamcd(a, b).

9. mcd(a, b) = mcd(b, r)

Page 5: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

1. Números Enteros 4

Proceso del algoritmo de euclides.

a = bq1 + r1 0 ≤ r1 < b

b = r1q2 + r2 0 ≤ r2 < r1

r1 = r2q3 + r3 0 ≤ r3 < r2

· · ·rk−3 = rk−2qk−1 + rk−1 0 ≤ rk−1 < rk−2

rk−2 = rk−1qk−1 0 ≤ rk = 0

Dondemcd(a, b) = mcd(b, r1) = mcd(r1, r2) = · · · = mcd(rk−2, rk−1) = rk−1.

1. Encontrar el MCD de 234 y 24234 = 24 · 9 + 1824 = 18 · 1 + 618 = 6 · 3 + 0

234 = 2 · 32 · 1324 = 23 · 3

2. Encontrar el MCD de 496 y 64496 = 64 · 7 + 4864 = 48 · 1 + 1648 = 16 · 3 + 0

496 = 24 · 3164 = 26

3. Encontrar el MCD de 3564 y 15123564 = 1512 · 2 + 5401512 = 540 · 2 + 432540 = 432 · 1 + 108432 = 108 · 4 + 0

3564 = 22 · 34 · 111512 = 23 · 33 · 7

4. Encontrar el MCD de 128304 y 5616128304 = 5616 · 22 + 47525616 = 4752 · 1 + 8644752 = 864 · 5 + 432864 = 432 · 2 + 0

128304 = 24 · 36 · 115616 = 24 · 33 · 13

5. Encontrar el MCD de 37908000 y 734437908000 = 7344 · 5161 + 56167344 = 5616 · 1 + 17285616 = 1728 · 3 + 4321728 = 432 · 4 + 0

37908000 = 25 · 36 · 53 · 137344 = 24 · 33 · 17

Page 6: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

1. Números Enteros 5

Ejercicios:

1. Encontrar el MCD (20,16) = 4

2. Encontrar el MCD (45,25) = 5

3. Encontrar el MCD (90,39) = 3

4. Encontrar el MCD (115,35) = 5

5. Encontrar el MCD (3355,64) = 1

6. Encontrar el MCD (111,25) = 1.

7. Encontrar el MCD (3533,1522) = 1.

8. Encontrar el MCD (16848,3672) = 216.

Page 7: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

2Bases de números

Todo número enteroa ∈ Z, se representan en base 10. De hecho la representación usualde los númerosnaturales es en base 10. Esto quiere decir lo siguiente:

1. Los dígitos para representar números enteros son:{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}.

2. Entonces, todo número entero se puede representar con estos dígitos. Esto es por tomar base el diez,y se escriben como suma de potencias de diez.

2.1. Base 10

Para poder entender esto, veamos primero algunos ejemplos.Sabemos que100 = 1:

Ejemplos de representación de números enteros en base 10:

a.- 17 = 1 · 101 + 7 · 100

b.- 83 = 8 · 101 + 3 · 100

c.- 123 = 1 · 102 + 2 · 101 + 3 · 100

d.- 276 = 2 · 102 + 7 · 101 + 6 · 100

e.- 789 = 7 · 102 + 8 · 101 + 9 · 100

f.- 4899 = 4 · 103 + 8 · 102 + 9 · 101 + 9 · 100

g.- 5391 = 5 · 103 + 3 · 102 + 9 · 101 + 1 · 100

h.- 3377 = 3 · 103 + 3 · 102 + 7 · 101 + 7 · 100

Si desarrollamos las expresiones de la derecha obtenemos los números de la izquierda, es decir :

a.- 1 · 101 + 7 · 100 = 10 + 7

Page 8: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

2.2. base 2 7

b.- 8 · 101 + 3 · 100 = 80 + 3

c.- 1 · 102 + 2 · 101 + 3 · 100 = 100 + 20 + 3

d.- 2 · 102 + 7 · 101 + 6 · 100 = 200 + 70 + 6

e.- 7 · 102 + 8 · 101 + 9 · 100 = 700 + 80 + 9

f.- 4 · 103 + 8 · 102 + 9 · 101 + 9 · 100 = 4000 + 800 + 90 + 9

g.- 5 · 103 + 3 · 102 + 9 · 101 + 1 · 100 = 5000 + 300 + 90 + 1

h.- 3 · 103 + 3 · 102 + 7 · 101 + 7 · 100 = 3000 + 300 + 70 + 7

2.2. base 2

Los números enteros se pueden representarse en cualquier base b > 1. Algunas bases no son usa-das, sin embargo a causa del desarrollo de las computadoras en los últimos años, los números enterosrepresentados en base 2 han llegado a tener una gran importancia.

Para representar un número entero en base dos se consideran solo los dígitos{0, 1}.

2.3. de base 10 a base 2

Para pasar un númeroa representado en base 10 a base 2 se realiza el siguiente procedimiento:

1. Dividir a entre dos, si el resultado es cero entonces éste es el primer dígito de la derecha, si elresultado es uno, entonces éste es el primer dígito de la derecha.

2. Hacer lo mismo con el cociente de la división del paso anterior, para obtener el segundo dígito.

3. el procedimiento se sigue hasta terminar con los cocientes.

Ejemplos:

1. Pasar a43 de base 10 a base 2.

43 = 21 · 2 + 121 = 10 · 2 + 110 = 5 · 2 + 05 = 2 · 2 + 12 = 1 · 2 + 01 = 0 · 2 + 1

Por lo tanto4310 = 1010112

2. Pasar a15 de base 10 a base 2.

15 = 7 · 2 + 17 = 3 · 2 + 13 = 1 · 2 + 11 = 0 · 2 + 1

Por lo tanto1510 = 11112

Page 9: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

2.4. Base 4,8,16 8

3. Pasar a27 de base 10 a base 2.

27 = 13 · 2 + 113 = 6 · 2 + 16 = 3 · 2 + 03 = 1 · 2 + 11 = 0 · 2 + 1

Por lo tanto2710 = 110112

4. Pasar a33 de base 10 a base 2.

33 = 16 · 2 + 116 = 8 · 2 + 08 = 4 · 2 + 04 = 2 · 2 + 02 = 1 · 2 + 01 = 0 · 2 + 1

Por lo tanto3310 = 1000012

5. Pasar a619 de base 10 a base 2.

619 = 309 · 2 + 1309 = 154 · 2 + 1154 = 77 · 2 + 077 = 38 · 2 + 138 = 19 · 2 + 019 = 9 · 2 + 19 = 4 · 2 + 14 = 2 · 2 + 02 = 1 · 2 + 01 = 0 · 2 + 1

Por lo tanto61910 = 10011010112

Ejercicios:

1. Pasar14610 a base 2. (10010010)

2. Pasar123210 a base 2. (10011010000)

3. Pasar759410 a base 2. (1110110101010)

4. Pasar75902110 a base 2. (10111001010011101101)

2.4. Base 4,8,16

1. Para representar un número en base4, 8 o 16 se sigue el mismo procedimiento que la base 10 o 2.Usando en cada caso los dígitos:

Page 10: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

2.4. Base 4,8,16 9

base 4 base 20 001 012 103 11

base 8 base 20 0001 0012 0103 0114 1005 1016 1107 111

base 16 base 20 00001 00012 00103 00114 01005 01016 01107 01118 10009 1001a 1010b 1011c 1100d 1101e 1110f 1111

2. Para pasar un número de base 10 a base4, 8 o 16 se sigue el mismo procedimiento que a base 2,pero se divide por 4,8 o 16 respectivamente.

3. Para pasar de base 2 a base 4,8 o 16, se asocian los dígitos correspondientes y se sustituyen por susdígitos equivalentes.

Pasar a11011011 a base 4, 8 y 16.

a) (11)(01)(10)(11) = 31234.

b) (011)(011)(011) = 3338.

c) (1101)(1011) = db16.

Page 11: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3Aritmética Modular

3.1. Introducción

Una de las áreas más divertidas de las matemáticas es la aritmética modular. En la aritmética modularse pueden realizar las mismas operaciones que en los númerosreales, pero solo con un conjunto finito deelementos.

En esta lección damos una introducción a las congruencias entre números enteros. Listamos las propie-dades básicas de las congruencias. Las congruencias tienenuna buena cantidad de aplicaciones prácticas,al final damos cuenta de algunas de ellas.

3.2. El conjunto de elementos módulon, Zn.

La definición deZn, es simple. Primero damos un número enteron mayor a 1. Después definimos aZn como el conjunto de residuos módulon. Es decir

Zn = {0, 1, 2, 3, ..., n− 1}

ya que estos son todos los posibles residuos al dividir cualquier número entero porn. Por el teorema dela división para números enteros tenemos que param y n siempre existenq, r donde0 ≤ r < n tal quem = qn + r. Lo anterior nos permite identificar a cualquier número entero m con su residuor, se diceque la clase módulon dem esr.

En la siguiente tabla podemos dar algunas de las identificaciones para el caso den = 5.

Residuos módulo5

−10 −9 −8 −7 −6

−5 −4 −3 −2 −1

0 1 2 3 4

5 6 7 8 9

10 11 12 13 14

15 16 17 18 19

La tabla quiere decir que 17 al dividirlo por 5 deja como residuo 2 (17 está en la columna del 2).También que el 6 al dividirlo por 5 deja como residuo 1.

Se acostumbra a escribirse como1 ≡ 6(mod5), y se lee, 1 es congruente con 6 módulo 5.

Page 12: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.3. La suma enZn 11

Formalmente,1 ≡ 6(mod5), porque5 divide a6− 1. Es decir, seana, b números enteros, entoncesaes congruente conb módulon si m|(a− b).

3.2.1. Propiedades de las congruencias

1. Dado un númeron, todo enterom es congruente a uno y solo un residuo módulon.

2. Se cumple la propiedad reflexiva, es decir todo entero es congruente con si mismo módulon.

3. Se cumple la propiedad simétrica, es decir, sia es congruente conb, entoncesb es congruente cona módulon.

4. Se cumple la propiedad transitiva, es decir, Sia es congruente conb y b es congruente conc,entoncesa es congruente conc módulon.

5. Las propiedades 2,3,4 dicen que la congruencia es una relación de equivalencia. Equivalentementeque dado un enteron, entonces de la congruencia módulon se deriva una partición para los númerosenteros. De manera informal esto quiere decir que con las congruencias podemos ver a los númerosenteros como un conjunto finito de “números".

6. Se puede definir una suma entre las clases deZn, con esta sumaZn es un grupo conmutativo.

7. Se puede definir un producto enZn, pero para un elementoa existe su inverso multiplicativo sí ysolo si(a, n) = 1.

8. Sin es número primo, entoncesZn es un campo.

3.3. La suma enZn

Cuando es necesario distinguir a los elementos deZn se escriben como[a] ó a.La suma enZn se realiza de manera natural, si[a], [b] ∈ Zn, entonces[a+ b] es el residuo correspon-

diente aa+ b.

Ejemplos:

1. Sean = 2, entonces la tabla de suma de los elementos deZ2 es:

+ 0 1

0 0 1

1 1 0

2. Sean = 3, entonces la tabla de suma de los elementos deZ3 es:

+ 0 1 2

0 0 1 2

1 1 2 0

2 2 0 1

Page 13: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.4. El producto enZn 12

3. Sean = 4, entonces la tabla de suma de los elementos deZ4 es:

+ 0 1 2 3

0 0 1 2 3

1 1 2 3 0

2 2 3 0 1

3 3 0 1 2

4. Sean = 5, entonces la tabla de suma de los elementos deZ5 es:

+ 0 1 2 3 4

0 0 1 2 3 4

1 1 2 3 4 0

2 2 3 4 0 1

3 3 4 0 1 2

4 4 0 1 2 3

3.4. El producto enZn

El producto enZn se realiza de manera natural, si[a], [b] ∈ Zn, entonces[a · b] es el residuo corres-pondiente aa · b.

Ejemplos:

1. Sean = 2, entonces la tabla de multiplicación de los elementos deZ2 es:

· 0 1

0 0 0

1 0 1

2. Sean = 3, entonces la tabla de multiplicación de los elementos deZ3 es:

· 0 1 2

0 0 0 0

1 0 1 2

2 0 2 1

3. Sean = 4, entonces la tabla de multiplicación de los elementos deZ4 es:

Page 14: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.5. Sin es número primo,Zn es campo 13

· 0 1 2 3

0 0 0 0 0

1 0 1 2 3

2 0 2 0 2

3 0 3 2 1

4. Sean = 5, entonces la tabla de multiplicación de los elementos deZ5 es:

· 0 1 2 3 4

0 0 0 0 0 0

1 0 1 2 3 4

2 0 2 4 1 3

3 0 3 1 4 2

4 0 4 3 2 1

Obsérvese que en el cason = 4, el producto2 · 2 = 0, esto quiere decir que en este caso la clase del2no tiene inverso multiplicativo.

Obsérvese también que en los otros casosn = 2, 3, 5 todos los elementos tienen inverso multiplicativo.

3.5. Sin es número primo,Zn es campo

Si n es un número primo entonces todo elemento deZn = {0, 1, 2, ..., n − 1} tiene inverso multipli-cativo. Es decirZn es un campo. Seaa ∈ Zn, comon es primo, entonces(a, n) = 1 y por el teoremaextendido de Euclides existen enterosb, c tales queba+nc = 1, aplicando la división porn y obteniendosu residuo a la igualdad, obtenemosba = 1. Esto quiere decir que el inverso multiplicativo módulon dea esb.

3.6. Algunos teoremas importantes

1. Seap un número primo, entoncesZp es un campo finito. De hecho se puede mostrar que cualquiercampo finito tiene como base un campoZp es decir, todo campo finito es una extensión deZp, otambién que todo campo finito tiene la formaZpn .

2. El pequeño teorema de Fermat afirma que para todoa y p un primo, entoncesap ≡ a( modp).Es decir que sip es un número primo entoncesap−1 ≡ 1( modp). Esta última desigualdad esusada para probar que un númerop presuntamente puede ser primo. Debido a la dificultad paraprobar realmente que un númerop sea primo, se han usado métodos probabilísticos, es decir mé-todos que arrogan con alta probabilidad a un número primo. A este tipo de números se les conocecomo seudoprimos, pero para casos prácticos se ha podido mostrar que estos seudoprimos de he-cho son primos. Los métodos esencialmente toman varios “testigos"a y verifican si se cumple lacongruenciaap−1 ≡ 1( modp), en tal caso se declara ap un seudoprimo.

3.7. Aplicaciones de la aritmética modular.

Entre las aplicaciones más conocidas de las congruencias tenemos:

Page 15: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.7. Aplicaciones de la aritmética modular. 14

1. En criptografía, su uso es extenso, en muchos casos los sistemas criptográficos realizan sus opera-ciones enZn, para diferentes tipos den. Para el sistema RSAn es producto de dos números primosn = pq. Para otros sistemas como DH, ElGamal,n es primo.

2. En varios sistemas de verificación de dígitos, la aritmética modular es muy usada. Estos sistemasson usados ampliamente en productos de los supermercados, en servicios postales, en cheques,tarjetas de crédito, etc.

3.7.1. Intercambio de claves Diffie-Hellman.

1. Primero Alice y Bob se ponen de acuerdo en los parámetros públicos. Sea por ejemplog = 2 yZn = Z19.

2. Tanto Bob como Alice generan su parte secreta (clave secreta).

Alice generax = 7

Bob generay = 9

3. Ambos ahora calculangx para Alice ygy Bob.

Alicegx = 27( mod19) = 14

Bobgy = 29( mod19) = 18

4. Se realiza el intercambio de valoresgx, gy.

Alicegx = 14

18

Bobgy = 18

14

5. Ambos elevan su parte recibida a su clave secreta.

Alicegx = 14

18187( mod19) = 18

Bobgy = 18

14149( mod19) = 18

6. Finalmente ambos comparten la misma clave simétrica.

Alicegx = 14

18187( mod19) = 18

18

Bobgy = 18

14149( mod19) = 18

18

3.7.2. Calcular logaritmos discretos a fuerza bruta.

1. EnZ17 calcular el logaritmo discreto de 4 base 5. Es decir encontrar x tal que5x = 4 mod17. Porfuerza bruta calculamos potencias sucesivas de 5.

Page 16: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.7. Aplicaciones de la aritmética modular. 15

51( mod17) = 552( mod17) = 853( mod17) = 654( mod17) = 1355( mod17) = 1456( mod17) = 257( mod17) = 1058( mod17) = 1659( mod17) = 12510( mod17) = 9511( mod17) = 11512( mod17) = 4

Por lo tantolog5(4) = x = 12.

3.7.3. Elevar a potencias modulares (Método binario).

En ocasiones la operaciónab modn, no es fácil de realizar con pocos recursos como calculadoras de32 bits. Existe un método (el binario) que nos ayudara a realizar esta operación de manera eficiente.

1. Realizarab modn.

2. Por ejemplo:247235 mod391.

3. Escribir en binario a la potancia23510 = 111010112.

4. Por lo tanto

247235 = 2471·27+1·26+1·25+0·24+1·23+0·22+1·21+1·20

= 24727

24726

24725

24723

24721

24720

5. Ahora podemos calcular potencias modulares de la siguiente forma:

24720

mod391 = 247

24721

mod391 = 13

24723

mod391 = 18

24725

mod391 = 188

24726

mod391 = 154

24727

mod391 = 256

6. Finalmente calculamos el producto:

247 · 13 mod391 = 8383 · 18 mod391 = 321

321 · 188 mod391 = 134134 · 154 mod391 = 304304 · 256 mod391 = 15

7. Con todo lo anterior247235 mod391 = 15.

Page 17: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.8. Ejercicios: 16

3.7.4. Método RSA (Rivest, Shamir, Adleman).

El sistema RSA es un método criptográfico de clave pública, que es ampliamente usado en certificadosdigitales en la actualidad.

1. Sean = p · q producto de dos números primos.

2. Seae un número entero.

3. SeaM el mensaje a cifrar.

4. SeaC el mensaje a cifrado.

5. C = Me modn formula de cifrado.

6. M = Cd modn formula de descifrado.

7. Donded = e−1 mod(p− 1)(q − 1).

Calcular inversos multiplicatimos modulares.Un inverso multiplicativo modular dea es un númerob tal quea·b modn = 1. El método para calcular

inversos multiplicativos es el algoritmo extendido de Euclides. Sin embargo suele ser en algunos casosmás rápido calcularlo por ensayo y error.

1. Se sabe que1 es del númeron + 1, por lo tanto si queremos calcular ad = e−1 modn. Entoncesmultiplicamosd · e cond tal que su producto este cerca den, si no es el caso, entonces buscamos ad si el productod · e esta cerca de2n+ 1, si no, cerca de3n+ 1, etc.

2. Ejemplo: sip = 17, q = 23, e = 3. Entonces(p − 1)(q − 1) = 352, además sid = 117, entoncesd · e = 117 · 3 = 351que no fue 1. Ahorad = 235, d · e = 235 · 3 = 705 pero705 = 352 · 2 + 1,es decird = 235 es el inverso dee = 3 mod352.

Ejemplo RSA.

1. Seap = 17, q = 19 y e = 5.

2. Entoncesn = 323, (p− 1)(q − 1) = 288, y d = 173.

3. SiM = 10, entoncesC = Me mod323 = 193.

4. M = Cd mod323 = 193173 mod323 = 10.

3.8. Ejercicios:

1. Hacer la tabla de suma y producto deZ11.

2. Por ensayo y error calcularln2(9) enZ11.

3. Sig = 2 y Z11, son los parámetros públicos en el esquema de intercambio declavesDH (Diffie-Hellman). La parte secreta de Alice es6, la parte secreta de Bob es3. Encontrar la clave secretacompartida.

4. Sig = 2 y Z11, son los parámetros públicos en el esquema de intercambio declavesDH (Diffie-Hellman). La parte secreta de Alice es8, la parte secreta de Bob es9. Encontrar la clave secretacompartida.

Page 18: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

3.8. Ejercicios: 17

5. Sig = 2 y Z11, son los parámetros públicos en el esquema de intercambio declavesDH (Diffie-Hellman). La clave compartida es3. Encontrar posibles claves secretas de Alice y Bob.

6. En el sistema RSA, tomamosp = 23, q = 17 e = 3, cifrar el mensajem = 10, y descifrarloescribiendo todas sus operaciones modulares.

7. En el sistema RSA, tomamosp = 23, q = 17 e = 3, cifrar el mensajem = 25, y descifrarloescribiendo todas sus operaciones modulares.

8. En el sistema RSA, tomamosp = 19, q = 17 e = 5, cifrar el mensajem = 66, y descifrarloescribiendo todas sus operaciones modulares.

9. En el sistema RSA, tomamosp = 3, q = 11 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 13, encontrar el mensaje original. 7

10. En el sistema RSA, tomamosp = 2, q = 5 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 3, encontrar el mensaje original. 7

11. En el sistema RSA, tomamosp = 2, q = 5 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 2, encontrar el mensaje original. 8

12. En el sistema RSA, tomamosp = 3, q = 5 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 8, encontrar el mensaje original. 2

13. En el sistema RSA, tomamosp = 3, q = 5 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 13, encontrar el mensaje original. 7

14. En el sistema RSA, tomamosp = 3, q = 5 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 12, encontrar el mensaje original. 3

15. En el sistema RSA, tomamosp = 3, q = 5 e = 3, se cifro el mensajeM y se obtuvo el mensajeC = 2, encontrar el mensaje original. 8

16. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 32, encontrar el mensaje original. 2

17. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 5, encontrar el mensaje original. 10

18. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 9, encontrar el mensaje original. 4

19. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 12, encontrar el mensaje original. 17

20. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 33, encontrar el mensaje original. 3

21. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 23, encontrar el mensaje original. 18

22. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 24, encontrar el mensaje original. 19

23. En el sistema RSA, tomamosp = 5, q = 7 e = 5, se cifro el mensajeM y se obtuvo el mensajeC = 11, encontrar el mensaje original. 16

Page 19: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4Combinatoria

4.1. Combinaciones y Permutaciones

1.

Sean dos conjuntos finitos disjuntosT , S, entonces:

a) |S ∪ T | = |S|+ |T |(principio de la suma).

En general|S ∪ T | = |S|+ |T | − |S ∩ T |

2. Sean dos conjuntos finitosT , S, entonces:|T × S| = |T ||S|(principio del producto).

3.

Si S es un conjunto finito den elementos, y elegimosk de ellos con reemplazamiento. Entoncestenemos

nk

posibles elecciones.

4.

Si S es un conjunto finito den elementos, y elegimosk de ellos sin reemplazamiento. EntoncesTenemos

n(n− 1)(n− 2) · · · (n− (k − 1))

posibles elecciones.

5.

Si S es un conjunto finito den elementos, yk < n entonces hayP (n, k) permutaciones dek de losn elementos,

P (n, k) =n!

(n− k)!

6.

Seann, k números enteros, el coeficiente binomial esta definido como:(

n

k

)

=n!

(n− k)!k!

es el número de subconjuntos dek elementos, tomados de un conjunto den elementos.

Page 20: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.2. Problemas 19

7.

Se cumple que:(

n

k

)

=P (n, k)

k!

es el número de subconjuntos dek elementos, tomados de un conjunto den elementos.

8.

Si existenn objetos conn1 de un tipo (iguales),n2 de otro tipo, ynr de unr-ésimo tipo, entonceshay

n!

n1!n2! · · ·nr!

disposiciones de losn objetos dados sin distinguir los del mismo tipo.

4.2. Problemas

Problemas resueltos:

1. Un anuncio de hamburguesas indica que un cliente puede ordenar su hamburguesa con algunos,ninguno o todos de los siguientes ingredientes: catsup, mostaza, mayonesa, lechuga, tomate, ce-bolla, pepinillos, queso o champiñones. ¿cuántas ordenes diferentes de hamburguesas se puedenservir?Solución: una orden esta compuesta de cualquier subconjunto de los9 ingredientes, es decir hay(

90

)

+(

91

)

+(

92

)

+ · · · +(

99

)

posibilidades. Por el teorema del binomio son(1 + 1)9 de ordenesdiferentes.

2. Si lanzamos una moneda 5 veces, cuántos posibles resultados tenemos.Solución: Al lanzar la primera vez las posibilidades de resultados son2, al lanzar la segunda vezlas posibilidades son igual dos, entonces tenemos2 × 2 posibles resultados con dos lanzamientos.Con 5 lanzamientos tenemos2× 2× 2× 2× 2× 2 = 25 = 32 posibles resultados.

3. Cuántos posibles números podemos tener de 3 dígitos. (103).

4. Cuántos números podemos tener en una máquina de 8 bits. (28).

5. De cuantas maneras modemos sentar a 5 niños en 5 sillas. (5 · 4 · · · 1).

6. De cuantás manera podemos sentar a 10 niños en 5 sillas. (10× 9× 8× 7× 6).

7. ¿cuántas maneras hay de elegir 2 sillas de una fila de 5 sillas ? (C(10, 2)).

8. De cuántas maneras podemos elegir un comité de 3 personas (presidente, vice presidente y secreta-río) de un grupo de 9 candidatos. (P (9, 3)).

9. De cuántas maneras podemos elegir un comité de 3 personas de un grupo de 9 candidatos. (C(9, 3)).

10. Si un típico número de teléfono tiene la forma555− 817− 4495. Donde los tres primeros dígitospertenecen al código del área.

a) Suponiendo que no hay restricción, cuántos códigos de áreahay. (103).

b) Si el dígito de enmedio del código de área solo puede ser0 o 1, cuántas áreas de códigoposibles podemos tener. (10× 2× 10)

c) Si no hay restricciones, cuántos posibles números telefónicos podemos tener. (1010).

d) Si la restricción es que los dígitos solo podemos usarlos una sola vez. Cuántos números tele-fónicos podemos tener. (10!)

Page 21: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.2. Problemas 20

11. Cuántos números pares de dos dígitos podemos formar. (45).

12. Cuántos números enteros positivos menores a 1 millón, tienen exactamente un3 un 4 y un 5 ensurepresentación decimal.(5 · 4 · 3 · 7 · 7 = 2940).

13. Resolver:

a) De un examen de 10 preguntas, un estudiante solo debe responder 7. De cuántas formas puederesolver el examen. (C(10, 7)).

b) Si el estudiante debe resolver 3 preguntas de las primeras 5y 4 de las otras 5.C(5, 3)C(5, 4).

c) Si el estudiante debe resolver 7 de las 10 preguntas, donde almenos 3 deben de seleccionarsede las primeras 5.C(5, 3)C(5, 4) + C(5, 4)C(5, 3) + C(5, 5)C(5, 2).

14. La cafeteria Paty tiene 8 tipos diferentes de pasteles y seis tipos diferentes de bollos. Además delas piezas de pastelería es posible adquirir vasos pequeños, medianos o grandes de las siguientesbebidas: café (negro, con crema, con azúcar, o con crema y azúcar), té (solo, con crema, con azúcar,con crema y azúcar, con limón, o con limón y azúcar ), chocolate caliente y jugo de naranja. Cuandocarolina va a la cafetería Paty, de cuántas puede ordenar:

a) una pieza de pastelería y una bebida mediana para ella.

b) una pieza de pastelería y un vaso de café para ella, y un bolloy un vaso de té para su jefe.

c) una pieza de pastelería y un vaso de té para ella, un bollo y unjugo de naranja para su jefe yuna pieza de pastelería y n vaso de café para cada uno de sus dosasistentes.

Solución:

a) Una pieza de pastelería se elige de 8+6= 14 opciones y de 4+6+2=12 opciones de bebidas.Entonces tiene

(

141

)

·(

121

)

= 168 posibles ordenes.

b) Una pieza de pastelería se elige de8+6 = 14 opciones, y4·3 opciones de café (3 tamaños y 4combinaciones). Además 6 posibles bollos y3·6 opciones de té. Entonces hay14·4·3·6·3·6 =18144 total de maneras de ordenar.

c) Una pieza de pastelería y un café para ella son14 · 3 · 6. Un bollo y un jugo de naranja parasu jefe son6 · 3 opciones. Finalmente una pieza de pastelería y un té142 · 32 · 42 para los 2asistentes. Hacen un total de128024064 posibles ordenes.

15. Pamela tiene 5 libros distintos, ¿de cuántas formas puede colocar sus libros en dos repisas de modoque haya al menos un libro en cada una?

a) Si solo son 3 libros, entonces tenemos que las únicas opciones son1

2,2

1si el numerador es

la primera repisa y el denominador la repisa de abajo. En el primer caso, solo podemos elegirP (3, 1) posibilidades el la repisa de arriba y quedan solo dos libros, que podemos ordenar de2! opciones, entonces tenemosP (3, 1)2!. Para el segundo caso, tenemosP (3, 2) y abajo solo1!, así tenemosP (3, 2)1!. En total tenemosP (3, 1)2! + P (3, 2)1! = 3! + 3! = 2 · 3! = 12. Silos libros sonA,B,C las opciones son:A

BC,A

CB,B

AC,B

CA,C

AB,C

BAy las simétricas.

b) En el caso de 4 libros, seríanP (4, 1)3! + P (4, 2)2! + P (4, 3)1! = 3 · 4!.c) entonces para 5 libros son5! · 4.

16. Encontrar valores paran tales que:

a) P (n, 2) = 90

Page 22: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.2. Problemas 21

b) P (n, 3) = 3P (n, 2)

c) 2P (n, 2) + 50 = P (2n, 2)

17. De cuantas maneras podemos arreglar los símbolosa, b, c, d, e, e, e, e, e de tal manera que no hayaletrase juntas.

1. ¿cuántas maneras hay de construir palabras de 5 letras? (265).

2. ¿cuántas maneras hay de construir palabras de 5 letras diferentes? (26 · 25 · 24 · 23 · 22).

3. ¿cuántas maneras hay de elegir un hombre y una mujer de 3 hombres y 8 mujeres?(

31

)(

81

)

.

4. ¿cuántas maneras hay sentar 2 personas en 5 sillas de una fila? (5 · 4).

5. ¿cuántas maneras hay de elegir 2 sillas de 5 sillas de una fila? (10).

6. Pamela tiene 15 libros distintos, ¿de cuántas formas puede colocar sus libros en dos repisas demodo que haya al menos un libro en cada una?.14 · 15!.

7. ¿cuántas maneras hay de arreglar 4 diferentes libros de álgebra, 3 diferentes libros de geometría, y6 diferentes libros de cálculo?

8. ¿cuántas maneras hay de sentar 12 caballeros del rey Arturo en una mesa redonda? (11!).

9. De las 26 letras del alfabeto, ¿cuántas permutaciones no tienen 2 vocales juntas? (21!(

225

)

5!).

10. Mostrar que:(

n

k

)

=

(

n

n− k

)

11. Mostrar que:(

n

k + 1

)

=

(

n

k

)

n− k

k + 1

12. Mostrar que:(

n+ 1

k

)

=

(

n

k

)

+

(

n

k − 1

)

13. Mostrar que:(

n

k

)

=n

k

(

n− 1

k − 1

)

14. Mostrar que:(

s

m

)(

m

k

)

=

(

s

k

)(

s− k

m− k

)

15. Mostrar que:n∑

k=0

(

n

k

)

= 2n

16. Mostrar que:n∑

k=0

(−1)k(

n

k

)

= 0

17. Sin es un entero positivo mayor a 1, probar que:(

n

2

)

+(

n−12

)

es un cuadrado perfecto. ((n− 1)2).

Page 23: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.2. Problemas 22

18. Verificar si(

2nn

)

−(

2nn−1

)

=1

n+ 1

(

2nn

)

19. Cuántos bytes contienen:

a) Exactamente 21s.

b) Exactamente 41s.

c) Al menos 61sd) A lo más 31s.

20. ¿Cuál es el valor de la variablecounter del siguiente algoritmo?

counter = 0;

For i=1 to 12 do

counter = counter +1;

For j=5 to 10 do

counter = counter +2;

For k=15 downto 8 do

counter = counter +3;

¿Qué principio de conteo esta involucrado?

21. ¿Cuantas veces se ejecuta la instrucciónWrite?

For i = 1 to 12 do

For j = 5 to 10 do

For k = 15 downto 3 do

Write ((i-j)*k)

¿Qué principio de conteo esta involucrado?

22. Cada usiario tiene una contraseña de longitud entre6 y 8 caracteres que son o bien un dígito o unaletra. Cada contraseña, debe contener almenos un dígito, ¿ cuántas contraseñas distintas admite elsistema?Res:P6 + P7 + P8 = 366 − 266 + 367 − 267 + 368 − 268.

23. Cuántas cadenas de bits hay que tengan longitud de 8 y que bien comiencen con un 1 o terminencon 00.Res: Que inicien con 1 son27 formas distintas, que terminen con 00 hay26, que inicien con 1 ytermimen con 00 son25. Por lo tano, lo pedido es27 + 26 − 25.

24. Cuántas cadenas de bits de longitud 4 no tienen dos unos consecutivos.

Page 24: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.3. Problemas algoritmos 23

25. Cuántas camisetas diferentes debe haber en un almacen deuna tienda si se quiere tener disponibleuna de cada modelo, y se fabrican de 5 diferentes tallas S,M, L, XL, XXL, además de cada talla setienen colores; blanco, negro, rojo y verde, pero para la talla XXL solo hay verde y negro.

26. ¿Cuántas cadenas de 10 bits empiezan y terminan con 1?

27. ¿Cuántas cadenas de bits de longitud 6 o menos hay?

28. ¿Cuántas cadenas de bits de longitudn hay que empiezan y terminan con 1?

29. ¿Cuántas cadenas de bits de longitud6 comienzan con 000 o bien terminan con 00?

30. ¿Cuántas cadenas de bits de longitud8 contienen bien la cadena 000 o bien la cadena 1111?

4.3. Problemas algoritmos

Iprocedure max(a1, a2, ..., an)max = a1;

for i = 2 to nIf max < ai then max = ai;

print (max)

La complejidad es2(n − 1) + 1 = 2n− 1 comparaciones, una para saber si es el final y otra parasaber si es el elemento. Al final una comparación más para salir delfor. Es decir el algoritmo tienecomplejidadO(n)

IIprocedure busqueda dex en (a1, a2, ..., an)i = 1;

while i ≤ n & x 6= aii = i+ 1;If i ≤ n then loc = iElse loc = 0;

print (loc) (índice dex)

La complejidad es2n + 1 comparaciones, una para saber si es el final y otra para saber si es elelemento2n, más 1 al salir del bucle, ó más 2 si no está (en el peor de los casos), una para salir delbucle y otra fuera del bucle,(2n+ 2). Es decir el algoritmo tiene complejidadO(n)

III

Page 25: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.3. Problemas algoritmos 24

procedure busqueda binaria dex en (a1, a2, ..., an)i = 1 (extremo izquierdo);j = n (extremo derecho);

while i < jbeginm = ⌊(i+ j)/2⌋;If x > am then i = m+ 1else j = mend

If x = ai then loc = ielseloc = 0print (loc) (índice dex)

Supongamos quen = 2k por simplicidad, observese quek = log2 n. En cada paso, se comparai < j del while para saber si hay más de un elemento en la lista, entonces se redefinen los extremosde la lista y esta queda con2k−1 elementos. Entonces, hemos hecho dos comparaciones, unai < jy otra para saber en que lado de la lista estax. De manera recurrente para el siguiente caso, lalista se reduce a2k−2 elementos. Las últimas dos comparaciones se hacen cuando lalista tiene2elementos, y finalmente cuando hay un elemento en la lista, una más para salir del while y otra máspara saber si estáx. Por lo tanto se hacen2k+2 comparaciones o sea2(log n) + 2 comparaciones,es decir el algoritmo tiene una complejidad deO(log n).

IVprocedure base 10 a base 2n (número en base 10);

while n 6= 0q = n/2;r = n % 2;n = q;

print (r)

Sean un número entero,n se puede representar en baseb, por ejemplo2. Entonces existek tal quebk−1 ≤ n < bk, n tienek dígitosk = logb n + 1. El algoritmo realizaO(log n) pasos, y en cadapaso se realiza una división de un número de longitudk − bits eso se lleva a lo más conO(log n)operaciones, en total el algoritmo tiene una complejidad deO(log2 n).

V Algoritmo de Euclides

a = bq1 + r1 0 ≤ r1 < b

b = r1q2 + r2 0 ≤ r2 < r1

r1 = r2q3 + r3 0 ≤ r3 < r2

· · ·rk−3 = rk−2qk−1 + rk−1 0 ≤ rk−1 < rk−2

rk−2 = rk−1qk−1 0 ≤ rk = 0

En este procesorj+2 < 1/2rj . Si rj+1 ≤ 1/2rj , se tiene el resultado, pero sirj+1 > 1/2rj , en

Page 26: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

4.3. Problemas algoritmos 25

el siguiente paso tenemosrj = 1 · rj+1 + rj+2, entoncesrj+2 = rj − rj+1 < 1/2rj como serequiere.

Como en cada dos pasos el residuo se reduce a la mitad de su tamaño, y este solo llega en el peor delos casos a 1, entonces hay a lo más2 log2 a divisiones, es decirO(log a) y cada división requiereno más deO(log a), entoncesO(log2a) operaciones.

En el caso de algoritmo extendido de Euclides podemos realizarlo enO(log3a) operaciones.

V Exponenciación modular por el método de cuadrados repetidos

La operaciónbn modm tiene una complejidad deO(log n)(log2 m)

Page 27: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

5Recurrencia

5.1. Recurrencias lineales de primer orden

an+1 = dan

Solución:an = a0dn

5.2. Recurrencias lineales de segundo orden homogéneas

Cnan + Cn−1an−1 + Cn−2an−2 = 0

Ecuación característica:Cnr2 + Cn−1r + Cn−2 = 0.

1. Raíces diferentes:an = c1(rn1 ) + c2(r2)

n.

2. Raíces iguales:an = c1(rn1 ) + c2n(r2)

n

5.3. Recurrencias lineales de segundo orden no homogéneas

a(p)n

parte no-H forma dea(p)n

C A

n A1n+A0

n2 A2n2 +A1n+A0

rn Arn

sin(αn) A sin(αn) +B cos(αn)

cos(αn) A sin(αn) +B cos(αn)

Page 28: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

5.4. Ejercicios 27

5.4. Ejercicios

1. Encontrar la solución general para cada una de las siguientes progresiones geométricas.

a) an+1 − 1,5an = 0, n ≥ 0.

b) 4an − 5an−1 = 0, n ≥ 1.

c) 3an+1 − 4an = 0, n ≥ 0, a1 = 5.

d) 2an − 3an−1 = 0, n ≥ 1, a4 = 81.

2. Si an, n ≥ 0, es una solución de la relación de recurrenciaan+1 − dan = 0, y a3 = 153/49,a5 = 1377/2401, ¿cuánto valed?

3. Encontrar la complejidad del algoritmo de la Burbuja.

4. Encontrar la complejidad del algoritmo de las torres de Hanoi.

5. Resolver la recurrencia de los números de Fibonacci.

6. an+2 + an = 0, a0 = 0, a1 = 3.

7. an = 5an−1 − 6an−2, a1 = −1, a2 = 1.

8. an = 6an−1 − 9an−2, a1 = 1, a2 = 9.

9. bn = bn−1 + bn−2, n ≥ 3, (ver al número de secuencias den-dígitos binarios que no contiene dos0s consecutivos)

10. Definimos a los números de LucasLn comoL1 = 1, L2 = 3, Ln = Ln−1 + Ln−2.

11. an+2 + 4an = 0, a0 = 1, a1 = 1.

12. an + 2an−1 + 2an−2 = 0, a0 = 1, a1 = 3.

13. an+2 + 3an+1 + 2an = 3n, a0 = 0, a1 = 1.

14. an+2 + 4an+1 + 4an = 7, a0 = 0, a1 = 2.

15. an+2 − an = sin(nπ/2), a0 = 1, a1 = 2.

5.5. Aplicaciones

5.5.1. Algoritmo de la Burbuja

Algoritmo de la burbujaBegin

For i = 1 to n− 1 doFor j = n downtoi+ 1 doIf xj < xj−1 then

Begin (intercambio, swap)temp = xj−1

xj−1 = xj

xj = tempEnd

End

Número de comparacionesan = an−1 + (n− 1) n ≥ 2 a1 = 0

Page 29: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

5.5. Aplicaciones 28

a1 = 0

a2 = a1 + (2− 1) = 1

a3 = a2 + (3− 1) = 1 + 2

a4 = a3 + (4− 1) = 1 + 2 + 3

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

an = 1 + 2 + 3 + · · ·+ (n− 1) = (n− 1)n/2 = (n2 − n)/2

5.5.2. Torres de Hanoi

Número de comparaciones movimientos:

i) an es el número de movimientos de discos de una torre a la otra.

ii) Se hacenan movimientos para movern discos a la torre 3.

iii) Movemos el discon+ 1 a la torre 2

iv) Se hacenan movimientos para movern discos a la torre 2.

v) Por lo tanto para movern+ 1 discos hacemosan+1 = 2an + 1 movimientos.

Tenemos la relación no homogéneaan+1 − 2an = 1

La solución de la parte homogéneaahn = c2n

La solución particular de la parte no homogénea esapn = A

De dondeA− 2A = 1, entoncesA = −1

La solución se convierte enahn + apn = c(2n) +A.

comoa0 = 0, entonces0 = c− 1, entoncesc = 1.

Así an = 2n − 1

5.5.3. Sucesión de Fibonacci

La sucesión de Fibonacci se define con la relaciónFn+2 = Fn+1 + Fn, conF0 = 0, F1 = 1. Que dala ecuación característicar2 − r− 1 con raícesr12 = (1±

√5)/2. Por lo que la solución tienen la forma

Fn = c1

(

1 +√5

2

)

+ c2

(

1−√5

2

)

. FinalmenteFn =1√5

[(

1 +√5

2

)n

−(

1−√5

2

)n]

n ≥ 0.

Page 30: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

6Gráficas

SeaV un conjunto finito no vacío yE ⊆ V × V , el par(V,E) es llamada gráfica dirigida, dondeVes el conjunto de vértices yE es el conjunto de aristas.

En el caso de que(a, b) ∈ E se reemplace por{a, b}, entonces la gráfica no tiene dirección.

SeaG = (V,E) una gráfica sin dirección ya, b ∈ V un camino dea ab, es una sucesión de vérticestales quea = x0, x1, ..., xn = b donde cadaei = {xi−1, xi} esta enE. La longitud del camino esel número de aristas del camino. Sia = b se llama camino cerrado, de lo contrario es abierto.

SeaG = (V,E) una gráfica sin dirección ya− b un camino:

1. Si no se repiten aristas, el camino se llama recorrido, si el camino es cerra do el camino sellama circuito.

2. Si no se repiten vértices, el camino se llama camino simple, si el camino es cerrado se llamaciclo.

Vértices repetidos Aristas Repetidas abierto cerrado nombre

Si Si Si Camino abierto

Si Si Si Camino cerrado

Si No Si Recorrido

Si No Si Circuito

No No Si Camino simple

No No Si Ciclo

1. Una gráfica es conexa si para cualquiera dos puntos existe un camino que los une.

2. SeaV un conjunto den vértices, la gráficaKn es aquella que contiene todas las aristas{a, b} cona, b ∈ V, a 6= b.

3. SeaG una gráfica den vértices, el complemento deG, G, es subgráfica deKn que tiene todos losn vértices deG, y todas las aristas que no están enG.

Page 31: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

6.1. Matrices de Adyacencia e Incidencia 30

4. SeanG1 = (V1, E1) y G2 = (V2, E2) dos gráficas sin dirección. Una funciónf : V1 → V2 sellama isomorfismo si:

a) f es biyectiva.

b) Para todoa, b ∈ V1 {a, b} ∈ V1 si y sólo si{f(a), f(b)} ∈ E2.

5. El grado de un vérticea es el número de aristas que inciden ena y denotado porgr(a).

6.1. Matrices de Adyacencia e Incidencia

6.2. Caminos eulerianos

SeaG = (V,E) una gráfica sin dirección, entonces∑

v∈V gr(v) = 2|E|.

SeaG = (V,E) una gráfica sin dirección, decimos queG tiene un circuito euleriano, si existe uncircuito que recorre cada arista de la gráfica exactamente una vez. Si existe un recorrido abierto querecorre cada arista exactamente una vez, se llama recorridoeuleriano.

SeaG = (V,E) una gráfica sin dirección. Entonces,G tiene un circuito euleriano si y sólo siG esconexo y todo vértice deG tiene grado par.

SeaG = (V,E) una gráfica sin dirección. Entonces,G tiene un recorrido euleriano si y sólo siG esconexo y tiene exactamente dos vértice de grado impar.

6.3. Gráficas planas

Una gráfica es plana si podemos dibujarG en un plano de modo que sus aristas no se intersecten,salvo en los vértices.

Una gráficaG es bipartita, siV = V1 ∪ V2, V1 ∩ V2 = ∅ y cada arista deG es de la forma{a, b}dondea ∈ V1, b ∈ V2. Si |V1| = m, |V2| = n, se llama gráfica bipartita completa y se denotaKm,n.

Sean una gráficaG, una subdivisión elemental deG resulta de sustituir la arista{a, b} por{a, c}, {c, b}. Dos gráficasG1, G2 son homeomorfas si son isomorfas o si ambas se pueden obtenerde la misma gráficaH por medio de subdivisiones elementales.

Teorema 1 Teorema de Kuratowski: una gráfica no es plana si y sólo si contiene una subgráficaque es homeomorfa aK5 oK3,3.

Teorema 2 Teorema de Euler: SeaG una gráfica plana conexa con|V | = a y |E| = b, sear elnúmero de regiones en el plano determinadas por una inmersión deG (dibujo en el plano). Entoncesa− b+ r = 2.

Page 32: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

6.4. Caminos hamiltonianos 31

6.4. Caminos hamiltonianos

Si G es una gráfica con|G| ≥ 3, decimos queG tiene un ciclo hamiltoniano si existe un ciclo quecontenga todos los vértices deG. Un camino hamiltoniano es un camino simple que contiene todoslos vértices deG. Observe que aqui no se repiten ni vértices ni aristas.

Si G es una gráfica con|G| ≥ 3, decimos queG tiene un ciclo hamiltoniano si existe un ciclo quecontenga todos los vértices deG. Un camino hamiltoniano es un camino simple que contiene todoslos vértices deG. Observe que aqui no se repiten ni vértices ni aristas.

Teorema 3 SeaG una gráfica,|V | = n ≥ 2, si gr(x) + gr(y) ≥ n − 1 para todos los vérticesx, y ∈ V x 6= y, entoncesG tiene un camino hamltoniano.

Corolario 1 SeaG una gráfica,|V | = n ≥ 2, si gr(x) ≥ (n− 1)/2 para todox ∈ V , entoncesGtiene un camino hamiltoniano.

Teorema 4 SeaG una gráfica,|V | = n ≥ 3, sigr(x)+gr(y) ≥ n para todos los vérticesx, y ∈ Vno adyacentes , entoncesG tiene un ciclo hamltoniano.

Corolario 2 SeaG una gráfica,|V | = n ≥ 3, si gr(x) ≥ n/2 para todox ∈ V , entoncesG tieneun ciclo hamiltoniano.

Corolario 3 SeaG una gráfica,|V | = n ≥ 3, y |E| ≥(

n−12

)

+ 2, entoncesG tiene un ciclohamiltoniano.

6.5. Ejercicios

1. Para la siguiente gráfica, determinar si es posible, un camino de b a d que no sea recorrido, unrecorridob− d que no sea camino simple, un camino simpleb− d, un camino cerradob− b que nosea un circuito, un circuitob− b que no sea un ciclo, y un ciclo deb− b.

ab

c

e

d

f

g

Page 33: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

6.5. Ejercicios 32

2. Para la siguiente gráfica, determinar si es posible, un camino de b a h que no sea recorrido, unrecorridob − h que no sea camino simple, un camino simplea − f , un camino cerradoa − a queno sea un circuito, un circuitob − b que no sea un ciclo, y un ciclo deb − b. Determinar, cuántoscaminos simples existen entrea− h, cuántos de ellos son de longitud 5.

a

bc

d

g

e

f

h

3. Para la siguiente gráfica determinar, sí es posible, un camino de5 a 7 que no sea recorrido, unrecorrido2 − 8 que no sea camino simple, un camino simple5 − 3, un camino cerrado1 − 1 queno sea un circuito, un circuito5 − 5 que no sea un ciclo, y un ciclo de2 − 2. Determinar, cuántoscaminos simples existen entre5− 7.

1

2 4

5

3

6

7

8

4. Mostrar que las siguientes gráficas son isomorfas (trivial).

1 2

34

a

c

b

d

5. Mostrar qué gráficas son isomorfas (Fig 1 y Fig 2 no son isomorfas, Fig 3 si lo es a Fig 1).

Fig 1):

Page 34: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

6.5. Ejercicios 33

a1

a2

a4

a6

a5 a3

Fig 2):

b1 b2

b4

b5

b3

b6

Fig 3):

c1

c4 c5 c6

c2 c3

Page 35: C:/LaTex/math.com.mx/cur 4 000 Matematicas Discretasmath.com.mx/docs/cur/anahuac/MD/cur_4_000_Matematicas_Discreta… · Matemáticas Discretas ... En esta lección damos una introducción

7Árboles