Matemática discreta: pack de repaso

Hojas de fórmulas, los pasos clave de los métodos de cada tema y 8 problemas de práctica, con las soluciones completas al final.

Problemas nuevosVolver a la asignatura

En la ventana de impresión, elige «Guardar como PDF» para conservar una copia en tu dispositivo.

1Fórmulas y métodos

Lógica proposicional y demostraciones

Filas de una tabla de verdad
2ⁿ
Implicación
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
Implicación negada
¬(p → q) ≡ p ∧ ¬q
Bicondicional
p ↔ q ≡ (p → q) ∧ (q → p)
De Morgan
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
Leyes distributivas
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
Cuantificadores negados
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
Modus ponens, modus tollens
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

Método

  1. Cuenta las variables distintas: la tabla de verdad tiene 2ⁿ filas, y la primera tiene todas ellas en 1.
  2. Dale a cada subfórmula su propia columna y rellena las columnas de dentro hacia fuera.
  3. Aplica la regla de cada conectivo: → solo es 0 en 1 → 0, y ↔ vale 1 cuando ambos lados coinciden.
  4. Para las equivalencias, compara las columnas finales fila por fila; para un argumento, mira solo las filas en las que todas las premisas valen 1.
  5. Para negar un enunciado cuantificado, desplaza ¬ hacia dentro, intercambia ∀ y ∃ y niega la fórmula interior.

Conjuntos, relaciones y funciones

Dos conjuntos
|A ∪ B| = |A| + |B| − |A ∩ B|
Tres conjuntos
|A ∪ B ∪ C| = |A| + |B| + |C| − |A ∩ B| − |A ∩ C| − |B ∩ C| + |A ∩ B ∩ C|
Diferencia y complemento
A − B = A ∩ B′, |A′| = |U| − |A|
Conjunto potencia y producto
|𝒫(A)| = 2|A|, |A × B| = |A|·|B|
Subconjuntos de tamaño k
C(n, k) = n!/(k!(n − k)!)
Funciones A → B
nᵐ; injective n!/(n − m)!; surjective Σ (−1)ᵏ C(n, k)(n − k)ᵐ
Relaciones en n elementos
2n²; reflexive 2n² − n; symmetric 2n(n+1)/2
Composición
(g ∘ f)(x) = g(f(x))

Método

  1. Dibuja un diagrama de Venn y decide región por región qué pertenece a la expresión de conjuntos.
  2. En los problemas de recuento, rellena las regiones desde el centro hacia fuera: primero todos los conjuntos, luego los pares, después los conjuntos sueltos y por último el exterior.
  3. Usa la inclusión–exclusión como comprobación: |A ∪ B| = |A| + |B| − |A ∩ B|.
  4. En una relación, comprueba cada propiedad en todos los pares y da un contraejemplo cuando falle.
  5. En una función, cuenta las flechas que llegan a cada elemento de B: como mucho una significa inyectiva, al menos una, sobreyectiva.

Teoría de grafos

Lema del apretón de manos
Σ deg(v) = 2|E|
Grafos completos
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
Grafo regular
|E| = n·k/2
Árbol y bosque
|E| = n − 1, |E| = n − c
Hojas de un árbol
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
Euler
circuito: todos los grados pares; camino: exactamente 2 grados impares
Circuitos de Hamilton en Kn
(n − 1)!/2
Actualización de Dijkstra
d(v) = min(d(v), d(u) + w(u, v))
Recorridos de longitud L
(Mᴸ)ij

Método

  1. Anota el grado de cada vértice; los grados suman el doble del número de aristas.
  2. En las preguntas de Euler, comprueba que el grafo sea conexo y cuenta los vértices de grado impar.
  3. En los árboles, usa n − 1 aristas y el lema del apretón de manos.
  4. En Dijkstra, lleva una tabla de distancias provisionales y fija en cada ronda el vértice no fijado de menor distancia.
  5. Para un árbol generador mínimo, ordena las aristas por peso y descarta toda arista que cierre un ciclo (Kruskal), o haz crecer un único árbol desde un vértice inicial (Prim).

Teoría de números y aritmética modular

División con resto
a = q·n + r, 0 ≤ r < n
Euclides
gcd(a, b) = gcd(b, a mod b)
Mínimo común múltiplo
lcm(a, b) = a·b/gcd(a, b)
Inversa
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
Congruencia lineal
a·x ≡ b → x ≡ a⁻¹·b (mod n)
Función φ de Euler
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
Fermat
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

Método

  1. Reduce primero cada número módulo n; los restos están entre 0 y n − 1.
  2. Para un mcd, divide repetidamente con el algoritmo de Euclides; el último resto distinto de cero es el mcd.
  3. Para un inverso, aplica el algoritmo extendido y quédate con el coeficiente de a; suma n si es negativo.
  4. Resuelve a·x ≡ b multiplicando por a⁻¹; combina dos congruencias escribiendo x = r₁ + m₁k.
  5. Para las potencias, escribe el exponente en binario y eleva al cuadrado repetidamente; en RSA, d = e⁻¹ mod φ(n) con φ(n) = (p − 1)(q − 1).

2Problemas de práctica

1.Lógica proposicional y demostracionesMedia
pqr¬q → ¬p(¬q → ¬p) → r((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r)111?110?101?100?011?010?001?000?

¿En cuántas de las 8 filas de su tabla de verdad es verdadera ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r)? Llama a ese número N.

((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r)
N =
2.Lógica proposicional y demostracionesDifícil
abca → (b ∨ c)ab111110101100011010001000

El argumento con premisas a → (b ∨ c); a y conclusión b no es válido. Haz clic en la fila de la tabla de verdad que es un contraejemplo.

a → (b ∨ c)a∴ b
  1. 1a = 1, b = 1, c = 1
  2. 2a = 1, b = 1, c = 0
  3. 3a = 1, b = 0, c = 1
  4. 4a = 1, b = 0, c = 0
  5. 5a = 0, b = 1, c = 1
  6. 6a = 0, b = 1, c = 0
  7. 7a = 0, b = 0, c = 1
  8. 8a = 0, b = 0, c = 0
3.Conjuntos, relaciones y funcionesMedia
1234

R = {(2, 1), (3, 3), (4, 2), (4, 4)} es una relación en {1, 2, 3, 4}. ¿Cuál es el menor número k de pares ordenados que hay que añadir a R para hacerla simétrica?

R = {(2, 1), (3, 3), (4, 2), (4, 4)}
k =
4.Conjuntos, relaciones y funcionesDifícil
AB1234abcdinyectiva, no sobreyectivasobreyectiva, no inyectivabiyectivaninguna de las dos

El diagrama de flechas muestra una función f: A → B con A = {1, 2, 3, 4} y B = {a, b, c, d}. Haz clic en la descripción que corresponde a f.

f = {(1, c), (2, c), (3, d), (4, a)}
  1. 1inyectiva, no sobreyectiva
  2. 2sobreyectiva, no inyectiva
  3. 3biyectiva
  4. 4ninguna de las dos
5.Teoría de grafosMedia

¿Cuántos circuitos de Hamilton distintos, H, tiene el grafo completo K6? Los circuitos que solo difieren en el vértice inicial o en el sentido cuentan como el mismo.

K6
H =
6.Teoría de grafosDifícil
123157414ABCDEF

El algoritmo de Dijkstra se ejecuta desde A. Haz clic en el vértice que se fija (se hace permanente) en la ronda 5; la propia A es la ronda 1.

inicio: Aronda 5
  1. 1A
  2. 2B
  3. 3C
  4. 4D
  5. 5E
  6. 6F
7.Teoría de números y aritmética modularMedia

Halla el menor entero positivo x con x ≡ 6 (mod 9) y x ≡ 1 (mod 10).

x ≡ 6 (mod 9)x ≡ 1 (mod 10)
x =
8.Teoría de números y aritmética modularDifícil
mc = me​ mod n211m = cd​ mod n?(n, e) = (1271, 17)d

Una clave RSA usa p = 31, q = 41 y e = 17. Descifra el texto cifrado c = 211: halla el mensaje m.

p = 31q = 41e = 17c = 211
m =

3Disoluciones

1.Lógica proposicional y demostraciones

Respuesta: N = 3

Tablas de verdad: una fórmula con n variables distintas tiene 2ⁿ filas, una por cada combinación de valores de verdad (1 = verdadero, 0 = falso). Trabaja de dentro hacia fuera y dale a cada subfórmula su propia columna. ¬a invierte el valor; a ∧ b vale 1 solo cuando ambos son 1; a ∨ b vale 0 solo cuando ambos son 0; a → b vale 0 solo cuando a = 1 y b = 0; a ↔ b vale 1 cuando ambos lados son iguales.

Tabla de verdad fila por fila

p = 1, q = 1, r = 1: ¬q = 0, ¬q ↔ p = 0, ¬r = 0, (¬q ↔ p) ∨ ¬r = 0, ¬p = 0, ¬q → ¬p = 1, (¬q → ¬p) → r = 1, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 0
p = 1, q = 1, r = 0: ¬q = 0, ¬q ↔ p = 0, ¬r = 1, (¬q ↔ p) ∨ ¬r = 1, ¬p = 0, ¬q → ¬p = 1, (¬q → ¬p) → r = 0, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 0
p = 1, q = 0, r = 1: ¬q = 1, ¬q ↔ p = 1, ¬r = 0, (¬q ↔ p) ∨ ¬r = 1, ¬p = 0, ¬q → ¬p = 0, (¬q → ¬p) → r = 1, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 1
p = 1, q = 0, r = 0: ¬q = 1, ¬q ↔ p = 1, ¬r = 1, (¬q ↔ p) ∨ ¬r = 1, ¬p = 0, ¬q → ¬p = 0, (¬q → ¬p) → r = 1, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 1
p = 0, q = 1, r = 1: ¬q = 0, ¬q ↔ p = 1, ¬r = 0, (¬q ↔ p) ∨ ¬r = 1, ¬p = 1, ¬q → ¬p = 1, (¬q → ¬p) → r = 1, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 1
p = 0, q = 1, r = 0: ¬q = 0, ¬q ↔ p = 1, ¬r = 1, (¬q ↔ p) ∨ ¬r = 1, ¬p = 1, ¬q → ¬p = 1, (¬q → ¬p) → r = 0, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 0
p = 0, q = 0, r = 1: ¬q = 1, ¬q ↔ p = 0, ¬r = 0, (¬q ↔ p) ∨ ¬r = 0, ¬p = 1, ¬q → ¬p = 1, (¬q → ¬p) → r = 1, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 0
p = 0, q = 0, r = 0: ¬q = 1, ¬q ↔ p = 0, ¬r = 1, (¬q ↔ p) ∨ ¬r = 1, ¬p = 1, ¬q → ¬p = 1, (¬q → ¬p) → r = 0, ((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r) = 0

Cuenta las filas con valor 1

((¬q ↔ p) ∨ ¬r) ↔ ((¬q → ¬p) → r): 0, 0, 1, 1, 1, 0, 0, 0
N = 3

Respuesta

N = 3
2.Lógica proposicional y demostraciones

Respuesta: a = 1, b = 0, c = 1

Cuantificadores y argumentos: ¬∀x P(x) ≡ ∃x ¬P(x) y ¬∃x P(x) ≡ ∀x ¬P(x). Desplaza la negación hacia dentro, intercambia cada cuantificador que atraviesa y niega la fórmula interior con las leyes proposicionales, como ¬(a → b) ≡ a ∧ ¬b. Un argumento es válido cuando la conclusión vale 1 en todas las filas en las que todas las premisas valen 1. Una sola fila con premisas verdaderas y conclusión falsa es un contraejemplo y demuestra que el argumento no es válido.

Premisas y conclusión fila por fila

a = 1, b = 1, c = 1: 1 1 | 1
a = 1, b = 1, c = 0: 1 1 | 1
a = 1, b = 0, c = 1: 1 1 | 0
a = 1, b = 0, c = 0: 0 1 | 0
a = 0, b = 1, c = 1: 1 0 | 1
a = 0, b = 1, c = 0: 1 0 | 1
a = 0, b = 0, c = 1: 1 0 | 0
a = 0, b = 0, c = 0: 1 0 | 0

Contraejemplo

a = 1, b = 0, c = 1

Respuesta

a = 1, b = 0, c = 1

Un argumento con esta forma parece una regla válida, pero una sola fila basta para demostrar que no lo es.

3.Conjuntos, relaciones y funciones

Respuesta: k = 2

Relaciones: una relación R en un conjunto X es un conjunto de pares ordenados (x, y). R es reflexiva cuando (x, x) ∈ R para todo x de X; simétrica cuando (x, y) ∈ R siempre va acompañado de (y, x) ∈ R; antisimétrica cuando (x, y) y (y, x) están ambos en R solo si x = y; y transitiva cuando (x, y) y (y, z) en R obligan a que (x, z) ∈ R. Una relación de equivalencia es reflexiva, simétrica y transitiva, y divide X en clases disjuntas.

Pares que añadir

{(1, 2), (2, 4)}

Contar

k = 2

Respuesta

k = 2
4.Conjuntos, relaciones y funciones

Respuesta: ninguna de las dos

Funciones y recuento: una función f: A → B da a cada elemento de A exactamente una imagen en B. f es inyectiva (uno a uno) cuando elementos distintos tienen imágenes distintas, sobreyectiva cuando todo elemento de B es una imagen, y biyectiva cuando se cumplen ambas. Con |A| = m y |B| = n hay nᵐ funciones, n!/(n − m)! inyectivas (m ≤ n) y, por inclusión–exclusión, Σ (−1)ᵏ·C(n, k)·(n − k)ᵐ sobreyectivas. |𝒫(A)| = 2ᵐ y |A × B| = m·n.

¿Inyectiva?

f(1) = f(2) = c → no inyectiva

¿Sobreyectiva?

b no recibe ninguna flecha → no sobreyectiva

Respuesta

ninguna de las dos

Respuesta

ninguna de las dos
5.Teoría de grafos

Respuesta: H = 60

Euler, Hamilton y árboles: un grafo conexo tiene un circuito euleriano (cada arista una vez, volviendo al inicio) cuando todos los vértices tienen grado par, y un camino euleriano que no es un circuito cuando exactamente dos vértices tienen grado impar; entonces el camino va de un vértice impar al otro. Un circuito hamiltoniano visita cada vértice una vez; Kn tiene (n − 1)!/2 de ellos. Un árbol de n vértices tiene n − 1 aristas, y un grafo conexo con m aristas conserva un árbol generador tras quitarle m − n + 1 aristas.

Contar

H = (6 − 1)!/2 = 120/2 = 60

Respuesta

H = 60
6.Teoría de grafos

Respuesta: E

Caminos mínimos y árboles generadores: el algoritmo de Dijkstra fija un vértice por ronda: el vértice no fijado con la menor distancia provisional. Su distancia es entonces definitiva, y cada vecino v recibe d(v) = min(d(v), d(u) + w(u, v)). El algoritmo de Kruskal construye un árbol generador mínimo tomando las aristas de la más ligera a la más pesada y descartando toda arista que cierre un ciclo; el algoritmo de Prim hace crecer un único árbol desde un vértice inicial añadiendo siempre la arista más ligera que sale de él. Un árbol generador de n vértices tiene n − 1 aristas.

Dijkstra ronda a ronda

1. A (0): C: 12
2. C (12): B: 15, E: 17
3. B (15): D: 16
4. D (16): F: 20
5. E (17): F: 18
6. F (18)

ronda 5

E

Respuesta

E
7.Teoría de números y aritmética modular

Respuesta: x = 51

Inversos y congruencias: a tiene inverso módulo n exactamente cuando mcd(a, n) = 1. El algoritmo de Euclides extendido escribe 1 = s·n + t·a, y entonces a⁻¹ ≡ t (mod n). Una congruencia a·x ≡ b (mod n) con mcd(a, n) = 1 tiene la solución x ≡ a⁻¹·b. Dos congruencias x ≡ r₁ (mod m₁) y x ≡ r₂ (mod m₂) con módulos coprimos tienen una solución módulo m₁·m₂ (teorema chino del resto). La φ(n) de Euler cuenta los números de 1 a n que son coprimos con n: φ(n) = n·∏(1 − 1/p).

Primera congruencia

x = 6 + 9k

Segunda congruencia

6 + 9k ≡ 1 (mod 10) → 9k ≡ 5 (mod 10)
k ≡ 9·5 ≡ 5 (mod 10)

Resultado

x = 6 + 9·5 = 51
x = 51
comprobación: 51 mod 9 = 6, 51 mod 10 = 1

Respuesta

x = 51
8.Teoría de números y aritmética modular

Respuesta: m = 222

Potencias modulares y RSA: calcula aᵏ mod n por cuadrado repetido: escribe k en binario, eleva al cuadrado, reduce después de cada paso y multiplica las potencias cuyo bit es 1. Fermat: aᵖ⁻¹ ≡ 1 (mod p) para un primo p que no divide a a, así que el exponente se puede reducir módulo p − 1. RSA: elige los primos p y q, n = p·q y φ(n) = (p − 1)(q − 1); el exponente público e es coprimo con φ(n), y el exponente privado es d = e⁻¹ mod φ(n). Cifra con c = mᵉ mod n y descifra con m = cᵈ mod n.

Exponente privado

n = 1271, φ(n) = 1200
d = 17−1 mod 1200 = 353

Descifra por cuadrado repetido

353 = 256 + 64 + 32 + 1
2111 ≡ 211 (mod 1271)
2112 ≡ 36 (mod 1271)
2114 ≡ 25 (mod 1271)
2118 ≡ 625 (mod 1271)
21116 ≡ 428 (mod 1271)
21132 ≡ 160 (mod 1271)
21164 ≡ 180 (mod 1271)
211128 ≡ 625 (mod 1271)
211256 ≡ 428 (mod 1271)
211353 ≡ 211·160·180·428 ≡ 222 (mod 1271)

Mensaje

m = 222
comprobación: 22217 mod 1271 = 211

Respuesta

m = 222

ExamProblems · examproblems.com/courses/discrete-mathematics