Académique Documents
Professionnel Documents
Culture Documents
Lenguajes Formales
Brian Keith N.
brian.keith@ucn.cl
Agenda
• Información del curso.
• Prerrequisitos.
• Evaluación del curso.
• Condiciones de aprobación.
• ¿Por qué estudiar Teoría de Autómatas y Lenguajes
Formales?
• Teoría de conjuntos.
• Límites de la computación.
Información del Curso
Teoría de Autómatas y Lenguajes Formales
Información de contacto
Profesor: Brian Keith N.
Datos:
• E-mail: brian.keith@ucn.cl
• Oficina: Y1-329
• Horario de atención: por definir.
Código de honor
Libro guía
Libro de apoyo
Prerrequisitos
• Lo que se espera que sepan antes:
• Teoría de conjuntos.
• Lógica.
• Matemáticas discretas.
• Inducción matemática.
• Recursión.
• Repasaremos estos elementos antes de empezar
con la materia.
• También facilita la vida tener nociones sobre la
teoría detrás de los lenguajes de programación (e.g.
gramáticas).
Evaluación del curso
• Prueba 1 (30%): 19 de Abril.
• Autómatas finitos, expresiones regulares, autómatas con salida y
equivalencias básicas
• Prueba 2 (30%): 17 de Mayo.
• Minimización de estados, propiedades de los lenguajes regulares, lema de
bombeo y gramáticas libres de contexto.
• Prueba 3 (30%): 28 de Junio.
• Autómatas de pila, normalización de gramáticas, máquinas de Turing y
límites de la computación.
• Pruebas Pendientes: Según corresponda.
• Semana del 2 al 6 de Julio.
• Examen Recuperativo: Toda la materia.
• 9 de Julio.
Evaluación del curso
• Pruebas cortas (10%)
• Pruebas de 30-40 minutos al inicio de la clase, 12 pruebas durante
todo el semestre.
• Las pruebas cortas se realizan en grupos de máximo 2 personas.
• Se contempla borrar dos pruebas cortas durante todo el semestre.
• Cada prueba corta tiene la misma ponderación.
• Ayudantías (no evaluadas)
• Clases de ejercicios tipo prueba.
• Ejemplos con JFLAP.
• No se considera para la asistencia del curso.
Condiciones de aprobación
• Promedio final sobre 4.0.
• Se requiere un 70% de asistencia para aprobar.
• Las pruebas cortas y las cátedras se aprueban de manera
conjunta.
• Hay derecho a examen recuperativo si la nota final se
encuentra entre 3.4 y 3.9 (inclusive).
¿Por qué estudiar teoría de autómatas y
lenguajes formales?
• Primero hay que definir de que trata este campo.
• Un autómata es un constructo que posee todas las
características indispensables de un computador digital
(entradas, salidas, memoria y control).
• Un lenguaje formal es una abstracción de las
características generales de los lenguajes de programación.
• El estudio de este campo nos permite conocer los límites
teóricos de la computación.
¿Por qué estudiar teoría de autómatas y
lenguajes formales?
• Permite entender el comportamiento subyacente a todos los
procesos computacionales.
• Es una herramienta de modelado de sistemas.
• Tiene una serie de aplicaciones prácticas:
• Diseño de sistemas digitales.
• Arquitectura de computadores.
• Lenguajes de programación.
• Compiladores.
• Diseño de software.
• Videojuegos.
• Inteligencia artificial.
• Nos permite saber qué problemas pueden ser resueltos con
un computador y cuáles no.
¿Por qué estudiar teoría de autómatas y
lenguajes formales?
• Permite entender el comportamiento subyacente a todos los
procesos computacionales.
• Es una herramienta de modelado de sistemas.
• Tiene una serie de aplicaciones prácticas:
• Diseño de sistemas digitales.
Vamos a mencionar algunas
• Arquitectura de computadores. más en detalle a lo largo
• Lenguajes de programación. del curso! En cuanto a
• Compiladores. compiladores e inteligencia
artificial los cursos que
• Diseño de software. continúan este detallan
• Videojuegos. más aplicaciones.
• Inteligencia artificial.
• Nos permite saber qué problemas pueden ser resueltos con
un computador y cuáles no.
¿Por qué estudiar teoría de autómatas y
lenguajes formales?
• Permite entender el comportamiento subyacente a todos los
procesos computacionales.
• Es una herramienta de modelado de sistemas.
• Tiene una serie de aplicaciones prácticas:
• Diseño de sistemas digitales.
• Arquitectura de computadores. Este curso trata más
• Lenguajes de programación. sobre lo que no podemos
hacer con un computador
• Compiladores. que de lo que sí
• Diseño de software. podemos.
• Videojuegos.
• Inteligencia artificial.
• Nos permite saber qué problemas pueden ser
resueltos con un computador y cuáles no.
Advertencia
• Este curso consiste en una serie de abstracciones.
• El uso de abstracciones implica el uso de terminología
formal.
• En este caso, se requiere un amplio uso de matemáticas
discretas.
• El curso contendrá una serie de demostraciones de
diferentes niveles de complejidad.
• Las pruebas se enfocarán principalmente en las
aplicaciones, pero no deben dejar de lado las
demostraciones formales.
Teoría de Conjuntos
Teoría de Autómatas y Lenguajes Formales
Conjuntos
• Los computadores del laboratorio Y1-003.
• Elementos químicos.
• Animales tiernos.
• Monedas chilenas.
• Alumnos aprobados de TALF.
• Conjuntos que no se contienen a si mismos.
Conjuntos
• Los computadores del laboratorio Y1-003.
• Elementos químicos.
• Animales tiernos.
• Monedas chilenas.
• Alumnos aprobados de TALF.
• Conjuntos que no se contienen a si mismos.
♥,♢,♠, ♧
Un conjunto se denota entre llaves.
Definiciones
• ¿Qué es una conjunto?
• Un conjunto es una colección no ordenada de objetos
diferentes, que pueden ser cualquier cosa (incluyendo
otros conjuntos).
• Notación:
♥,♢,♠, ♧
Los elementos se separan con comas.
Definiciones
• ¿Qué es una conjunto?
• Un conjunto es una colección no ordenada de objetos
diferentes, que pueden ser cualquier cosa (incluyendo
otros conjuntos).
• Notación:
♥,♢,♠, ♧
Definiciones
• ¿Qué es una conjunto?
• Un conjunto es una colección no ordenada de objetos
diferentes, que pueden ser cualquier cosa (incluyendo
otros conjuntos).
• Notación:
↺, ↵, ⇇, ↠
Definiciones
• ¿Qué es una conjunto?
• Un conjunto es una colección no ordenada de objetos
diferentes, que pueden ser cualquier cosa (incluyendo
otros conjuntos).
• Notación:
♥,♢,♠, ♧
♧,♠,♥,♢
Son el mismo conjunto.
Definiciones
• ¿Qué es una conjunto?
• Un conjunto es una colección no ordenada de objetos
diferentes, que pueden ser cualquier cosa (incluyendo
otros conjuntos).
• Notación:
♥,♢
♥,♥,♢,♢, ♢
Son el mismo conjunto.
Conjunto vacío
• El conjunto que no contiene elementos se
denomina conjunto vacío.
• El conjunto vacío es único.
• Notación:
=∅
Notación
• ¿Son iguales?
∅= ∅
1= 1
Notación
• ¿Son iguales?
Conjunto que
Conjunto vacío
(sin elementos)
∅= ∅ contiene un
elemento (el
conjunto vacío)
1= 1
Notación
• ¿Son iguales?
Conjunto que
Conjunto vacío
(sin elementos)
∅= ∅ contiene un
elemento (el
conjunto vacío)
Número uno
1= 1 Conjunto que
contiene al
número uno
Notación
• No son iguales.
∅= ∅
Los conjuntos de un elemento
se denominan singleton.
1= 1
Pertenencia
• ¿El objeto x pertenece al conjunto A?
A = {x, y, z, w}
• Sí, el objeto x pertenece al conjunto A.
x∈A
Pertenencia
• ¿El objeto ♠ pertenece a este conjunto?
{♡,♦}
• No, el objeto ♠ no pertenece al conjunto.
♠ ∉ {♡,♦}
Pertenencia
• Si un objeto pertenece a un conjunto se dice que es
un elemento de dicho conjunto.
• Dado un objeto x y un conjunto S solo puede
cumplirse una de las siguientes afirmaciones:
•𝑥 ∈ 𝑆
•𝑥 ∉ 𝑆
Conjuntos infinitos
• Hay conjuntos que tienen infinitamente muchos
elementos.
• Ejemplos:
• ℕ = 0, 1, 2, 3, … es el conjunto de los números
naturales. Algunos matemáticos no incluyen el cero,
asumiremos que es un número natural aquí.
• ℤ = … , −2, −1, 0, 1, 2, … es el conjunto de todos los
enteros.
• El conjunto ℝ de los números reales (ejemplos: 𝑒 ∈
ℝ, 𝜋 ∈ ℝ, 4 ∈ ℝ, etc).
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
El conjunto de todos los n…
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
El conjunto de todos los n…
…tal que…
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
El conjunto de todos los n…
…tal que…
…n es un número natural…
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
El conjunto de todos los n…
…tal que…
…n es un número natural…
…y n es par.
Descripción de conjuntos
• ¿Cómo se describen conjuntos?
• “El conjunto de todos los números pares”.
• Notación:
0, 2, 4, 6, 8, 10, 12, …
Diagramas de Venn
1 5
3
𝐴 𝐵
4
2 6
𝐴 = 1, 2, 3, 4
𝐵 = 3, 4, 5, 6
Diagramas de Venn
1 5
3
𝐴 𝐵
4
2 6
𝐴 = 1, 2, 3, 4
𝐵 = 3, 4, 5, 6
Diagramas de Venn
1 5
3
𝐴 𝐵
4
2 6
𝐴 = 1, 2, 3, 4
𝐵 = 3, 4, 5, 6
Diagramas de Venn
Intersección
1 5
3
𝐴 𝐵
4
2 6
𝐴 ∩ 𝐵 = 3, 4
Diagramas de Venn
Unión
1 5
3
𝐴 𝐵
4
2 6
𝐴 ∪ 𝐵 = 1, 2, 3, 4, 5, 6
Diagramas de Venn
Diferencia
1 5
3
𝐴 𝐵
4
2 6
𝐴 − 𝐵 = 𝐴 \ 𝐵 = 1, 2
Diagramas de Venn
Diferencia simétrica
1 5
3
𝐴 𝐵
4
2 6
𝐴 Δ 𝐵 = 1, 2, 5, 6
Diagramas de Venn
B C
Diagramas de Venn
B C
Diagramas de Venn
• Para cuatro conjuntos:
Diagramas de Venn
• Para siete conjuntos!
Fuente: http://moebio.com/research/sevensets/
Subconjuntos
• Un conjunto S se denomina subconjunto de un
conjunto T (denotado 𝑆 ⊆ 𝑇) si todos los elementos
de S son también elementos de T.
• Ejemplos:
• 1, 2, 3 ⊆ 1, 2, 3, 4
•ℕ⊆ ℤ
•ℤ ⊆ ℝ
¿Conjunto vacío?
• ¿Existe algún conjunto tal que ∅ ⊆ 𝑆?
• Equivalentemente, ¿existe algún S tal que se
cumpla el siguiente estamento?
♥,♢
• El conjunto ℘ 𝑆 es el conjunto potencia de S y
corresponde al conjunto de todos los subconjuntos
de S:
∅, {♥},{♢},{♥,♢}
• Formalmente, ℘ 𝑆 = 𝑇 | 𝑇 ⊆ 𝑆
Conjunto potencia
• Pregunta corta:
Determinar ℘ ∅
Conjunto potencia
• Pregunta corta:
Determinar ℘ ∅
• La respuesta es ∅ .
• Recordar que ∅ ≠ ∅ .
Cardinalidad
• La cardinalidad de un conjunto es el número de
elementos que contiene.
• Si S es un conjunto, denotamos su cardinalidad por
|S| (a veces por #S).
• Ejemplos:
• 𝑎, 𝑏, 𝑐, 𝑑, 𝑒 = 5
• 𝑎, 𝑏 , 𝑐, 𝑑, 𝑒, 𝑓, 𝑔 , ℎ = 3
• 1,2,3,3,3,3,3 = 3
• 𝑛 ∈ ℕ | 𝑛 < 137 = 137
Cardinalidad de ℕ
• ¿Cuánto es ℕ ?
• Hay infinitamente muchos números naturales.
• ℕ no puede ser un número natural, pues es
infinitamente grande.
Cardinalidad de ℕ
• ¿Cuánto es ℕ ?
• Hay infinitamente muchos números naturales.
• ℕ no puede ser un número natural, pues es
infinitamente grande.
• Hay que definir un nuevo término.
• Se define ℵ0 = ℕ .
• ℵ0 se pronuncia “aleph-zero”, “aleph-null” o “aleph-
nought”.
Cardinalidades
• Considerar el conjunto:
𝑆 = 𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
• ¿Cuánto es |S|?
Cardinalidades
• Considerar el conjunto:
𝑆 = 𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
• ¿Cuánto es |S|?
• Es necesario entender primero como se pueden
comparar cardinalidades.
• ¿Qué tan grande son estos conjuntos?
♥,♢,♠, ♧
↺, ↵, ⇇, ↠
Comparación de Cardinalidades
♥,♢,♠, ♧
↺, ↵, ⇇, ↠
Comparación de Cardinalidades
x♥,♢,♠, ♧
x↺, ↵, ⇇, ↠
Comparación de Cardinalidades
x ♧
x♥,♢,♠,
x↺,x↵, ⇇, ↠
Comparación de Cardinalidades
xx ♧
x♥,♢,♠,
x↺,x↵, x
⇇, ↠
Comparación de Cardinalidades
x x x♧
x♥,♢,♠,
x↺,x↵, x
⇇, x
↠
Comparación de Cardinalidades
x1,x2,x3, 4
x↺,x↵, x⇇
No se puede emparejar el elemento, por lo
tanto los conjuntos no tienen la misma
cardinalidad.
Cardinalidades infinitas
• Considerar el conjunto:
𝑆 = 𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
• ¿Cuánto es |S|?
ℕ 0 1 2 3 4 5 6 7 8 …
S 0 2 4 6 8 …
Cardinalidades infinitas
• Considerar el conjunto:
𝑆 = 𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
• ¿Cuánto es |S|?
ℕ 0 1 2 3 4 5 6 7 8 …
S 0 2 4 6 8 10 12 14 16 …
𝑛 ⟷ 2𝑛
Cardinalidades infinitas
• Considerar el conjunto:
𝑆 = 𝑛 | 𝑛 ∈ ℕ y 𝑛 es par
• ¿Cuánto es |S|? 𝑆 = ℕ = ℵ0
ℕ 0 1 2 3 4 5 6 7 8 …
S 0 2 4 6 8 10 12 14 16 …
𝑛 ⟷ 2𝑛
Cardinalidades infinitas
• ¿Cuánto es la cardinalidad de ℤ?
ℕ 0 1 2 3 4 5 6 7 8 …
ℤ … -3 -2 -1 0 1 2 3 4 …
Cardinalidades infinitas
• ¿Cuánto es la cardinalidad de ℤ?
ℕ 0 1 2 3 4 5 6 7 8 …
… -3 -2 -1 0 1 2 3 4 …
Cardinalidades infinitas
• ¿Cuánto es la cardinalidad de ℤ?
ℕ 0 1 2 3 4 5 6 7 8 …
ℤ 0 1 2 3 4 …
… -3 -2 -1
Emparejar los números pares con los enteros no negativos.
Cardinalidades infinitas
• ¿Cuánto es la cardinalidad de ℤ?
ℕ 0 1 2 3 4 5 6 7 8 …
ℤ 0 -1 1 -2 2 -3 3 -4 4 …
ℕ 0 1 2 3 4 5 6 7 8 …
ℤ 0 -1 1 -2 2 -3 3 -4 4 …
ℤ = ℕ = ℵ0
Cardinalidades infinitas
• Los conjuntos infinitos vistos hasta ahora tienen
todos la misma cardinalidad.
• Pregunta:
S ={♥,♢}
℘ 𝑆 = ∅, {♥},{♢},{♥,♢}
S ={1, 2, 3}
∅, {1},{2},{3},
℘ 𝑆 = {1,2},{1,3},{2,3},
{1,2,3}
𝒙𝟎
𝒙𝟏
𝒙𝟐
𝒙𝟑
𝒙𝟒
𝒙𝟓
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥0 , 𝑥2 , 𝑥4 , …
𝑥1 𝑥0 , 𝑥3 , 𝑥4 , …
𝑥2 𝑥4 , …
𝑥3 𝑥1 , 𝑥4 , …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 𝑥0 , 𝑥2 , 𝑥4 , …
𝑥1 𝑥0 , 𝑥3 , 𝑥4 , …
𝑥2 𝑥4 , …
𝑥3 𝑥1 , 𝑥4 , …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 𝑥0 , 𝑥3 , 𝑥4 , …
𝑥2 𝑥4 , …
𝑥3 𝑥1 , 𝑥4 , …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 𝑥4 , …
𝑥3 𝑥1 , 𝑥4 , …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 𝑥4 , …
𝑥3 𝑥1 , 𝑥4 , …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 𝑥1 , 𝑥4 , …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 𝑥0 , 𝑥5 , …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 𝑥0 , 𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , 𝑥5 …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
…
Argumento de diagonalización de
Cantor
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• ¿Qué fila se empareja con 𝑥0 , 𝑥5 , … (diagonal)?
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• ¿Qué fila se empareja con 𝑥0 , 𝑥5 , … (diagonal)?
S N N N N S …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• ¿Qué fila se empareja con 𝑥0 , 𝑥5 , … (diagonal)?
S N N N N S …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• ¿Qué pasa si invertimos la diagonal? 𝑆 ⟷ 𝑁
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• ¿Qué fila corresponde al nuevo conjunto?
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 , …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
𝑥0 𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 …
𝑥0 S N S N S N …
𝑥1 S N N S S N …
𝑥2 N N N N S N …
𝑥3 N S N N S N …
𝑥4 S N N N N S …
𝑥5 S S S S S S …
… … … … … … … …
• O simplemente, ¿qué fila concuerda con esta?
N S S S S N …
Teorema de Cantor
• Sin importar como se intenten emparejar los elementos
de S con los subconjuntos de S, el complemento de la
diagonal nunca aparecerá en la tabla.
• Pues en la n-ésima fila, el n-ésimo elemento estará mal!
• Sin importar como se asocien los elementos de S con
los subconjuntos de S, siempre existe al menos un
subconjunto que sobra.
• Este resultado se conoce como el Teorema de Cantor:
• “Todo conjunto es estrictamente más pequeño que su
conjunto potencia”, formalmente:
𝑃𝑟𝑜𝑔𝑟𝑎𝑚𝑎𝑠 ≤ 𝑆𝑡𝑟𝑖𝑛𝑔𝑠
La idea general
• Una cadena (string) es una secuencia de
carácteres (símbolos).
• Probaremos los siguientes resultados:
Problemas
formados a
Todos los
partir de posibles
conjuntos de problemas.
strings.