Dibuja un diagrama de Venn y decide región por región qué pertenece a la expresión de conjuntos.
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.
Usa la inclusión–exclusión como comprobación: |A ∪ B| = |A| + |B| − |A ∩ B|.
En una relación, comprueba cada propiedad en todos los pares y da un contraejemplo cuando falle.
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
Anota el grado de cada vértice; los grados suman el doble del número de aristas.
En las preguntas de Euler, comprueba que el grafo sea conexo y cuenta los vértices de grado impar.
En los árboles, usa n − 1 aristas y el lema del apretón de manos.
En Dijkstra, lleva una tabla de distancias provisionales y fija en cada ronda el vértice no fijado de menor distancia.
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
Reduce primero cada número módulo n; los restos están entre 0 y n − 1.
Para un mcd, divide repetidamente con el algoritmo de Euclides; el último resto distinto de cero es el mcd.
Para un inverso, aplica el algoritmo extendido y quédate con el coeficiente de a; suma n si es negativo.
Resuelve a·x ≡ b multiplicando por a⁻¹; combina dos congruencias escribiendo x = r₁ + m₁k.
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
Quieres demostrar ¬a → ¬c por reducción al absurdo. ¿Qué enunciado supones al principio? Haz clic en él.
¬a → ¬c
1¬a ∧ ¬¬c
2¬¬a → ¬¬c
3¬¬a ∧ ¬¬c
4¬¬a ∧ ¬c
2.Lógica proposicional y demostracionesDifícil
¿Qué enunciado es equivalente a ¬∃x ∀y R(x, y), con la negación desplazada hasta el interior? Haz clic en él.
¬∃x ∀y R(x, y)
1∀x ∃y ¬R(x, y)
2∀x ∀y ¬R(x, y)
3∃x ∀y ¬R(x, y)
4∃x ∃y ¬R(x, y)
3.Conjuntos, relaciones y funcionesMedia
R = {(1, 2), (1, 3), (2, 1), (2, 2), (4, 1)} 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 transitiva (el tamaño de la clausura transitiva menos |R|)?
R = {(1, 2), (1, 3), (2, 1), (2, 2), (4, 1)}
k =
4.Conjuntos, relaciones y funcionesDifícil
El diagrama de flechas muestra una función f: A → B con A = {1, 2, 3} y B = {a, b}. Haz clic en la descripción que corresponde a f.
f = {(1, b), (2, a), (3, a)}
1inyectiva, no sobreyectiva
2sobreyectiva, no inyectiva
3biyectiva
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
Usa el algoritmo de Dijkstra para hallar la longitud d(F) del camino más corto de A a F en el grafo ponderado.
inicio: Afin: F
d(F) =
7.Teoría de números y aritmética modularMedia
Halla el inverso de 11 módulo 13: el número x con 0 < x < 13 y 11·x ≡ 1 (mod 13).
a = 11n = 13
11−1 mod 13 =
8.Teoría de números y aritmética modularDifícil
Una clave RSA usa p = 23, q = 41 y e = 19. Descifra el texto cifrado c = 485: halla el mensaje m.
p = 23q = 41e = 19c = 485
m =
3Disoluciones
1.Lógica proposicional y demostraciones
Respuesta: ¬a ∧ ¬¬c
Equivalencia lógica: dos fórmulas son equivalentes (≡) cuando tienen el mismo valor en todas las filas de la tabla de verdad. Una tautología vale 1 en todas las filas, una contradicción vale 0 en todas las filas, y una contingencia no es ninguna de las dos. Leyes útiles: De Morgan, ¬(a ∧ b) ≡ ¬a ∨ ¬b y ¬(a ∨ b) ≡ ¬a ∧ ¬b; a → b ≡ ¬a ∨ b ≡ ¬b → ¬a (contrarrecíproca); ¬(a → b) ≡ a ∧ ¬b; y las leyes distributivas, a ∨ (b ∧ c) ≡ (a ∨ b) ∧ (a ∨ c).
Partes de la implicación
a = ¬a, b = ¬c
Negación de la implicación
¬(a → b) ≡ a ∧ ¬b = ¬a ∧ ¬¬c
Respuesta
¬a ∧ ¬¬c
Si la suposición lleva a una contradicción, la implicación tiene que ser verdadera.
2.Lógica proposicional y demostraciones
Respuesta: ∀x ∃y ¬R(x, y)
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.
Desplaza la negación hacia dentro
¬∃x ∀y R(x, y) ≡ ∀x ∃y ¬R(x, y)
Respuesta
∀x ∃y ¬R(x, y)
Las otras opciones dejan un cuantificador sin cambiar, cambian el orden de los cuantificadores o niegan mal la fórmula interior.
3.Conjuntos, relaciones y funciones
Respuesta: k = 4
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, 1), (2, 3), (4, 2), (4, 3)}
Contar
k = 4
Respuesta
k = 4
4.Conjuntos, relaciones y funciones
Respuesta: sobreyectiva, no inyectiva
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(2) = f(3) = a → no inyectiva
¿Sobreyectiva?
todo elemento de B recibe alguna flecha → sobreyectiva
Respuesta
sobreyectiva, no inyectiva
Respuesta
sobreyectiva, no inyectiva
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: d(F) = 22
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
Cada línea: el vértice fijado, su distancia definitiva y los vecinos cuya distancia mejora.
A (0): B: 11, C: 4
C (4): G: 9
G (9): D: 20, E: 18
B (11): D: 16
D (16): F: 22
E (18)
F (22)
Camino más corto
A → B → D → F
d(F) = 22
Respuesta
d(F) = 22
7.Teoría de números y aritmética modular
Respuesta: 11−1 mod 13 = 6
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).
Algoritmo de Euclides extendido
Cada resto r se escribe como r ≡ t·11 (mod 13).
r = 13, t = 0
r = 11, q = 1, t = 1
r = 2, q = 5, t = −1
r = 1, q = 2, t = 6
Inversa
1 ≡ 6·11 (mod 13)
x = 6
comprobación: 11·6 = 66 = 5·13 + 1
Respuesta
11−1 mod 13 = 6
8.Teoría de números y aritmética modular
Respuesta: m = 703
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.