Metodologı́a de la Asignatura Índice 1 Metodologı́a de la Asignatura 2 Relaciones 3 Funciones 4 Lenguajes de Primer Orden: Sintaxis 5 Lenguajes de Primer Orden: Semántica Introducción a la Lógica II Félix Bou bou@ub.edu Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 1 / 114 F. Bou (bou@ub.edu) Metodologı́a de la Asignatura Introducción a la Lógica II Versión 20 de mayo de 2009 2 / 114 Metodologı́a de la Asignatura Metodologı́a de la asignatura Metodologı́a de la asignatura Horario Grupo A3 (A. 407) Datos Profesor Félix Bou. Departament de Lògica, Història i Filosofia de la Ciència. Despacho 4.040 (4a planta). E-mail: bou@ub.edu (fbou@iiia.csic.es) Teléfono: 93 4037978. Grupo B1 (A. 403) Martes Miércoles Jueves Martes Miércoles Jueves Teorı́a 10:00-11:00h 10:00-11:00h 10:00-11:00h 19:00-20:00h 19:00-20:00h 19:00-20:00h Consultas — 09:00-10:00h — — — 20:00-21:00h Prácticas — — 15:00-16:00h — 18:00-19:00h — Examen Final Grupo A3 (A. 407) Grupo B1 (A. 403) F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 3 / 114 F. Bou (bou@ub.edu) 1a Convocatoria 19 Jun, 09:00-11:00h 19 Jun, 16:00-18:00h Introducción a la Lógica II 2a Convocatoria 2 Sept, 12:00-14:00h 2 Sept, 19:00-21:00h Versión 20 de mayo de 2009 4 / 114 Metodologı́a de la Asignatura Relaciones Sistema de Evaluación Motivando las Relaciones Evaluación Continua Recordemos que . . . Tres exámenes parciales durante el curso. Las fechas son I I I Jueves 12 de marzo de 2009. Jueves 16 de abril de 2009. Jueves 21 de mayo de 2009. Hace falta aprobar los tres exámenes con una nota mı́nima de 3, y en tal caso la nota final será la media de los tres exámenes parciales. Sólo se obtendrá la calificación de “No Presentado” en caso de no realizar los tres exámenes parciales. Evaluación Única Todo el mundo puede realizar el examen final, incluso aquellas personas que antes han hecho uno o más de los exámenes parciales. La asistencia al examen final supone automáticamente la renuncia a la nota de la evaluación continua, i.e., la nota final será la obtenida en el examen final. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 5 / 114 Toda propiedad determina un conjunto, el conjunto de los objetos que cumplen dicha propiedad. En sı́mbolos, si Φ es un propiedad al conjunto que determina, por comprensión, lo denotamos {x : Φ(x)} (es decir, {x : x verifica el propiedad Φ}). En los conjuntos no importa el orden, por ejemplo, {1, 2} = {2, 1}. Ası́ pues, ¿qué sucede si realmente tenemos una noción en la que el orden importa? Pues que es evidente que la noción de conjunto no es un buen candidato a formalizar esa noción. Ejemplos de Propiedades Binarias en las que importa el orden Ser padre de Ser hijo de Ser profesor de la asignatura F. Bou (bou@ub.edu) Relaciones Introducción a la Lógica II Versión 20 de mayo de 2009 6 / 114 Relaciones Par Ordenado La Operación Producto Cartesiano En primer lugar (antes de hablar de relaciones) introducimos el concepto de par ordenado. Dados dos objetos a y b el par ordenado de a y b es un nuevo objeto (que denotamos ha, bi) que nos permitirá distinguir su primera componente, a, de su segunda componente, b. Si A y B son dos conjuntos cualesquiera, el producto cartesiano de A por B, en sı́mbolos A × B, es el conjunto de todos los pares ordenados cuya primera componente es un elemento de A y cuyo segunda componente es un elemento de B. Es decir, A × B = {hx, y i : x ∈ A y y ∈ B}. Esto significa que para cualesquiera objetos a, b, c y d, se cumple que ha, bi = hc, di sii a = c y b = d. Lo anterior es el único requisito que le exigimos a un par ordenado. Es decir, lo único que asumimos es que los pares ordenados son objetos que cumplen la condición anterior, y no nos preocupamos de averiguar qué objeto es. El término “cartesiano” por supuesto hace referencia a Descartes. Y el término “producto” hace referencia al hecho que si A tiene n elementos y B tiene m elementos, entonces A × B tiene n · m elementos. Lo fundamental es que la noción de par ordenado nos va a permitir distinguir el orden. Por ejemplo, hMarta, Anai = 6 hAna, Martai mientras que {Marta, Ana} = {Ana, Marta}. Ejemplo: Si A = {1, 2} y B = {2, 3, 4}, entonces F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 7 / 114 A × B = {h1, 2i, h1, 3i, h1, 4i, h2, 2i, h2, 3i, h2, 4i}. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 8 / 114 Relaciones Relaciones Algunas propiedades del Producto Cartesiano Relaciones (Binarias) Una relación (binaria) es un conjunto de pares ordenados. Si A = ∅ entonces A × B = ∅. La idea intuitiva es que todo relacional binario (i.e., propiedad binaria) determina una relación, aquella que cumple que un par ordenado pertenece a la relación en cuestión si este relacional se da entre el primer componente del par y el segundo componente del par. Por ejemplo, el relacional “ser más alto que” determina la relación binaria Si B = ∅ entonces A × B = ∅. Si A 6= ∅ y B 6= ∅ entonces A × B 6= ∅. Los tres puntos anteriores nos dicen que A×B =∅ sii A = ∅ o B = ∅. A × B 6= ∅ sii A 6= ∅ y B 6= ∅. Ası́ pues, {hx, y i : x ser más alto que y }. B × A ={hx, y i : x ∈ B y y ∈ A}. El producto cartesiano no es conmutativo porque por ejemplo {1} × {2} 6= {2} × {1}. [De hecho, A × B = B × A sii (o bien A = ∅ o bien B = ∅ o bien A = B).] F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 9 / 114 Una relación (binaria) en un conjunto A es un conjunto de pares ordenados tales que tanto el primer componente del par como el segundo componente son elementos de A. Es decir, R es una relación en A sii R es un subconjunto de A × A. F. Bou (bou@ub.edu) Relaciones Introducción a la Lógica II Versión 20 de mayo de 2009 10 / 114 Relaciones Relaciones (Binarias) Ejemplos de Relaciones Binarias Sea A = {x : x es un ser humano}. Entonces, R = {hx, y i : x ∈ A y y ∈ A y x es madre de y } Usamos la letras R, S y T para referirnos a las relaciones (binarias). En el caso que el par ordenado ha, bi ∈ R diremos que los objetos a, b están relacionados por R. Y en caso contrario (i.e., ha, bi 6∈ R) diremos que no están relacionados por R. En ocasiones escribiremos aRb en lugar de escribir ha, bi ∈ R. Y análogamente también usaremos a6 Rb como sinónimo de ha, bi 6∈ R. es una relación binaria en A. Y S = {hx, y i : x ∈ A y y ∈ A y y es madre de x} es otra relación en el conjunto A. Sea B = {1, 2, 3, . . .}. Entonces, T = {hx, y i : x ∈ B y y ∈ B y x ≤ y } es una relación binaria en B. Clasifica las siguientes afirmaciones según sean verdaderas o falsas. h1, 0i ∈ T es falsa. h1, 1i ∈ T es verdadera. h1, 2i ∈ T es verdadera. h2, 1i ∈ T es falsa. hFelix, 2i ∈ T es falsa. h 23 , 2i ∈ T es falsa. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 11 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 12 / 114 Relaciones Relaciones Algunas Observaciones Más Conjuntos asociados a una Relación (Binaria) A nivel intuitivo tenemos la analogı́a siguiente Propiedades Conjuntos = El dominio de una relación R, en sı́mbolos dom(R), es el conjunto de los primeros componentes de los pares de R. Ası́ pues, Relacionales (Binarios) Relaciones (Binarias) Es decir, los conjuntos son a las propiedades lo mismo que las relaciones (binarias) son a los relacionales (binarios). Mientras que los conjuntos corresponden a las extensiones de las propiedades, las relaciones (binarias) corresponden a las extensiones de los relacionales (binarios). Por el principio de extensionalidad dos relaciones R y S son la misma sii a ellas pertenecen los mismos pares. En otras palabras, R = S sii para cualesquiera objetos x, y , se cumple que hx, y i ∈ R sii hx, y i ∈ S. dom(R) = {x : existe y tal que hx, y i ∈ R}. El recorrido de una relación R, en sı́mbolos rec(R), es el conjunto de los segundos componentes de los pares de R. Ası́ pues, rec(R) = {x : existe y tal que hy , xi ∈ R}. El campo de una relación R, en sı́mbolos campo(R), es el conjunto de todos los componentes (indistintamente de si son primer o segundo componente) de los pares de R. Ası́ pues, campo(R) = {x : existe y tal que hx, y i ∈ R o hy , xi ∈ R}. De hecho, se cumple que Ası́ pues, R 6= S sii campo(R) = dom(R) ∪ rec(R). existen dos objetos x, y tales que el par hx, y i pertenece a una de las relaciones pero no a la otra. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 13 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Relaciones Versión 20 de mayo de 2009 14 / 114 Relaciones Algunos Ejemplos Concretos de Relaciones Algunas Relaciones con Nombre Propio Sea A un conjunto. Entonces, de entre todas las relaciones en A destacamos las siguientes. Sea R el conjunto {h1, 6i, h4, 7i, h6, 6i, h2, 5i, h3, 2i, h6, 1i}. Clasificar las siguientes afirmaciones según sean verdaderas o falsas. I I I I “R “R “R “R es es es es una una una una relación” es verdadera. relación en {1, 2, 3, 4, 5, 6}” es falsa. relación en {1, 2, 3, 4, 5, 6, 7}” es verdadera. relación en {1, 2, 3, . . .}” es verdadera. La relación de identidad en A, en sı́mbolos IdA , es el conjunto de los pares ordenados con ambas componentes siendo iguales y pertenenciendo a A. Ası́ pues, IdA = {hx, xi : x ∈ A}. Y también es claro que Sea R la misma relación que antes. Calcular I I I IdA = {hx, y i : x ∈ A y y ∈ A y x = y }. domR = {1, 2, 3, 4, 6}. recR = {1, 2, 5, 6, 7}. campoR = {1, 2, 3, 4, 5, 6, 7}. La relación nula en A es el conjunto vacı́o. [Es una relación puesto que es un conjunto de pares ordenados] La relación total en A es el conjunto de los pares ordenados con ambas componentes siendo elementos de A. Ası́ pues, la relación total en A es precisamente A × A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 15 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 16 / 114 Relaciones Relaciones Observaciones sobre estas relaciones destacadas Operaciones con Relaciones Sea A el conjunto ∅. Entonces, I I IdA = ∅. A × A = ∅. Las relaciones son en particular conjuntos. Por tanto, todas las operaciones con conjuntos se pueden realizar en particular también con relaciones. Si R y S son dos relaciones cualesquiera, entonces Sea A el conjunto {a}. Entonces, I I IdA = {ha, ai}. A × A = {ha, ai}. I Sea A el conjunto {a, b}. Entonces, I I I IdA = {ha, ai, hb, bi}. A × A = {ha, ai, ha, bi, hb, ai, hb, bi}. I Sea A un conjunto cualesquiera. Entonces, I I ¿Cuál es la menor relación en A? Es ∅. Esto significa que (i) ∅ es una relación en A, y que además (ii) para cualquier relación R en A se cumple que ∅ ⊆ R. ¿Cuál es la mayor relación en A? Es A × A. Esto significa que (i) A × A es una relación en A, y que además (ii) para cualquier relación R en A se cumple que R ⊆ A × A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 17 / 114 [Union] R ∪ S = {hx, y i : hx, y i ∈ R o hx, y i ∈ S}. [Intersección] R ∩ S = {hx, y i : hx, y i ∈ R y hx, y i ∈ S}. [Diferencia] R − S = {hx, y i : hx, y i ∈ R y hx, y i 6∈ S}. Otra forma (dice exactamente lo mismo) de escribir las igualdades anteriores es decir que I I I R ∪ S = {ha, bi : ha, bi ∈ R o ha, bi ∈ S}. R ∩ S = {ha, bi : ha, bi ∈ R y ha, bi ∈ S}. R − S = {ha, bi : ha, bi ∈ R y ha, bi 6∈ S}. F. Bou (bou@ub.edu) Relaciones Sea R = {h1, 3i, h1, 5i, h2, 5i} y S = {h2, 1i, h5, 2i}. Entonces, I I I R̆ = {hx, y i : hy , xi ∈ R}. I I Por tanto, ha, bi ∈ R̆ sii hb, ai ∈ R. Es claro que dom(R̆) = rec(R), rec(R̆) = dom(R), campo(R̆) = campo(R). A partir de dos relaciones R y S definimos su producto relacional, en sı́mbolos R|S, como la relación definida por la igualdad I I R|S = {hx, y i : hay algún z tal que hx, zi ∈ R y hz, y i ∈ S}. I Por tanto, para cualesquiera objetos a y b se cumple que I I ha, bi ∈ R|S, sii hay algún objeto c tal que ha, ci ∈ R y hc, bi ∈ S. Introducción a la Lógica II Versión 20 de mayo de 2009 I 19 / 114 R̆ = {h3, 1i, h5, 1i, h5, 2i}. S̆ = {h1, 2i, h2, 5i}. R|S = {h1, 2i, h2, 2i}. S|R = {h2, 3i, h2, 5i, h5, 5i}. R|R = ∅. S|S = {h5, 1i}. Consideramos las relaciones en los números naturales (i.e., N = {1, 2, 3, . . .}) siguientes: R = {hx, y i : x ≤ y } y S = {hx, y i : x > y }. Entonces, I F. Bou (bou@ub.edu) 18 / 114 Algunos Ejemplos A partir de una relación R definimos la relación inversa de R, en sı́mbolos R̆, como la relación que se da entre objetos a y b si y sólo si R se da entre b y a. Es decir, I Versión 20 de mayo de 2009 Relaciones Operaciones Nuevas con Relaciones I Introducción a la Lógica II R̆ = {hx, y i : y ≤ x} = {hx, y i : x ≥ y }. S̆ = {hx, y i : y > x} = {hx, y i : x < y }. R|S = {hx, y i : existe z tal que x ≤ z y z > y } = N × N. S|R = {hx, y i : existe z tal que x > z y z ≤ y } = (N − {1}) × N. R|R = {hx, y i : existe z tal que x ≤ z y z ≤ y } = R. S|S = {hx, y i : existe z tal que x > z y z > y }= {hx, y i : x ≥ y + 2}. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 20 / 114 Relaciones Relaciones Otro Ejemplo Propiedades de las Operaciones con Relaciones Sea P la relación en el conjunto de los seres humanos definida de modo que ha, bi ∈ P sii a es progenitor (padre o madre) de b. Y sea H la relación en el conjunto de los seres humanos tal que ha, bi ∈ H sii a es hermano(a) de b. Entonces, las siguientes relaciones (todas ellas en el conjunto de los seres humanos) cumplen que I I I I I I ha, bi ∈ P̆ sii b es progenitor de a. Es decir, ha, bi ∈ P̆ sii a es hijo(a) de b. ha, bi ∈ H̆ sii b es hermano(a) de a. Es decir, H̆ = H. ha, bi ∈ (H|P) sii existe c tal que a es hermano(a) de c y c es progenitor de b. Es decir, ha, bi ∈ (H|P) sii a es tı́o(a) de b. ha, bi ∈ (P̆|H) sii existe c tal que c es progenitor de a y c es hermano(a) de b. Es decir, ha, bi ∈ (P̆|H) sii a es sobrino(a) de b. ha, bi ∈ (P|P) sii existe c tal que a es progenitor de c y c es progenitor de b. Es decir, ha, bi ∈ (P|P) sii a es abuelo(a) de b. ¿Cómo definir la relación que se da en un par ordenado ha, bi cuando a es nieto de b? Entre otras posibilidades se puede utilizar la relación Para cualesquiera relaciones R, S y T se cumple que ˘ R̆ = R. ˘ ¿Por qué? Porque ha, bi ∈ R̆, sii hb, ai ∈ R̆, sii ha, bi ∈ R. R|(S|T ) = (R|S)|T . ¿Por qué? Porque ha, bi ∈ (R|(S|T )), sii existe c tal que ha, ci ∈ R y hc, bi ∈ (S|T ), sii existen c y d tal que ha, ci ∈ R y hc, di ∈ S y hd, bi ∈ T , sii existe d tal que ha, di ∈ (R|S) y hd, bi ∈ T , sii ha, bi ∈ ((R|S)|T ). (R|S) = (S̆|R̆). ¿Por qué? Porque ha, bi ∈ (R|S), sii hb, ai ∈ (R|S), sii existe c tal que hb, ci ∈ R y hc, ai ∈ S, sii existe c tal que hc, bi ∈ R̆ y ha, ci ∈ S̆, sii existe c tal que ha, ci ∈ S̆ y hc, bi ∈ R̆, sii ha, bi ∈ (S̆|R̆). P̆|P̆. Otra posibilidad es (P|P). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 21 / 114 F. Bou (bou@ub.edu) Relaciones Introducción a la Lógica II Versión 20 de mayo de 2009 22 / 114 Relaciones Clases de Relaciones Algunas Reflexiones sobre las anteriores clases Sea R una relación. Se dice que R es una relación reflexiva en un conjunto A sii todo elemento de A esta relacionado consigo mismo por R. Es decir, sii para todo x ∈ A se cumple que hx, xi ∈ R. R es una relación reflexiva sii R es una relación reflexiva en el conjunto campo(R). R es una relación irreflexiva sii ningún objeto está relacionado consigo mismo por R. Es decir, sii todo objeto x cumple que hx, xi 6∈ R. R es una relación simétrica sii para cada par de objetos x, y se cumple que si hx, y i ∈ R entonces hy , xi ∈ R. R es una relación asimétrica sii para cada par de objetos x, y se cumple que si hx, y i ∈ R entonces hy , xi 6∈ R. R es una relación antisimétrica sii para cada par de objetos x, y se cumple que si hx, y i ∈ R y hy , xi ∈ R entonces x = y . Es decir, sii para cada par de objetos x, y diferentes, si hx, y i ∈ R entonces hy , xi 6∈ R . R es una relación transitiva sii para cualesquiera objetos x, y , z se cumple que si hx, y i ∈ R y hy , zi ∈ R entonces hx, zi ∈ R. Sea R una relación. Por las definiciones anteriores se tiene que R no es una relación reflexiva en un conjunto A sii existe un elemento x ∈ A tal que hx, xi 6∈ R. R no es una relación reflexiva sii existe un elemento x ∈ campo(R) tal que hx, xi 6∈ R. R no es una relación irreflexiva sii existe un objeto x que cumple que hx, xi ∈ R. R no es una relación simétrica sii existen un par de objetos x, y que cumplen que hx, y i ∈ R y hy , xi 6∈ R. R no es una relación asimétrica sii existen un par de objetos x, y que cumplen que hx, y i ∈ R y hy , xi ∈ R. R no es una relación antisimétrica sii existen un par de objetos x, y que cumplen que hx, y i ∈ R y hy , xi ∈ R y x 6= y . R no es una relación transitiva sii existen objetos x, y , z que cumplen que hx, y i ∈ R y hy , zi ∈ R y hx, zi 6∈ R. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 23 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 24 / 114 Relaciones Relaciones Algunos Ejemplos Más Ejemplos Consideramos las relaciones R1 = {h1, 1i, h2, 3i}, R2 = {h1, 1i, h1, 2i, h2, 1i}, R3 = {h1, 2i, h1, 3i, h2, 3i}, R4 = {h1, 2i, h1, 3i, h2, 1i}, R5 = {h1, 1i, h1, 2i, h2, 2i}, R6 = {h1, 2i, h2, 1i, h2, 2i}, R7 = {h1, 2i, h2, 3i, h1, 3i, h3, 3i}, R8 = {h1, 2i, h2, 1i, h1, 1i, h2, 2i}, R9 = {h1, 2i, h2, 1i, h1, 1i} y R10 = {h1, 2i, h1, 3i}. A continuación completamos el cuadro siguiente. Consideramos las relaciones siguientes en el conjunto de los números naturales N = {1, 2, 3, . . .}. Se trata de ≤= {hx, y i : x ≤ y }, <= {hx, y i : x < y }, S = {hx, y i : y = x + 1}, Id = {hx, y i : x = y } y D = {hx, y i : x 6= y }. A continuación completamos el cuadro siguiente. Reflexiva Irreflexiva Simétrica Asimétrica Antisimétrica Transitiva R1 F F F F V V F. Bou (bou@ub.edu) R2 F F V F F F R3 F V F V V V R4 F V F F F F R5 V F F F V V R6 F F V F F F R7 F F F F V V Introducción a la Lógica II R8 V F V F F V R9 F F V F F F R10 F V F V V V Versión 20 de mayo de 2009 ∅ V V V V V V 25 / 114 Reflexiva en N Irreflexiva Simétrica Asimétrica Antisimétrica Transitiva F. Bou (bou@ub.edu) Relaciones ≤ V F F F V V < F V F V V V S F V F V V F Introducción a la Lógica II Id V F V F V V D F V V F F F Versión 20 de mayo de 2009 26 / 114 Relaciones Caracterización de las diversas clases de Relaciones Relaciones de Equivalencia Para cualquier conjunto A la relación IdA (i.e., la relación de identidad en A) cumple que es reflexiva en A, simétrica y transitiva. Sea R una relación en un conjunto A. Se cumple que Estas tres popiedades (reflexiva en el conjunto, simétrica y transitiva) caracterizan en cierta forma relaciones a las que podriamos llamar de “igualdad en cierto aspecto”. Por ejemplo, las relaciones R es una relación reflexiva en el conjunto A sii IdA ⊆ R. R es una relación reflexiva sii Idcampo(R) ⊆ R. R es una relación irreflexiva sii R ∩ IdA ⊆ ∅. Es decir, sii R ∩ IdA = ∅. R es una relación simétrica sii R ⊆ R̆. Es decir, sii R = R̆. R es una relación asimétrica sii R ∩ R̆ ⊆ ∅. Es decir, sii R ∩ R̆ = ∅. R es una relación antisimétrica sii R ∩ R̆ ⊆ IdA . R es una relación transitiva sii R|R ⊆ R. R1 = {ha, bi : a y b son palabras que tienen la misma primera letra} R2 = {ha, bi : a y b son automóviles de la misma marca} R3 = {ha, bi : a y b son personas que viven en el mismo paı́s} R4 = {ha, bi : a y b son personas que tienen la misma edad} R5 = {ha, bi : a y b son mascotas que tienen el mismo dueño} cumplen las tres propiedades anteriores [la reflexiva corresponde en cada caso a un conjunto diferente: palabras, automóviles, . . . ]. Una relación de equivalencia en un conjunto A es una relación en A que además es reflexiva en A, simétrica y transitiva. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 27 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 28 / 114 Relaciones Relaciones Clasificar los elementos de A a partir de una relación de equivalencia en A A nivel intuitivo la idea detrás de una relación de equivalencia en A es que nos permite clasificar los elementos del conjunto A. Cuando decimos “clasificar” nos referimos a que podemos distribuir (repartir) todos los elementos de A en diferentes clases (i.e., diferentes subconjuntos de A) disjuntas. Por ejemplo, la relación de equivalencia llamada R1 en la diapositiva anterior nos permite clasificar todas las palabras en diferentes clases: (1) una clase es la de las palabras que comienzan con la letra a, (2) otra clase es la de las palabras que comienzan con la letra b, (3) otra clase es la de las palabras que comienzan con la letra c, (4) otra clase es la de las palabras que comienzan con la letra d, etc. Teniendo en cuenta que hay 27 letras del alfabeto lo que acabamos de observar es que la relación de equivalencia R1 nos clasifica todas las palabras en 27 clases diferentes y disjuntas. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 29 / 114 Clasificar los elementos de A a partir de una relación de equivalencia en A Consideramos la relación R en los números naturales que se da entre aquellos números que tienen la misma paridad. En particular, h1, 3i ∈ R, h2, 4i ∈ R y h1, 2i 6∈ R. I I Es fácil comprobar que R es una relación de equivalencia en el conjunto de los números naturales. ¿Qué clasificación nos determina esta relación de equivalencia? Permite clasificar todos los números naturales en exactamente 2 clases diferentes y disjuntas: 1 2 una clase es la de los números naturales pares, y la otra clase es la de los números naturales impares. Consideramos la relación R 0 en los números naturales que se da entre aquellos números tales que ambos son pares. En particular, h1, 3i 6∈ R 0 , h2, 4i ∈ R 0 y h1, 2i 6∈ R 0 . I I Es fácil comprobar que R 0 no es una relación de equivalencia en el conjunto de los números naturales porque no es reflexiva en el conjunto de los números naturales (ya que por ejemplo h1, 1i 6∈ R 0 ). Al no ser una relación de equivalencia en el conjunto de los números naturales no nos determina una clasificación en dicho conjunto. F. Bou (bou@ub.edu) Relaciones Consideramos la relación S en los números naturales que se da entre aquellos números que tienen el mismo resto al dividir entre 10 (recordemos que el resto de dividir entre 10 ha de ser un número de los que hay del 0 al 9). En particular, h1, 11i ∈ S, h22, 4i 6∈ S y h126, 66i ∈ S. De hecho, dos números naturales están relacionados por S sii tienen el mismo último digito en su representación decimal. I Es fácil comprobar que S es una relación de equivalencia en el conjunto de los números naturales. ¿Qué clasificación nos determina esta relación S de equivalencia? Permite clasificar todos los números naturales en las siguientes clases diferentes y disjuntas: 1 2 la clase de los números naturales cuyo resto al dividir entre 10 da 0, la clase de los números naturales cuyo resto al dividir entre 10 da 1, .. . 10 Versión 20 de mayo de 2009 30 / 114 Relaciones Clasificar los elementos de A a partir de una relación de equivalencia en A I Introducción a la Lógica II la clase de los números naturales cuyo resto al dividir entre 10 da 9, Clasificar los elementos de A a partir de una relación de equivalencia en A Consideramos la relación IdA de identidad en el conjunto A. I I Es fácil comprobar que IdA es una relación de equivalencia en el conjunto A. ¿Qué clasificación nos determina la relación IdA de equivalencia? Permite clasificar todos los elementos de A en exactamente tantas clases diferentes y disjuntas como elementos pertenecen a A. Cada una de estas clases está formada por un único elemento de A. Consideramos la relación total en A, es decir, la relación A × A. I I Es fácil comprobar que A × A es una relación de equivalencia en el conjunto A. ¿Qué clasificación nos determina la relación A × A de equivalencia? Permite clasificar todos los elementos de A en exactamente una sóla clase. Ası́ pues, esta única clase contiene a todos los elementos de A. Resumiendo, la relación S nos clasifica todos los números naturales en exactamente 10 clases diferentes y disjuntas. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 31 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 32 / 114 Relaciones Relaciones La noción de Partición (o Clasificación) Algunos Ejemplos sobre Particiones Una partición (o clasificación) de un conjunto A es una colección de subconjuntos no vacı́os de A (estos subconjuntos son llamados las clases de la partición) tal que todo elemento de A pertenece a uno de estos subconjuntos y sólo a uno. Dicho de otro modo, una partición (o una clasificación) de un conjunto A es una colección Π de subconjuntos de A tal que I I I ∅ 6∈ Π (i.e., no hay clases vacı́as), si X ∈ Π, Y ∈ Π y X 6= Y , entonces X ∩ Y = ∅ (i.e., las clases son disjuntas entre sı́), si a ∈ A entonces existe un X ∈ Π tal que a ∈ X (i.e., todo elemento de A pertenece a alguna clase). Los elementos de Π son las clases de dicha partición (i.e., X es una clase de la partición Π sii X ∈ Π). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 33 / 114 ¿La colección {{1}, {2, 3}} es una partición del conjunto {1, 2, 3}? Sı́ (porque se cumplen las tres condiciones escritas en la página anterior). ¿Es {{1}, {2, 3}} una partición del conjunto {1, 2, 3, 4}? No (porque falla la última de las tres condiciones en el caso de tomar a como 4). ¿Es {∅, {1}, {2, 3}} una partición del conjunto {1, 2, 3}? No (porque falla la primera de las tres condiciones). ¿Es {{1}, {2}, {2, 3}} una partición del conjunto {1, 2, 3}? No (porque falla la segunda de las tres condiciones en el caso de tomar X como {2} y tomar Y como {2, 3}). Sea Aa el conjunto de todas las palabras que comienzan con la letra a. Y análogamente consideramos los conjuntos Ab , Ac , . . . , Ay , Az . ¿Es la colección {Aa , Ab , Ac , . . . , Ay , Az } una partición del conjunto de todas las palabras? Sı́ (porque se cumplen las tres condiciones explicitadas en la definición de partición). F. Bou (bou@ub.edu) Relaciones Calcular todas las particiones del conjunto {1, 2, 3, 4}. A continuación vamos enumerando todas las particiones de dicho conjunto. 1 2 {{1}, {2}}, {{1, 2}}. 3 4 Ası́ pues, en total hay 2 particiones. Calcular todas las particiones del conjunto {1, 2, 3}. A continuación vamos enumerando todas las particiones de dicho conjunto. 1 2 3 4 5 34 / 114 Más Ejemplos sobre Particiones Calcular todas las particiones del conjunto {1, 2}. A continuación vamos enumerando todas las particiones de dicho conjunto. 2 Versión 20 de mayo de 2009 Relaciones Más Ejemplos sobre Particiones 1 Introducción a la Lógica II 5 6 7 8 {{1}, {2}, {3}}, {{1}, {2, 3}}, {{2}, {1, 3}}, {{3}, {1, 2}}, {{1, 2, 3}}. 9 10 11 12 13 Ası́ pues, en total hay 5 particiones. 14 15 {{1}, {2}, {3}, {4}}, {{1}, {2}, {3, 4}}, {{1}, {3}, {2, 4}}, {{1}, {4}, {2, 3}}, {{1}, {2, 3, 4}}. {{2}, {3}, {1, 4}}, {{2}, {4}, {1, 3}}, {{2}, {1, 3, 4}}. {{3}, {4}, {1, 2}}, {{3}, {1, 2, 4}}. {{4}, {1, 2, 3}}. {{1, 2}, {3, 4}}, {{1, 3}, {2, 4}}, {{1, 4}, {2, 3}}, {{1, 2, 3, 4}}. Ası́ pues, en total hay 15 particiones. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 35 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 36 / 114 Relaciones Relaciones Nota Avanzada sobre el Número de Particiones ¿Cuál es la conexión entre las Relaciones de Equivalencia y las Particiones? Por curiosidad comentamos que el número de particiones de un conjunto con n elementos se conoce como el n-ésimo número de Bell (en honor de Eric Temple Bell) y se suele denotar Bn . En particular, B1 = 1, B2 = 2, B3 = 5, B4 = 15, B5 = 52, B6 = 203, etc. ¿Cómo calcular dicho número en general? La mejor forma es calcular Bn+1 por recursión a partir de los anteriores ya conocidos (i.e., de Bn , Bn−1 , . . . , B2 , B1 , B0 tomando el convenio que B0 = 1) usando la fórmula n X n Bn+1 = Bk . k k=0 En las próximas diapositivas vamos a analizar esta conexión con todo detalle pero todo lo que diremos se puede resumir en que para cualquier conjunto A se cumple que, Toda relación R de equivalencia en el conjunto A determina una partición de A a la cual llamaremos A/R. Toda partición Π del conjunto A determina una relación de equivalencia en A a la cual llamaremos RΠ . Toda relación R de equivalencia en el conjunto A cumple que coincide con la relación de equivalencia asociada a la partición A/R. Es decir, R = RA/R . Toda partición Π del conjunto A cumple que coincide con la partición asociada a la relación RΠ . Es decir, Π = A/RΠ . F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 37 / 114 F. Bou (bou@ub.edu) Relaciones Introducción a la Lógica II Versión 20 de mayo de 2009 38 / 114 Relaciones ¿Cuál es la partición A/R determinada por la relación de equivalencia R? ¿Cuál es la partición A/R determinada por la relación de equivalencia R? Sea R una relación de equivalencia en un conjunto A. Sea R una relación de equivalencia en un conjunto A. Definición Para cada a ∈ A, definimos el conjunto [a]R (al cual llamaremos la clase de equivalencia de a respecto a R) como el conjunto de todos los elementos de A relacionados con a. Es decir, Definición Definimos el conjunto A/R (al cual llamaremos el conjunto cociente de A respecto a R) como el conjunto de las clases de equivalencia respecto a R de todos los elementos de A. Es decir, [a]R = {x ∈ A : hx, ai ∈ R}. A/R = {[a]R : a ∈ A}. Usando que R es reflexiva en A deducimos que para cada a ∈ A, se cumple que a ∈ [a]R . Por tanto, [a]R 6= ∅. Usando que R es simétrica y transitiva deducimos que para cada a ∈ A y b ∈ A, se cumple que si ha, bi ∈ R entonces [a]R = [b]R . [¿Por qué? Porque hx, ai ∈ R sii hx, bi ∈ R] Usando que R es simétrica y transitiva deducimos que para cada a ∈ A y b ∈ A, se cumple que si ha, bi 6∈ R entonces [a]R ∩ [b]R = ∅. Hecho Se cumple que A/R es una partición de A. Es decir, Para cada a ∈ A se cumple que [a]R 6= ∅. Para cada a ∈ A y b ∈ A, si [a]R 6= [b]R entonces [a]R ∩ [b]R = ∅. Para cada a ∈ A se cumple que existe un b ∈ A tal que a ∈ [b]R . [¿Por qué? Porque si hx, ai ∈ R y hx, bi ∈ R entonces ha, bi ∈ R] F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 39 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 40 / 114 Relaciones Relaciones Un Ejemplo sobre A/R Otro Ejemplo sobre A/R Sea A el conjunto {1, 2, 3, 4, 5, 6}, y sea R la relación {h1, 2i, h2, 1i, h4, 3i, h3, 4i, h4, 6i, h6, 4i, h3, 6i, h6, 3i} ∪ IdA . Es evidente que R es una relación de equivalencia en el conjunto anterior A. ¿Qué partición (clasificación) A/R nos determina esta relación de equivalencia R? I Comenzamos calculando las clases de equivalencia de todos los elementos de A. En este caso se tiene que F F F I Sea N el conjunto {1, 2, 3, . . .} de los nñumeros naturales, y consideramos otra vez la relación S en los números naturales que se da entre aquellos números que tienen el mismo resto al dividir entre 10 (i.e., si tienen el mismo último digito en su representación decimal). Es evidente que S es una relación de equivalencia en el conjunto anterior N. ¿Qué partición (clasificación) N/S nos determina esta relación de equivalencia S? I Las clases de equivalencia de los elementos de N son F [1]R = [2]R = {1,2}. [3]R = [4]R = [6]R = {3, 4, 6}. [5]R = {5}. F F F F Una vez calculadas todas las clases de equivalencia es evidente que el conjunto cociente A/R es {[1]R , [2]R , [3]R , [4]R , [5]R , [6]R }, es decir {[1]R , [3]R , [5]R }, es decir A/R = {{1, 2}, {3, 4, 6}, {5}}. F F F F F I F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 41 / 114 [1]S = {1, 11, 21, 31, . . .} = [11]S = [21]S = . . .. [2]S = {2, 12, 22, 32, . . .} = [12]S = [22]S = . . .. [3]S = {3, 13, 23, 33, . . .} = [13]S = [23]S = . . .. [4]S = {4, 14, 24, 34, . . .} = [14]S = [24]S = . . .. [5]S = {5, 15, 25, 35, . . .} = [15]S = [25]S = . . .. [6]S = {6, 16, 26, 36, . . .} = [16]S = [26]S = . . .. [7]S = {7, 17, 27, 37, . . .} = [17]S = [27]S = . . .. [8]S = {8, 18, 28, 38, . . .} = [18]S = [28]S = . . .. [9]S = {9, 19, 29, 39, . . .} = [19]S = [29]S = . . .. [10]S = {10, 20, 30, 40, . . .} = [20]S = [30]S = . . .. Por tanto, es evidente que el conjunto cociente N/S es precisamente {[1]S , [2]S , [3]S , [4]S , [5]S , [6]S , [7]S , [8]S , [9]S , [10]S }. F. Bou (bou@ub.edu) Introducción a la Lógica II Relaciones Versión 20 de mayo de 2009 42 / 114 Relaciones ¿Cuál es la relación de equivalencia RΠ determinada por la partición Π? Sea Π una partición del conjunto A. Definición Definimos la relación RΠ como aquella que relaciona dos objetos de A sii estos dos objetos pertenecen a una misma clase de la partición Π. Es decir, relaciona dos objetos sii la clase de la partición a la que pertenece el primer objeto coincide con la clase de la partición a la que pertenece el segundo objeto. Es decir, RΠ = {ha, bi : a ∈ A y b ∈ A y existe X ∈ Π tal que a ∈ X y b ∈ X }. Un Ejemplo sobre ΠR Sea A el conjunto {1, 2}. Anteriormente vimos que en este conjunto hay exactamente 2 particiones, que son Π = {{1}, {2}} y Π0 = {{1, 2}}. I I Sea A el conjunto {1, 2, 3}. Anteriormente vimos que en este conjunto hay exactamente 5 particiones, que son Π1 = {{1}, {2}, {3}}, Π2 = {{1}, {2, 3}}, Π3 = {{2}, {1, 3}}, Π4 = {{3}, {1, 2}} y Π5 = {{1, 2, 3}}. I I Hecho I Se cumple que RΠ es una relación de equivalencia en A. Es decir, I [Reflexiva en A] Para cada a ∈ A se cumple que ha, ai ∈ RΠ . ¿Qué relación es RΠ ? Es la relación IdA . ¿Qué relación es RΠ0 ? Es la relación A × A. I ¿Qué ¿Qué ¿Qué ¿Qué ¿Qué relación relación relación relación relación es es es es es RΠ1 ? RΠ2 ? RΠ3 ? RΠ4 ? RΠ5 ? Es Es Es Es Es la la la la la relación relación relación relación relación IdA . IdA ∪ {h2, 3i, h3, 2i}. IdA ∪ {h1, 3i, h3, 1i}. IdA ∪ {h1, 2i, h2, 1i}. A × A. [Simétrica] Para cada a ∈ A y b ∈ A, si ha, bi ∈ RΠ entonces hb, ai ∈ RΠ . [Trans] Para cada a, b, c ∈ A, si ha, bi ∈ RΠ y hb, ci ∈ RΠ entonces ha, ci ∈ RΠ . F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 43 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 44 / 114 Relaciones Relaciones Otro Ejemplo sobre ΠR Sea A el conjunto {1, 2, 3, 4}. Anteriormente vimos que en este conjunto hay exactamente 15 particiones. Para cada una de ellas escribimos la relación asociada correspondiente (seguimos el mismo orden que en la diapositiva anterior donde las escribimos). 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 IdA , IdA ∪ {h3, 4i, h4, 3i}, IdA ∪ {h2, 4i, h4, 2i}, IdA ∪ {h2, 3i, h3, 2i}, IdA ∪ {h2, 3i, h2, 4i, h3, 4i, h3, 2i, h4, 2i, h4, 3i}, IdA ∪ {h1, 4i, h4, 1i}, IdA ∪ {h1, 3i, h3, 1i}, IdA ∪ {h1, 3i, h1, 4i, h3, 4i, h3, 1i, h4, 1i, h4, 3i}, IdA ∪ {h1, 2i, h2, 1i}, IdA ∪ {h1, 2i, h1, 4i, h2, 4i, h2, 1i, h4, 1i, h4, 2i}, IdA ∪ {h1, 2i, h1, 3i, h2, 3i, h2, 1i, h3, 1i, h3, 2i}, IdA ∪ {h1, 2i, h2, 1i} ∪ {h3, 4i, h4, 3i}, IdA ∪ {h1, 3i, h3, 1i} ∪ {h2, 4i, h4, 2i}, IdA ∪ {h1, 4i, h4, 1i} ∪ {h2, 3i, h3, 2i}, A × A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 Las relaciones de equivalencia en un conjunto y las particiones en ese conjunto se determinan mútuamente Hecho Sea R una relación de equivalencia en un conjunto A. Entonces la relación RA/R es precisamente la relación R (i.e., RA/R = R). [¿Por qué? Porque hx, y i ∈ RA/R sii, existe X ∈ A/R tal que x ∈ X y y ∈ X sii, existe a ∈ A tal que x ∈ [a]R y y ∈ [a]R sii, existe a ∈ A tal que ha, xi ∈ R y hb, xi ∈ R sii, hx, y i ∈ R. ] Hecho Sea Π una partición un conjunto A. Entonces la partición A/RΠ es precisamente la partición Π (i.e., A/RΠ = Π). [¿Por qué? Porque X ∈ A/RΠ sii, existe a ∈ A tal que X = [a]RΠ sii, existe a ∈ A tal que X = {x ∈ A : hx, ai ∈ RΠ } sii, existe a ∈ A tal que X = {x ∈ A : x está en la misma clase de Π que a} sii, X ∈ Π. ] 45 / 114 F. Bou (bou@ub.edu) Relaciones 46 / 114 Un tipo especial de relaciones: las funciones Una Consecuencia Immediata Sea A un conjunto. Entonces, hay tantas relaciones de equivalencia en A como particiones del conjunto A hay. Por tanto, el número de Bell n-ésimo también coincide con el número de relaciones de equivalencia en un conjunto con n elementos. Hay relaciones que tienen la peculiaridad de que ningún objeto se relaciona con más de un objeto a la vez. Ası́ pues, estas relaciones cumplen que el objeto b con el que se relaciona (si es que lo hay) a través de R un objeto a queda totalmente determinado utilizando sólo a y R. En el lenguaje natural nos encontramos continuamente con relaciones de este tipo particular: I I I Introducción a la Lógica II Versión 20 de mayo de 2009 Funciones Las relaciones de equivalencia en un conjunto y las particiones en ese conjunto se determinan mútuamente F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 47 / 114 la relación {hx, y i : y es el alcalde de x} tiene dicha peculiaridad. Es precisamente dicha particularidad la que hace que no haya ninguna ambigüedad al usar una expresión como “el alcalde de Barcelona” (automáticamente sabemos que se refiere a Jordi Hereu). la relación {hx, y i : y es el año de nacimiento de x} tiene dicha peculiaridad. Es precisamente dicha particularidad la que hace que no haya ninguna ambigüedad al usar una expresión como “el año de nacimiento de Ramón y Cajal” (automáticamente sabemos que se refiere al año 1852). ... F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 48 / 114 Funciones Funciones Funciones Algunos Ejemplos sobre Funciones ¿Qué es una función? Una función es una relación R tal que para cualesquiera objetos a, b, c, se cumple que ¿Es la relación {ha, bi : a ∈ N y b ∈ N y b = a + 1} una función? Si (porque se tiene que si b = a + 1 y c = a + 1 entonces b = c.). si ha, bi ∈ R y ha, ci ∈ R, entonces b = c. En otras palabras, una función es una relación R que cumple que para todo a ∈ dom(R) hay un único objeto b tal que ha, bi ∈ R. ¿Es la relación {ha, bi : a ∈ N y b ∈ N y a = b + 1} una función? Si (porque se tiene que si a = b + 1 y a = c + 1 entonces b = c.). Usaremos las letras f , g , h, F , G , H para referirnos a funciones. Si f es una función y a ∈ dom(f ), entonces denotaremos f (a) al único objeto b tal que ha, bi ∈ f . Es decir, para todo elemento a del dominio de f se cumple que, f (a) = b sii ha, bi ∈ R. Diremos que f (a) es el valor de f en el argumento a o el valor que f asigna al argumento a. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 ¿Es la relación {h2, 3i, h2, 4i} una función? No (porque se tiene que el 2 está relacionado con más de un objeto). 49 / 114 ¿Es la relación {ha, bi : a ∈ N y b ∈ N y a < b} una función? No (porque se tiene que el 1 está relacionado tanto con el 2 como con el 3.). Sea A un conjunto. ¿Es la relación {ha, {a}i : a ∈ A} una función? Sı́. Sea A un conjunto. ¿Es la relación IdA (es decir, la relación {ha, ai : a ∈ A}) una función? Sı́. F. Bou (bou@ub.edu) Funciones 50 / 114 Ejemplos de Funciones Sea f una función. Entonces, por el principio de extensionalidad es evidente que f = {ha, f (a)i : a ∈ dom(f )}. Dicho de otra forma, para todo par de objetos a, b se cumple que ha, bi ∈ f sii a ∈ dom(f ) y f (a) = b. Sea f una función. Entonces, por el principio de extensionalidad es evidente que rec(f ) = {f (a) : a ∈ dom(f )}. Sean f y g dos funciones. Entonces, por el principio de extensionalidades evidente que dom(f ) = dom(g ) f = g sii para todo a ∈ dom(f ), se cumple que f(a) = g(a). Por tanto, para definir una función basta con (i) especificar su dominio, y (ii) decir que que valor asigna la función a cada elemento del dominio. Introducción a la Lógica II Versión 20 de mayo de 2009 Funciones Igualdad entre Funciones F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 51 / 114 Sea G la función cuyo dominio es el conjunto A de las palabras y tal que para cada palabra p (i.e., p ∈ A) se cumple que G (p) es la primera letra de p. Resumiendo, G es la función que asigna a cada palabra su primera letra. Sea g la función cuyo dominio es el conjunto A de los números naturales y tal que para cada número natural n (i.e., n ∈ N) se cumple que g (n) es n3 . Resumiendo, g es la función que asigna a cada número natural su cubo. Sea h la función cuyo dominio es el conjunto A de las palabras y tal que para cada palabra p (i.e., p ∈ A) se cumple que h(p) es el número de letras que tiene la palabra p. Resumiendo, h es la función que asigna a cada palabra el número de letras que tiene dicha palabra. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 52 / 114 Funciones Funciones Más Ejemplos de Funciones Función de A en B Sea h1 la función cuyo dominio es el conjunto {V , F } × {V , F } (i.e., el producto cartesiano consigo mismo del conjunto formado por los dos valores de verdad) y que a cada elemento ha, bi del dominio le asigna el valor de verdad de la fórmula p ∨ q al interpretar p por el valor a y q por el valor b. Resumiendo, h1 es la función {hhV , V i, V i, hhV , F i, V i, hhF , V i, V i, hhF , F i, F i}. Sea h2 la función cuyo dominio es otra vez el conjunto {V , F } × {V , F } y que a cada elemento ha, bi del dominio le asigna el valor de verdad de la fórmula p → q al interpretar p por el valor a y q por el valor b. Resumiendo, h2 es la función Una función f es una función de A en B si además de ser una función cumple que dom(f ) = A y que para todo a ∈ A se tiene que f (a) ∈ B. En otras palabras, f es una función tal que dom(f ) = A y rec(f ) ⊆ B. Usaremos la notación f : A −→ B para indicar que f es una función de A en B. {hhV , V i, V i, hhV , F i, F i, hhF , V i, V i, hhF , F i, V i}. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 53 / 114 F. Bou (bou@ub.edu) Funciones I dom(f ) = A, para todo a ∈ A se cumple que f (a) ∈ B [i.e., rec(f ) ⊆ B], para todo b ∈ B se cumple que existe a ∈ A tal que f (a) = b [i.e., B ⊆ rec(f )]. Una biyección entre un conjunto A y un conjunto B es una función de A sobre B que además es inyectiva. F. Bou (bou@ub.edu) Introducción a la Lógica II 54 / 114 Algunos Ejemplos sobre las Clases anteriores Una función f es inyectiva si para cualesquiera a, b ∈ dom(f ), se cumple que si f (a) = f (b) entonces a = b. En otras palabras, si a 6= b entonces f (a) 6= f (b). Una función f se dice que es sobre B si además de ser función se cumple que B ⊆ rec(f ). En otras palabras, f es una función tal que para todo b ∈ B se cumple que existe a ∈ dom(f ) tal que f (a) = b. Una función f es una función de A sobre B si además de ser función se cumple que dom(f ) = A y rec(f ) = B. En otras palabras, f es una función tal que I Versión 20 de mayo de 2009 Funciones Varias Clases de Funciones I Introducción a la Lógica II Versión 20 de mayo de 2009 55 / 114 Sea Z el conjunto de los números enteros, i.e., Z = {. . . , −2, −1, 0, 1, 2, . . .}. Consideramos la función f que asigna a cada número entero n su opuesto −n (en particular se tiene que f (−2) = 2, f (−1) = 1, f (0) = 0, f (1) = −1, f (2) = −2). Es evidente que es una función de Z en Z. ¿Es inyectiva? Sı́ (porque números diferentes tienen opuestos diferentes). ¿Es sobre Z? Sı́ (porque todo número entero es el opuesto de algún número entero). ¿Es una biyección entre Z y Z? Sı́. Consideramos la función g que asigna a cada número entero n su cuadrado n2 (en particular se tiene que g (−2) = (−2)2 = 4, g (−1) = (−1)2 = 1, g (0) = 0, g (1) = 12 = 1, g (2) = 22 = 4). Es evidente que g es una función de Z en Z. ¿Es inyectiva? No (porque por ejemplo g (1) = g (−1) siendo el 1 y el −1 dos números diferentes). ¿Es sobre Z? No (porque el número −1 no es el cuadrado de ningún número entero). ¿Es sobre {0, 1, 2, . . .}? No (porque 2 no es el cuadrado de ningún entero). ¿Es una biyección entre Z y Z? No. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 56 / 114 Funciones Lenguajes de Primer Orden: Sintaxis Más Ejemplos sobre las Clases anteriores Motivación de los lenguajes de Primer Orden Sea A el conjunto de las personas. Consideramos la función F que asigna a cada persona su madre. Es evidente que F es una función de A en A. ¿Es inyectiva? No (porque hay personas diferentes con la misma madre). ¿Es sobre A? No (porque hay personas que no son la madre de nadie). ¿Es sobre el conjunto M de las mujeres? No (porque no toda mujer es madre de alguien). ¿Es una biyección entre A y A? No. Sea A el conjunto {Madrid, Barcelona, Valencia}. Consideramos la función G que asigna a cada elemento de A su alcalde. De hecho, G = {hMadrid, Gallardóni, hBarcelona, Hereui, hValencia, Barberài}. ¿Es inyectiva? Sı́ (porque ciudades diferentes tienen alcaldes diferentes). ¿Es sobre el conjunto de los alcaldes de España? No (porque por ejemplo el alcalde de Tarragona no es el alcalde ninguna de las ciudades pertenecientes a A). ¿Es sobre el conjunto {Gallardón, Hereu, Barberà}? Sı́ (porque todo elemento de este conjunto es el alcalde de una de las ciudades pertenecientes a A). ¿Es una biyección entre A y La lógica de enunciados sólo es útil para analizar la estructura de los enunciados compuestos formados a partir de otros más simples con ayuda de expresiones veritativo-funcionales. Esto nos da una incapacidad de la lógica de enunciados para mostrar la corrección de argumentos como los siguientes: I I Todos los hombres son mortales, Juan es un hombre; por tanto, Juan es mortal. El planeta Marte tiene agua, Marte no es la Tierra; por tanto, algún planeta diferente de la Tierra tiene agua. Para estudiar la corrección de argumentos como los anteriores necesitamos un lenguaje formal que nos permita representar la estructura de enunciados como los anteriores. Y no queremos perder tampoco el poder de representación que ya tenı́amos en la lógica de enunciados. {Gallardón, Hereu, Barberà}? Sı́. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 57 / 114 Lenguajes de Primer Orden: Sintaxis 3 4 5 6 Nombres propios: Juan, Marte, la Tierra, etc. Los nombres propios son expresiones para referirnos a un objeto determinado. Predicados (propiedades): ser mortal, ser humano, contener agua, etc. Los predicados expresan propiedades de un cierto objeto. Relacionales: ser hijo de, es mayor que, ser trillizos, etc. Los relaciones son expresiones que utilizamos para indicar que un objeto está relacionado de algún modo con otro. la relación de identidad: “es igual a”. Cuantificadores: “todos”, “algunos”. Los cuantificadores son expresiones que utilizamos para hablar de la totalidad o de una parte de un conjunto de objetos. Conectivas Proposicionales: y, o, implica, si y sólo si, no ocurre. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 58 / 114 Motivación de los Lenguajes de Primer Orden Por tanto, nuestro nuevo lenguaje tendrá que permitirnos al menos utilizar expresiones del tipo de: 2 Introducción a la Lógica II Lenguajes de Primer Orden: Sintaxis Motivación de los Lenguajes de Primer Orden 1 F. Bou (bou@ub.edu) Versión 20 de mayo de 2009 59 / 114 Los seis elementos anteriores son exactamente los presentes en los lenguajes de primer orden. No hay un sólo lenguaje de primer orden sino una familia de lenguajes de primer orden. Todos los lenguajes de primer orden tienen en común los tres últimos elementos de la lista anterior. Simplemente se diferencian en los tres primeros elementos, dependiendo del ámbito de la realidad del que queramos hablar conviene tener unos u otros nombres propios, predicados y relacionales. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 60 / 114 Lenguajes de Primer Orden: Sintaxis Lenguajes de Primer Orden: Sintaxis Los Lenguajes de Primer Orden Los Lenguajes de Primer Orden Todos los lenguajes de primer orden tienen en común los sı́mbolos siguientes: 1 2 3 4 5 Variables: x, y , z, . . . , x1 , x2 , . . . (hay infinitas). Conectivas: ∧, ∨, →, ↔, ¬. Cuantificadores: ∀ (cuantificador universal), ∃ (cuantificador existencial). Sı́mbolo de igualdad: ≈. Paréntesis: ), (. Para identificar un lenguaje de primer orden basta con decir cuáles son sus sı́mbolos propios, es decir, (i) cuáles son sus constantes, (ii) cuáles son sus sı́mbolos de predicado, y (iii) cuáles son sus sı́mbolos relacionales (indicando el número asociado a cada sı́mbolo relacional). Las conectivas, los cuantificadores y el sı́mbolo de igualdad son los sı́mbolos lógicos del lenguaje. Y los paréntesis son los sı́mbolos auxiliares del lenguaje. Todo lenguaje de primer orden está caracterizado por los sı́mbolos que tiene además de los comunes. Estos sı́mbolos, llamados sı́mbolos propios, son de tres tipos (y sólo de uno de ellos): 1 2 3 Constantes individuales: c, d, e, . . . , c1 , c2 , . . . Sı́mbolos de predicado: P, Q, P1 , P2 , . . .. Sı́mbolos relacionales: R, S, T , R1 , R2 , . . . Cada sı́mbolo relacional tiene asociado un número natural ≥ 2 que indica el tipo de relación que puede expresar (binaria, ternaria, etc.). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 61 / 114 Lenguajes de Primer Orden: Sintaxis Ejemplos de lenguajes de primer orden L≈ es el que no tiene sı́mbolos propios (lenguaje puro de la identidad). El que tiene una constante individual c y un sı́mbolo relacional ternario R. L1 es el que tiene dos constantes individuales c, d, un sı́mbolo de predicado P, un sı́mbolo relacional binario R y un sı́mbolo relacional ternario S. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 62 / 114 Lenguajes de Primer Orden: Sintaxis Fórmulas de un lenguaje de Primer Orden Ejemplos de fórmulas en un lenguaje de Primer Orden Sea L un lenguaje de primer orden. Una expresión del lenguaje L es una sucesión finita de sı́mbolos de L. Un término del lenguaje L es una variable o una constante de L. Una fórmula atómica del lenguaje L es una expresión de alguna de las tres formas siguientes: 1 2 3 t ≈ t 0 donde t, t 0 son términos del lenguaje L. Pt donde P es un sı́mbolo de predicado de L y t es un término de L. Rt1 . . . tn donde R es un sı́mbolo relacional n-ario de L y t1 , . . . , tn son términos de L. Una fórmula del lenguaje L es una expresión que se obtiene de acuerdo a alguna de las reglas siguientes: 1 2 3 Toda fórmula atómica de L es una fórmula de L. Si α, β son fórmulas también lo son (α ∧ β), (α ∨ β), (α → β), (α ↔ β) y ¬α. Si α es una fórmula y x es una variable, ∀xα y ∃xα son fórmulas. Omitiremos los paréntesis exteriores de las fórmulas (como en el caso proposicional), y usaremos α, β, . . . para referirnos a las fórmulas. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 63 / 114 Ejemplo en los lenguajes L≈ y L1 anteriores x), (y ∀ x c (x ≈ y ) y ≈x ∀cx ≈ c ∀yx ≈ y Px Rxy Px ∧ ¬Rxy F. Bou (bou@ub.edu) Expresión No Sı́ Sı́ No/Sı́ Sı́ Sı́ No/Sı́ Sı́ No/Sı́ No/Sı́ No/Sı́ Término No No Sı́ No/Sı́ No No No No No No No Fórmula Atómica No No No No No Sı́ No No No/Sı́ No/Sı́ No Introducción a la Lógica II Fórmula No No No No No Sı́ No Sı́ No/Sı́ No/Sı́ No/Sı́ Versión 20 de mayo de 2009 64 / 114 Lenguajes de Primer Orden: Sintaxis Lenguajes de Primer Orden: Sintaxis Ejemplos de fórmulas en un lenguaje de Primer Orden Diversos Tipos de Fórmulas Una conjunción es una fórmula de primer orden de la forma (α ∧ β). Una disyunción es una fórmula de primer orden de la forma (α ∨ β). Un condicional es una fórmula de primer orden de la forma (α → β). Ejemplos de fórmulas atómicas (se sobreentiende el lenguaje) Un bicondicional es una fórmula de primer orden de la forma (α ↔ β). x ≈ y , x ≈ c, Pc, Rxy , Rdy , Rcd, etc. Una negación es una fórmula de primer orden de la forma ¬α. Una cuantificación universal es una fórmula de primer orden de la forma ∀xα. Ejemplos de fórmulas no atómicas (se sobreentiende el lenguaje) ¬x ≈ y , ¬Px, Px → Rxy , Px ∧ ¬Qy , ∀xPx, ∀x¬Px, ∀x(∃y (Px ∧ Rxy ) → ¬Rxc), ∀x∀xPx, etc. Una cuantificación existencial es una fórmula de primer orden de la forma ∃xα. Toda fórmula de primer orden es o bien una conjunción, o una diyunción, o un condicional, o un bicondicional, o una negación, o una cuantificación universal, o una cuantificación existencial, o una fórmula atómica. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 65 / 114 Lenguajes de Primer Orden: Sintaxis Versión 20 de mayo de 2009 66 / 114 Subfórmulas Al igual que en el caso proposicional podemos asociar a cada fórmula de un lenguaje de primer orden su árbol genealógico, que describe la construcción o generación de la fórmula de acuerdo a las reglas anteriores. Por ejemplo, El árbol genealógico de ∀x∃y (Px ∧ Rxy ) → ¬Rxc es Px Rxy Px ∧ Rxy ∃y (Px ∧ Rxy ) Rxc ∀x∃y (Px ∧ Rxy ) ¬Rxc ∀x∃y (Px ∧ Rxy ) → ¬Rxc El árbol genealógico de ∀x(Px → ∃yRxy ) → ∀x(∃yRxy → ¬Qx) es Rxy Rxy Qx Px ∃yRxy ∃yRxy ¬Qx Px → ∃yRxy ∃yRxy → ¬Qx ∀x(Px → ∃yRxy ) ∀x(∃yRxy → ¬Qx) ∀x(Px → ∃yRxy ) → ∀x(∃yRxy → ¬Qx) Los árboles genealógicos permiten justificar que se es una fórmula. Introducción a la Lógica II Introducción a la Lógica II Lenguajes de Primer Orden: Sintaxis Justificación de porqué una expresión es una fórmula F. Bou (bou@ub.edu) F. Bou (bou@ub.edu) Versión 20 de mayo de 2009 67 / 114 Las subfórmulas de una fórmula son las fórmulas que aparecen en su árbol genealógico, incluida la propia fórmula. Por ejemplo, ∀x∃y (Px ∧ Rxy ) → ¬Rxc tiene 8 subfórmulas, y ∀x(Px → ∃yRxy ) → ∀x(∃yRxy → ¬Qx) tiene 10 subfórmulas según lo que hemos visto en la anterior diapositiva. ¿Cuáles son la subfórmulas de la fórmula ∀y ∀x((x ≈ y ∧ Px) → Py )? Para responder a esta pregunta comenzamos construyendo el árbol genealógico de esta fórmula, el cual es x ≈y Px (x ≈ y ∧ Px) Py ((x ≈ y ∧ Px) → Py ) ∀x((x ≈ y ∧ Px) → Py ) ∀y ∀x((x ≈ y ∧ Px) → Py ) Por tanto, hay siete subfórmulas que son: x ≈ y , Px, (x ≈ y ∧ Px), Py , ((x ≈ y ∧ Px) → Py ), ∀x((x ≈ y ∧ Px) → Py ) y ∀y ∀x((x ≈ y ∧ Px) → Py ). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 68 / 114 Lenguajes de Primer Orden: Sintaxis Lenguajes de Primer Orden: Sintaxis Más Ejemplos de Subfórmulas Variables libres y ligadas ¿Cuántas subfórmulas tiene la fórmula ∀xPx → ∃xPx y cuáles son? Para responder a esta pregunta comenzamos construyendo el árbol genealógico de esta fórmula, el cual es Px Px ∀xPx ∃xPx ∀xPx → ∃xPx Por tanto, hay cuatro subfórmulas que son: Px, ∀xPx, ∃xPx y ∀xPx → ∃xPx. ¿Cuántas subfórmulas tiene la fórmula ∀x(Px → ∃xPx) y cuáles son? Para responder a esta pregunta comenzamos construyendo el árbol genealógico de esta fórmula, el cual es Px Px ∃xPx Px → ∃xPx ∀x(Px → ∃xPx) Por tanto, hay cuatro subfórmulas que son: Px, Px → ∃xPx, ∃xPx y ∀x(Px → ∃xPx). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 69 / 114 Lenguajes de Primer Orden: Sintaxis Una aparición de una variable x en una fórmula α es libre si no es ligada. Es decir, sii dicha aparición de la variable x no está bajo el alcance de ninguna cuantificación de la forma ∀x o ∃x. Es evidente que toda aparición de una variable en una fórmula es o bien libre o bien ligada. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 70 / 114 Sentencias y Fórmulas Abiertas Una variable x está libre en una fórmula α si hay alguna aparición libre de la variable x en la fórmula α. Es decir, si hay una aparición de x en α que no aparece bajo el alcance de ningún cuantificador de la forma ∀x o ∃x. Indicar con las apariciones de variables que son ligadas, y con las apariciones de variables que son libres en las siguientes fórmulas. Escribiremos α(x1 , . . . , xn ) para denotar a una formula α tal que sus variables libres están entre (no tienen porque ser exactamente) x1 , . . . , xn . ∀x(Px → Rxy ) → (∃yPy → Rxz). ∀x(Px → Rxy ) → (∃y Py → Rxz). ∀z∀x(Px → x ≈ y ) ∧ Qz. ∀z∀x(Px → x ≈ y ) ∧ Qz. Una fórmula con una o más variables libres es una fórmula abierta. Algunos ejemplos de fórmulas abiertas son ¬c ≈ y , Px → Rxy , ∀x∃yRxy → Rxx, ∀x(∃y (Px ∧ Rxy ) → ¬Rzx), . . . ∀x(Px → ∃yRxy ) → ∀x(∃yRxy → ¬Qx). ∀x(Px → ∃y Rxy ) → ∀x(∃y Rxy → ¬Qx). ∀x∀y ((Py ∧ x ≈ c) → Py ) → Px. ∀x∀y ((Py ∧ x ≈ c) → Py ) → Px. Introducción a la Lógica II Una aparición de una variable x en una fórmula α es ligada si aparece en una subfórmula de α que es una cuantificación ligada a x. Es decir, sii dicha aparición de la variable x está bajo el alcance de una cuantificación de la forma ∀x o ∃x. Lenguajes de Primer Orden: Sintaxis Ejemplos sobre Variables libres y ligadas F. Bou (bou@ub.edu) Una cuantificación ligada a una variable x es una fórmula de la forma ∀xα o de la forma ∃xα (donde α es otra fórmula). Versión 20 de mayo de 2009 71 / 114 Toda fórmula sin variables libres es una sentencia (o una fórmula cerrada), y las denotaremos σ, δ, . . .. Algunos ejemplos de sentencias son ¬c ≈ d, Pc → Rcc, ∀x∀y (Px → Rxy ), ∀x(∃y (Px ∧ Rxy ) → ¬Rxc), . . . F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 72 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Semántica Estructuras Antes hemos introducido la sintaxis de los lenguajes de primer orden. Ahora prestamos atención a su semántica, es decir, vamos a decir cómo se les atribuye significado a los lenguajes de primer orden (hasta ahora sólo son sı́mbolos sintácticos). Recordemos para identificar un lenguaje de primer orden basta con decir cuáles son sus sı́mbolos propios, es decir, (i) cuáles son sus constantes, (ii) cuáles son sus sı́mbolos de predicado, y (iii) cuáles son sus sı́mbolos relacionales (indicando el número asociado a cada sı́mbolo relacional). Desde un punto de vista intuitivo, para interpretar un lenguaje de primer orden L debemos hacer dos cosas: 1 2 Definición Una estructura para un lenguaje de primer orden L consiste en un par ordenado A = hA, Fi donde 1 2 A es un conjunto no vacı́o llamado el universo (o dominio) de la estructura. F es una regla que asigna un objeto a cada sı́mbolo propio de L cumpliendo las condiciones siguientes: I I Fijar un conjunto A no vacı́o de objetos (los elementos del discurso). Interpretar cada uno de los sı́mbolos propios del lenguaje L, es decir, F F F asignar a cada constante un elemento del conjunto A. asignar a cada sı́mbolo de predicado un subconjunto (puede ser vacı́o) de A. asignar a cada sı́mbolo relacional n-ario una relación n-aria (puede ser vacı́a) en A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 73 / 114 Lenguajes de Primer Orden: Semántica I 2.1. si c es una constante de L, la regla le asigna un elemento de A, al que denotamos c A y llamamos la interpretación (denotación) de c en A. 2.2. si P es un sı́mbolo de predicado de L, la regla le asigna un subconjunto de A, al que denotamos P A y llamamos la interpretación de P en A. 2.3. si R es un sı́mbolo relacional n-ario de L, la regla le asigna una relación n-aria en A, a la que denotamos R A y llamamos la interpretación de R en A. Usaremos los nombres A, B, C, . . . para referirnos a las estructuras. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 74 / 114 Lenguajes de Primer Orden: Semántica Ejemplos de Estructuras Más Ejemplos de Estructuras Consideramos otra vez el lenguaje L1 de antes. Una estructura para este lenguaje es por ejemplo A = hA, c A , d A , P A , R A , S A i, donde A es el conjunto de los objetos celestes del sistema solar, c A es la Tierra, d A es la Luna, P A es el conjunto de los planetas, R A es la relación “ser satélite de” entre objetos celestes del sistema solar y S A es la relación vacı́a. Otra estructura para ese mismo lenguaje es B = hB, c B , d B , P B , R B , S B i, Otro ejemplo más de estructura para el lenguaje L1 es C = hC , c C , d C , P C , R C , S C i, donde C = {1, 2, 3, 4}, c C = 2, d C = 1, P C = {1, 2}, R C = {h1, 3i, h1, 1i, h3, 2i} y S C = {h1, 1, 3i, h2, 1, 4i, h3, 2, 1i}. donde B es el conjunto de los números naturales (i.e., B = {1, 2, 3, . . .}), c B es el número 5, d B es el número 1, P B es el conjunto de los números pares, R B es la relación “ser menor estricto que” entre números naturales y S B es la relación {hm, n, ki : m, n, k son números naturales y m · n = k}. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 75 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 76 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Algunas Observaciones sobre las Estructuras Sentencias Verdaderas en una Estructura El universo de una estructura nunca es vacı́o. Es posible que la interpretación de un sı́mbolo de predicado o de un sı́mbolo relacional sea el conjunto vacı́o. Esto es ası́ para poder hablar de propiedades y relaciones que no posee ningún objeto del universo de la estructura. Es obvio que un lenguaje de primer orden puede interpretarse en distintas estructuras. Una estructura para un lenguaje de primer orden nos proporciona la interpretación de los sı́mbolos propios del lenguaje. Para determinar el valor de verdad de las sentencias (de un lenguaje de primer orden) debemos fijar también el significado de los sı́mbolos no propios. ¿Cuál es el significado de los sı́mbolos no propios? Desde un punto de vista intuitivo se tiene que el significado de I I I I las conectivas ∧, ∨, →, ↔, ¬ es el mismo que en la lógica proposicional. el cuantificador universal ∀ se lee “para todo objeto del dominio de la estructura”. el cuantificador existencial ∃ se lee “para algún objeto del dominio de la estructura”. el sı́mbolo de igualdad ≈ es la relación de identidad (igualdad). Dada una sentencia σ y una estructura A automáticamente queda determinado si la sentencia σ es verdadera en la estructura A (escribiremos A |= σ) o si por contra la sentencia σ es falsa en la estructura A (escribiremos A 6|= σ). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 77 / 114 Lenguajes de Primer Orden: Semántica Versión 20 de mayo de 2009 78 / 114 Otro Ejemplo sobre la verdad/falsedad de Sentencias Consideramos otra vez las estructuras A, B, C de antes. Clasificar las siguientes sentencias según sean verdaderas o falsas. A B C Pc V F V V V F ¬Pd ∀x∀y ((Px ∧ Py ) → x ≈ y ) F F F F F V ∃xRxx V V V ∃xRdx F F V ∃xRxd ∃x∃yRxy V V V ∀x(Px → ∃yRyx) F V V ∃x∀y (¬x ≈ y → Rxy ) F V F F V F ∃x∃ySxyx F V F ∀x∃yRxy F F F ∃x∀yRxy Rxd ? ? ? ? ? ? ∀y (¬x ≈ y → Rxy ) Introducción a la Lógica II Introducción a la Lógica II Lenguajes de Primer Orden: Semántica Ejemplo sobre la verdad/falsedad de Sentencias F. Bou (bou@ub.edu) F. Bou (bou@ub.edu) Versión 20 de mayo de 2009 79 / 114 Consideramos el lenguaje de primer orden que tiene un sı́mbolo de constantes c, dos sı́mbolos de predicado P, Q y un relacional binario R. Sobre este lenguaje consideramos la estructura A = hA, c A , P A , Q A , R A i, donde A es el conjunto de los números naturales (i.e., A = {1, 2, 3, . . .}), c A es el número 1, P A es el conjunto de los números pares, Q A es el conjunto de los números impares y R A es la relación “ser menor estricto que”. Entonces, La sentencia ∀x(Px ∨ Qx) expresa que todo número natural es par o impar. Y por tanto, es verdadera en esta estructura A. La sentencia ∀y (Py ∨ Qy ) expresa lo mismo que la anterior; luego es verdadera en A. La sentencia ∀x(Px ↔ ¬Qx) expresa que todo número natural es par sii no es impar. Y por tanto, es verdadera en A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 80 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Otro Ejemplo sobre la verdad/falsedad de Sentencias (cont.) La sentencia ∃xRxx expresa que hay algún número natural que es menor estricto que si mismo. Y por tanto, es falsa en A. La sentencia ∀xRcx expresa que el 1 es menor estricto que todo número natural, i.e., que todo número natural es mayor estricto que el 1. Y por tanto, es falsa en A. La sentencia ∀x(Rcx ∨ x ≈ c) expresa que todo número natural es o bien mayor estricto que el 1 o bien el número 1. Y por tanto, es verdadera en A. La sentencia ∀x∃yRxy expresa que todo número natural tiene uno estrictamente mayor. Y por tanto, es verdadera en A. Y lo mismo es expresado por ∀y ∃xRyx. La sentencia ∀x∃yRyx expresa que todo número natural tiene uno estrictamente menor. Y por tanto, es falsa en A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 81 / 114 Lenguajes de Primer Orden: Semántica La sentencia ∀x∀y (Rxy ∨ Ryx) expresa que dados dos números naturales o bien el primero es estrictamente menor que el segundo o bien el segundo es estrictamente menor que el primero. Y por tanto, es falsa en A. La sentencia ∀x(Px → ∃y (Qy ∧ Rxy )) expresa que para todo número natural si es par entonces hay un número impar estrictamente mayor que él, i.e., todo número par tiene un impar estrictamente mayor. Y por tanto, es verdadera en A. La sentencia ∀x(Px → ∃y (Qy ∧ Ryx)) expresa que para todo número natural si es par entonces hay un número impar estrictamente menor que él, i.e., todo número par tiene un impar estrictamente menor. Y por tanto, es verdadera en A. La sentencia ∀x(Qx → ∃y (Py ∧ Ryx)) expresa que para todo número natural si es impar entonces hay un número par estrictamente menor que él, i.e., todo número impar tiene un par estrictamente menor. Y por tanto, es falsa en A. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 Otro Ejemplo sobre la verdad/falsedad de Sentencias Consideramos la estructura (en el lenguaje de primer orden del ejemplo anterior) B = hB, c B , P B , Q B , R B i, donde B es el conjunto {1, 2, 3, 4}, c B = 1, P B = {1, 2, 3}, Q B = {2, 4} y R B = {h1, 2i, h2, 3i, h3, 3i}. Entonces, La sentencia ∃x(Px ∧ Qx) es verdadera (puesto que 2 ∈ P B y 2 ∈ Q B ). La sentencia ∃xRcx es verdadera (puesto que 1 está relacionado por R B con algún objeto ya que h1, 2i ∈ R B ). La sentencia ∃yRyc es falsa (puesto que ningún objeto está relacionado por R B con 1). Y los mismo para ∃xRxc. La sentencia ∀x(Px ∨ Qx) es verdadera (puesto que todos los elementos del dominio o bien pertencen a P B o a Q B ). La sentencia ∃x(¬Qx ∨ c ≈ x) es verdadera (puesto que el condicional ¬Qx ∨ c ≈ x es verdadera si interpretamos x como 3). La sentencia ∃x(Qx → c ≈ x) es verdadera (puesto que el condicional Qx → c ≈ x es verdadera si interpretamos x como 3). Introducción a la Lógica II (cont.) 82 / 114 Lenguajes de Primer Orden: Semántica Otro Ejemplo sobre la verdad/falsedad de Sentencias F. Bou (bou@ub.edu) Otro Ejemplo sobre la verdad/falsedad de Sentencias Versión 20 de mayo de 2009 83 / 114 (cont.) La sentencia ∀xPx ∨ ∀xQx es falsa (puesto que ni todos los objetos pertenecen a P B ni todos los objetos pertenecen a Q B ). La sentencia ∀x∃yRxy es falsa (puesto que 4 no está relacionado por R B con ningún objeto). La sentencia ∃y ∀x¬Rxy es verdadera (puesto que ningún objeto está relacionado por R B con 1, i.e., puesto que ∀x¬Rxy es verdadera si interpretamos y como 1). La sentencia ∀x(Px → ∃yRxy ) es verdadera (puesto que todos los elementos de P B están relacionados por R B con algún objeto). La sentencia ∀x∀y ∀z((Rxy ∧ Rxz) → y ≈ z) es verdadera (puesto que la relación R B es una función). La sentencia ∀xPx → ∃xPx es verdadera (puesto que el segundo miembro del condicional es verdadero). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 84 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Verdad Lógica Más sobre la Verdad Lógica Hasta ahora hemos hablado de la noción de verdad en una estructura. Conviene remarcar que no se puede hablar del valor de verdad de una sentencia, puesto que una sentencia admite significados diferentes en estructuras diferentes. Una sentencia de un lenguaje de primer orden L es una verdad lógica si es verdadera en toda estructura para L. Las verdades lógicas también son llamadas sentencias universalmente válidas o lógicamente válidas. Todas las sentencias que tienen forma de una tautologı́a (proposicional) son verdades lógicas. Este tipo de sentencias son verdades lógicas en virtud de la semántica de las conectivas. Ası́ pues, la sentencia (∃xPx ∧ ∀xQx) → ∀xQx es una verdad lógica, puesto que es de la forma (α ∧ β) → β, la cual es una tautologı́a. Análogamente, utilizando que α → (α ∨ β) es una tautologı́a, resulta que la sentencia ∃xPx → (∃xPx ∨ ∀xQx) también es una verdad lógica. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 85 / 114 Lenguajes de Primer Orden: Semántica I I I I I I I I Introducción a la Lógica II I I ∀x x ≈ x, ∀x∀y (x ≈ y → y ≈ x), ∀x∀y ∀z((x ≈ y ∧ y ≈ z) → x ≈ z). ∀x∀y ((x ≈ y ∧ Px) → Py ), Las tres primeras sentencias esencialmente están afirmando que la relación de igualdad es una relación de equivalencia, es decir, que es reflexiva, simétrica y transitiva. Y la cuarta sentencia expresa que objetos identicos cumplen las mismas propiedades. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 86 / 114 ¿Cómo justificar que la sentencia ∀x∃yRxy → ∃x∀yRxy no es una verdad lógica? Hemos de encontrar una estructura donde la sentencia anterior no sea verdadera (i.e., sea falsa). Por ejemplo, se puede comprobar que dicha sentencia es falsa en la estructura B considerada anteriormente (véanse las diapositivas anteriores). Otro ejemplo (aunque con el anterior ya bastaba para saber que no es una verdad lógica) de estructura donde la sentencia anterior es falsa es la estructura con dominio el conjunto de seres humanos, y que interpreta el sı́mbolo relacional binario R con la relación binaria “ser hijo de”. ¿Cómo justificar que la sentencia ∀x(Px → Qx) no es una verdad lógica? Hemos de encontrar una estructura donde la sentencia anterior sea falsa. Por ejemplo, se puede comprobar que dicha sentencia es falsa en la estructura con dominio el conjunto de seres humanos, que interpreta el sı́mbolo de predicado P como el conjunto de seres humanos que son polı́ticos y que interpreta el sı́mbolo Q como el conjunto de los polı́ticos que han estudiado algo en la UB. ∀x(Px → Px), ∀xPx → Pc, Pc → ∃xPx, ∀xPx → ∃xPx, ∀x(Px → Qx) → (∀x(Qx → Rx) → ∀x(Px → Rx)), ∀x(Px → Qx) → (∀xPx → ∀xQx), ∀x(Px → Qx) → (∃xPx → ∃xQx), ∃x(Px → ∀yPy ), ∃x∀yRxy → ∀x∃yRxy , etc. F. Bou (bou@ub.edu) I Más sobre la Verdad Lógica (cont.) Más ejemplos de verdades lógicas son I I Lenguajes de Primer Orden: Semántica Más sobre la Verdad Lógica (cont.) I Otros ejemplos de verdades lógicas que se pueden justificar por la misma razón anterior (ser tautologı́as proposicionales) son (∀x x ≈ c → ∃yPy ) ↔ (¬∀x x ≈ c ∨ ∃yPy ), (Pc → ∀xPx) ∨ (∀xPx → Pc), etc. Ejemplos de verdades lógicas en base a un motivo diferente (porque no son tautologı́as proposicionales) son por ejemplo Versión 20 de mayo de 2009 87 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 88 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Equivalencia Lógica Equivalencia Lógica (cont.) Decimos que dos sentencias de un lenguaje de primer orden son lógicamente equivalentes si son verdaderas en exactamente las mismas estructuras. Y por tanto, también son falsas en exactamente las mismas estructuras. Escribiremos σ ≡ δ para indicar que dichas dos sentencias son lógicamente equivalentes. Es evidente que: i) σ ≡ σ, ii) si σ ≡ δ entonces δ ≡ σ, iii) si σ ≡ δ y δ ≡ γ entonces σ ≡ γ. Es decir, la relación de equivalencia lógica es reflexiva, simétrica y transitiva. Todos los principios de equivalencia lógica válidos en lógica proposicional también valen para la lógica de primer orden. Recordemos que I I I I Introducción a la Lógica II Versión 20 de mayo de 2009 I I I I I I I I I I I 89 / 114 Lenguajes de Primer Orden: Semántica ∀xPx ≡ ∀yPy [Cambio de Variables] ∃xPx ≡ ∃yPy [Cambio de Variables] ¬∀xPx ≡ ∃x¬Px ¬∃xPx ≡ ∀x¬Px ∃xPx ≡ ¬∀x¬Px ∀xPx ≡ ¬∃x¬Px ∀x(Px ∧ Qx) ≡ ∀xPx ∧ ∀xQx ∃x(Px ∨ Qx) ≡ ∃xPx ∨ ∃xQx ... ¬∀x∀yRxy ≡ ∃x∃y ¬Rxy ¬∀x∃yRxy ≡ ∃x∀y ¬Rxy ¬∃x∀yRxy ≡ ∀x∃y ¬Rxy ¬∃x∃yRxy ≡ ∀x∀y ¬Rxy F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 90 / 114 Lenguajes de Primer Orden: Semántica Sustitución de fórmulas lógicamente equivalentes Consecuencia Lógica Decimos que un conjunto Γ de sentencias de una lenguaje de primer orden L es satisfacible si existe una estructura A en la que son verdaderas todas las sentencias de Γ. Propiedad Si en una fórmula sustituimos una subfórmula por una fórmula lógicamente equivalente a ella obtenemos una fórmula lógicamente equivalente a la fórmula inicial. En tal caso, decimos que A satisface Γ, o que A es un modelo de Γ , y escribimos A |= Γ. Y se dice que Γ es insatisfacible si no es satisfacible, es decir, si en toda estructura al menos una sentencia de Γ es falsa. Por ejemplo, ∀x∀y (¬Rxy → ¬Ryx) ≡ ∀x∀y (Rxy ∨ ¬Ryx) ≡ ∀x∀y (¬Ryx ∨ Rxy ) ≡ ∀x∀y (Ryx → Rxy ). ∀x∃y (Py ∨ ¬Rxy ) → ∀xPx ≡ ¬∀x∃y (Py ∨ ¬Rxy ) ∨ ∀xPx ≡ ∃x∀y ¬(Py ∨ ¬Rxy ) ∨ ∀xPx∀x ≡ ∃x∀y (¬Py ∧ Rxy ) ∨ ∀xPx. F. Bou (bou@ub.edu) I I σ ≡ ¬¬σ, σ → δ ≡ ¬σ ∨ δ, σ ∧ δ ≡ ¬(¬σ ∨ ¬δ), σ → δ ≡ ¬(σ ∧ ¬δ), σ ∨ δ ≡ ¬(¬σ ∧ ¬δ), σ ∧ δ ≡ ¬(σ → ¬δ), σ ∨ δ ≡ ¬σ → δ. F. Bou (bou@ub.edu) En virtud de lo dicho en el punto anterior obtenemos muchas equivalencias lógicas, pero tambień hay ejemplos de equivalencias lógicas que no son debidos a motivos proposicionales. Entre estos ejemplos podemos encontrar las siguientes equivalencias lógicas Introducción a la Lógica II Versión 20 de mayo de 2009 Ejemplo: el conjunto formado por las sentencias ∀x(Px ∨ Qx), ∃x(Px ∧ ¬Qx), ∀x(Qx → ∃y (Ryx ∧ Py )) es satisfacible. Para justificarlo podemos considerar la estructura A cuyo universo es {1, 2} y donde P A = {1}, Q A = {2} y R A = {h1, 2i}. 91 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 92 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Consecuencia Lógica (cont.) Consecuencia Lógica (cont.) Ejemplo: el conjunto formado por las sentencias Decimos que una sentencia σ es consecuencia de un conjunto de sentencias Γ si σ es verdadera en toda estructura que satisface Γ. ∃x(Px ∧ Qx), ∀x(Px → Rxx), ∀x(Qx → ¬Rxx) es insatisfacible. Para justificarlo supongamos que hay una estructura A en la que las tres sentencias anteriores son verdaderas. Por la primera de las sentencias debe haber un objeto a en el universo A de forma que a ∈ P A y a ∈ Q A . Por tanto, usando la segunda sentencia sabemos que ha, ai ∈ R A . Y usando la tercera sentencia sabemos que ha, ai 6∈ R A . Obviamente, hemos llegado a una contradicción y por tanto sabemos que no puede suceder que haya una estructura que haga verdadera las tres sentencias anteriores. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 93 / 114 Lenguajes de Primer Orden: Semántica En tal caso, también diremos que el argumento formado por las premisas Γ y la conclusión σ es lógicamente correcto. Escribiremos Γ |= σ para indicar que σ es consecuencia de Γ. Y escribiremos Γ 6|= σ para indicar que σ no es consecuencia de Γ, es decir, que existe una estructura que es modelo de Γ pero no lo es de σ. Escribiremos γ1 , . . . , γn |= σ para indicar que {γ1 , . . . , γn } |= σ. Y escribiremos |= σ para indicar que σ es una verdad lógica. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 94 / 114 Lenguajes de Primer Orden: Semántica Consecuencia Lógica (cont.) Fórmulas con Variables Libres Propiedad Sea Γ un conjunto de sentencias, y sean σ, δ un par de sentencias. Entonces, 1 Γ |= σ sii Γ ∪ {¬σ} es insatisfacible. 2 Γ 6|= σ sii Γ ∪ {¬σ} es satisfacible. 3 Γ |= σ → δ sii Una ecuación del tipo x 2 − 5x + 6 = 0 Γ ∪ {σ} |= δ. Los ejemplos anteriores sobre satisfabilidad justifican que ∀x(Px ∨ Qx), ∀x(Qx → ∃y (Ryx ∧ Py )) 6|= ¬∃x(Px ∧ ¬Qx) y que ∃x(Px ∧ Qx), ∀x(Px → Rxx) |= ¬∀x(Qx → ¬Rxx). Por tanto, usando que ¬∃x(Px ∧ ¬Qx) ≡ ∀x(Px → Qx) y ¬∀x(Qx → ¬Rxx) ≡ ∃x(Qx ∧ Rxx), resulta que también sabemos que ∀x(Px ∨ Qx), ∀x(Qx → ∃y (Ryx ∧ Py )) 6|= ∀x(Px → Qx) y que ∃x(Px ∧ Qx), ∀x(Px → Rxx) |= ∃x(Qx ∧ Rxx). F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 95 / 114 no es ni verdadera ni falsa; todo depende de como interpretemos la variable x. En dicho ejemplo si interpretamos la x como 2 entonces la ecuación es verdadera, si interpretamos la x como 3 entonces la ecuación es verdadera, y si interpretamos la x como un número diferente del 2 y del 3 entonces la ecuación es falsa. Cuando en matemáticas se habla de las soluciones de una ecuación con una incógnita x se piensa precisamente en las formas de interpretar la variable x para que la ecuación sea verdadera. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 96 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Fórmulas con Variables Libres (Cont.) Fórmulas con Variables Libres (Cont.) El caso de los pronombres en el lenguaje natural es parecido al de las variables (o incógnitas) en las matemáticas. La oración él es estudiante de la UB tampoco es ni verdadera ni falsa; todo depede del contexto. En dicho ejemplo si interpretamos el pronombre como yo mismo (i.e., el profesor) entonces la oración es falsa, pero si lo interpretamos como cualquiera de vosotros entonces la oración es verdadera. ¿Cuáles creéis que son las soluciones para dicha oración? Es decir, ¿de qué formas podemos interpretar el pronombre para que la oración sea verdadera? F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 97 / 114 Lenguajes de Primer Orden: Semántica Las fórmulas con exactamente una variable libre (por ejemplo, Px, ∃xRxy , ∃yRyx, Px ∨ ¬Qx, etc.) se comportan análogamente a los ejemplos anteriores de una ecuación (con una incógnita) y de una expresión con pronombres. Dada una fórmula α con una sola variable libre y una estructura A definimos el conjunto de soluciones de α en la estructura A como el conjunto {a ∈ A : α es verdadera en A interpretando la variable libre como a}. Análogamente, podrı́amos considerar soluciones de fórmulas con más de una variable libre (por ejemplo, Px ∧ Qy , Rxy ∧ ¬Ryx, etc.), pero en tal caso en vez de tener un conjunto deberı́amos pensar en relaciones binarias, ternarias, etc dependiendo del número de variables libres que tenga la fórmula. F. Bou (bou@ub.edu) Introducción a la Lógica II Versión 20 de mayo de 2009 Lenguajes de Primer Orden: Semántica Fórmulas con Variables Libres (Cont.) Fórmulas con Variables Libres (Cont.) Un detalle interesante es que si la sentencia ∀xα es verdadera en una estructura A entonces esto significa exactamente que el conjunto de soluciones de la fórmula α (fijémonos que sólo tiene una variable libre) en esa misma estructura es el conjunto A. Por tanto, si la sentencia ∀xα es falsa en una estructura A entonces esto significa exactamente que el conjunto de las soluciones de la fórmula α en esa misma estructura es un conjunto diferente del total. Análogamente, si la sentencia ∃xα es verdadera en una estructura A entonces esto significa exactamente que el conjunto de las soluciones de la fórmula α en esa misma estructura es un conjunto no vacı́o. Por tanto, si la sentencia ∃xα es falsa en una estructura A entonces esto significa exactamente que el conjunto de las soluciones de la fórmula α en esa misma estructura es el conjunto ∅. Ejemplo: Sea A la estructura tal que su dominio es el conjunto A = {1, 2, 3, . . .} de los números naturales, c A es el número 1, P A es el conjunto de los números pares, Q A es el conjunto de los números múltiplos de 3 (i.e., Q A = {3, 6, 9, 12, . . .}), R A es la relación binaria “ser menor estricto que”, y S A es la relación ternaria {ha, b, ci : c = a + b}. Entonces, el conjunto de soluciones de Px es el conjunto P A de los números pares. ¬Px es el conjunto {1, 3, 5, 7, . . .} de los números impares. ∃x∃y (¬Px ∧ ¬Py ∧ Sxyz) es el conjunto {2, 4, 6, 8, . . .} de los números pares. ∃x∃ySxyz es el conjunto A − {1} (i.e., {2, 3, 4, 5, . . .}). Px ∧ ¬Qx es el conjunto {2, 4, 8, 10, 14, 16, . . .} de los números pares que no son múltiplos de 3 (i.e., el conjunto de los números pares que no son múltiplos de 6). Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 98 / 114 Versión 20 de mayo de 2009 99 / 114 F. Bou (bou@ub.edu) Introducción a la Lógica II 100 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Fórmulas con Variables Libres (Cont.) Fórmulas con Variables Libres (Cont.) Ejemplo: Sea A una estructura para el lenguaje de primer orden con dos sı́mbolos de predicado P, Q, y dos sı́mbolos relacionales binarios R y S. Entonces, el conjunto de soluciones de ∃x∃y (Px ∧ Py ∧ Sxyz) es el conjunto {4, 6, 8, . . .} de los números pares excepto el 2. x ≈ c es el conjunto {1}. ¬Px es el conjunto A − P A . ∀y (x ≈ y ∨ Rxy ) es el conjunto {1}. Px ∧ Qx es el conjunto P A ∩ Q A . ∃y (y ≈ c ∧ Syyx) es el conjunto {2}. Px ∨ Qx es el conjunto P A ∪ Q A . ∃y ∃z(y ≈ c ∧ Syyz ∧ Syzx) es el conjunto {3}. ∃yRxy es el conjunto dom(R A ). x ≈ c ∨ ∃y (y ≈ c ∧ Syyx) es el conjunto {1, 2}. ∃yRyx es el conjunto {2, 3, 4, 5, . . .} de los números naturales excepto el 1. ∃y (Ryx ∧ ∀z(y ≈ z ∨ Ryz)) es el conjunto {2, 3, 4, 5, . . .} de todos los números naturales excepto el 1. Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 101 / 114 Lenguajes de Primer Orden: Semántica ∃yRyx es el conjunto rec(R A ). ∃y (Ryx ∨ Rxy ) es el conjunto campo(R A ). ∃y (Rxy ∧ Syz) es la relación binaria R A |S A . ∃y (Rxy ∧ Szy ) es la relación binaria R A | S A . Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II Lenguajes de Primer Orden: Semántica Fórmulas con Variables Libres (Cont.) Fórmulas con Variables Libres (Cont.) Ejemplo: Sea A la estructura tal que su dominio es el conjunto A = {1, 2, 3, 4, 5}, c A es el número 2, P A = {1, 2, 5}, Q A = {3, 5}, R A = {h2, 1i, h2, 5i, h1, 5i, h5, 5i} y S A = {h2, 5i, h5, 2i, h5, 5i}. Entonces, el conjunto de soluciones de Ejemplo: Continuamos considerando la misma estructura, es decir, una A con dominio el conjunto A = {1, 2, 3, 4, 5}, c A es el número 2, P A = {1, 2, 5}, Q A = {3, 5}, R A = {h2, 1i, h2, 5i, h1, 5i, h5, 5i} y S A = {h2, 5i, h5, 2i, h5, 5i}. Entonces, el conjunto de soluciones de ∃yRyx es el conjunto {1, 5}. ∃yRxy es el conjunto {1, 2, 5}. ∃y (Ryx ∧ Syx) es el conjunto {5}. ∃y (Ryx ∨ Syx) es el conjunto {1, 2, 5}. ∀y (Py → Ryx) es el conjunto {5}. ∀y ((Py ∧ Qy ) → ¬Ryx) es el conjunto {1, 2, 3, 4}. ∃y (Py ∧ Syx) es el conjunto {2, 5}. ∃y (Qy ∨ Ryx) es el conjunto {1, 2, 3, 4, 5}. ∀y (∃zRyz → Ryx) es el conjunto {5}. ∀y (∃zSyz → Ryx) es el conjunto {5}. ∀z(Rzx → ∃yRzy ) es el conjunto {1, 2, 3, 4, 5}. ∀z(Rzx → ∃ySzy ) es el conjunto {1, 2, 3, 4}. Px ∧ Qx es el conjunto {5}. Px ∨ Qx es el conjunto {1, 2, 3, 5}. Px ∨ ¬Qx es el conjunto {1, 2, 4, 5}. Px ∧ ¬Qx es el conjunto {1, 2}. ¬Px ∧ ¬Qx es el conjunto {4}. ¬Px ∨ ¬Qx es el conjunto {1, 2, 3, 4}. Px → Qx es el conjunto {3, 4, 5}. Px ↔ Qx es el conjunto {4, 5}. Px → ¬Qx es el conjunto {1, 2, 3, 4}. Px ↔ ¬Qx es el conjunto {1, 2, 3}. Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 102 / 114 103 / 114 Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 104 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Simbolización Simbolización (cont.) Proceso de Simbolización Dado un enunciado (i.e., una oración a la que le podemos asignar un valor de verdad) el proceso para simbolizarlo es el siguiente: 1 Elegimos un lenguaje de primer orden y una estructura para dicho lenguaje de forma que el enunciado describa propiedades de la estructura. 2 Damos una sentencia de dicho lenguaje de primer orden que expresa (en la estructura) lo mismo que el enunciado. Ejemplo: ¿Cómo formalizar el enunciado todo planeta es un satélite?. Tomamos el lenguaje de primer orden que consta de dos sı́mbolos de predicado P, Q. Y consideramos la estructura A = hA, P A , Q A i, donde A es el conjunto de los objetos celestes, P A es el conjunto de los planetas y Q A es el conjunto de los satélites. El enunciado que nos interesa podemos formalizarlo como la sentencia ∀x(Px → Qx). Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 105 / 114 Lenguajes de Primer Orden: Semántica Observamos que los dos ejemplos anteriores los hemos formalizado con la misma sentencia. Por tanto, no se puede hablar del significado de una sentencia (por ejemplo, ∀x(Px → Qx)), puesto que una sentencia admite significados diferentes en estructuras diferentes. Siempre hay que hablar del significado de una sentencia en una estructura. Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 106 / 114 Lenguajes de Primer Orden: Semántica Simbolización (cont.) Simbolización (cont.) En muchas ocasiones es claro cuál es el lenguaje y la estructura a considerar en una formalización. Ası́ pues, y en vista a proceder ágilmente, en los siguientes ejemplos nos limitamos a dar directamente las sentencias que formalizan los siguientes enunciados. Versión 20 de mayo de 2009 Introducción a la Lógica II Algún número es par y primo: ∃x(Px ∧ Qx). Todo número par es primo: ∀x(Px → Qx). La Tierra es un planeta: Pc. La Luna es un planeta: Pd. La Luna es un satélite: Qd. La Tierra gira alrededor del Sol: Rce. Todo planeta gira alrededor del Sol: ∀x(Px → Rxe). Algún planeta gira alrededor del Sol: ∃x(Px ∧ Rxe). Ningún planeta es un satélite: ¬∃x(Px ∧ Qx), o ∀x(Px → ¬Qx). Hay como mucho un planeta: ∀x∀y ((Px ∧ Py ) → x ≈ y ). Hay exactamente un planeta: ∃xPx ∧ ∀x∀y ((Px ∧ Py ) → x ≈ y ). Hay al menos dos planetas: ∃x∃y (Px ∧ Py ∧ ¬x ≈ y ). F. Bou (bou@ub.edu) Ejemplo: ¿Cómo formalizar el enunciado todos los seres humanos son racionales?. Tomamos, como antes, el lenguaje de primer orden que consta de dos sı́mbolos de predicado P, Q. Y consideramos la estructura B = hB, P B , Q B i, donde B es el conjunto de los seres vivientes, P B es el conjunto de los seres humanos y Q B es el conjunto de los seres racionales. El enunciado que nos interesa podemos formalizarlo como ∀x(Px → Qx). Ningún número par es primo: ¬∃x(Px ∧ Qx), o ∀x(Px → ¬Qx). Para cada número hay uno mayor: ∀x∃yRxy . [Asumimos que R se interpreta como la relación ”ser menor que”] Para cada número primo hay un número par mayor: ∀x(Qx → ∃y (Py ∧ Rxy )). Para cada número primo hay un primo mayor: ∀x(Qx → ∃y (Qy ∧ Rxy )). 107 / 114 Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 108 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Simbolización (cont.) Simbolización (cont.) En la lógica tradicional (desde Aristóteles) se han considerado cuatro tipos de enunciados cuantificacionales (la lógica tradicional los llamaba categóricos), que son 1 2 3 4 Universal Afirmativo (Todo P es Q): se formaliza como ∀x(Px → Qx) ¬∃x(Px ∧ ¬Qx), Existencial Afirmativo (Algún P es Q): se formaliza como ∃x(Px ∧ Qx) ¬∀x(Px → ¬Qx), Universal Negativo (Ningún P es Q): se formaliza como ¬∃x(Px ∧ Qx) ∀x(Px → ¬Qx), Existencial Negativo (Algún P no es Q o No todo P es Q): se formaliza como ¬∀x(Px → Qx). ∃x(Px ∧ ¬Qx) Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 109 / 114 Lenguajes de Primer Orden: Semántica Carlos estudia griego y latı́n: Pc ∧ Qc. Carlos y Dora estudian griego, pero Ester estudia latı́n: Pc ∧ Pd ∧ Qe. Ni Carlos ni Dora estudian griego pero ambos estudian latı́n: ¬Pc ∧ ¬Pd ∧ Qc ∧ Qd. Todos las personas que estudian griego estudian latı́n: ∀x(Px → Qx). Algunas personas estudian griego y latı́n: ∃x(Px ∧ Qx). Algunas personas no estudian ni griego ni latı́n: ∃x(¬Px ∧ ¬Qx). Todas las personas estudian griego o latı́n: ∀x(Px ∨ Qx). Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 110 / 114 Lenguajes de Primer Orden: Semántica Simbolización (cont.) Simbolización (cont.) Hay estudiantes de griego que no estudian latı́n: ∃x(Px ∧ ¬Qx). Nadie estudia griego: ¬∃xPx o ∀x¬Px. Nadie estudia griego y nadie estudia latı́n: ¬∃xPx ∧ ¬∃xQx. Nadie estudia griego y latı́n: ¬∃x(Px ∧ Qx). Nadie que estudie griego estudia latı́n: ¬∃x(Px ∧ Qx) o ∀x(Px → ¬Qx). Las personas que no estudian griego tampoco estudian latı́n: ∀x(¬Px → ¬Qx) o ¬∃x(¬Px ∧ Qx). Dora es profesora de las personas que estudian griego: ∀x(Px → Rdx). Los profesores de las personas que estudian griego son profesores de Carlos: ∀x(∃y (Py ∧ Rxy ) → Rxc) o ∀x∀y ((Py ∧ Rxy ) → Rxc). Los profesores de Ester son todos profesores de alguien que estudia latı́n: ∀x(Rxe → ∃y (Rxy ∧ Qy )). Los profesores de Dora y Ester son profesores de Carlos: ∀x((Rxd ∧ Rxe) → Rxc). Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Consideramos el lenguaje de primer orden con dos sı́mbolos de predicado P, Q, un sı́mbolo relacional binario R y tres constantes c, d, e. Interpretémoslo en la estructura cuyo dominio es el conjunto de las personas de modo que la interpretación de P es el conjunto de las personas que estudian griego, la de Q el conjunto de las personas que estudian latı́n y la de R la relación “x es profesor de y” y las constantes c, d, e denotan a Carlos, Dora y Ester, respectivamente. Simbolicemos las oraciones siguientes: Introducción a la Lógica II Carlos y Dora no tienen profesores en común : ¬∃x(Rxc ∧ Rxd). Sólo las personas que estudian griego estudian latı́n: ∀x(Qx → Px). Únicamente los profesores de Dora no son profesores de Ester: ∀x(¬Rxe → Rxd). 111 / 114 Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 112 / 114 Lenguajes de Primer Orden: Semántica Lenguajes de Primer Orden: Semántica Simbolización (cont.) Simbolización (cont.) Consideramos el lenguaje de primer orden con dos sı́mbolos de predicado P, Q, tres sı́mbolos relacionales binario R, S, T y tres constantes c, d, e. Interpretémoslo en la estructura cuyo dominio es el conjunto de las personas de modo que la interpretación de P es el conjunto de los hombres, la de Q el conjunto de las mujeres, la de R la relación “x es progenitor de y”, la de S la relación “x es hermano de y”, la de T la relación “x es antepasado de y” y las constantes c, d, e denotan a Carlos, Dora y Ester, respectivamente. Simbolicemos las oraciones siguientes: Los antepasados de Dora son antepasados de Ester: ∀x(Txd → Txe). Hay quienes tienen hijos y quienes no: ∃x∃yRxy ∧ ∃x¬∃yRxy . Dos personas son hermanas si y sólo si tienen los mismos progenitores: ∀x∀y (Sxy ↔ ∀z(Rzx ↔ Rzy )). Dora es hermana de un hijo de Carlos: Qd ∧ ∃x(Sdx ∧ Rcx ∧ Px). Un progenitor de un antepasado es un antepasado: ∀x∀y ∀z((Rxy ∧ Tyz) → Txz). Los padres son antepasados: ∀x∀y (Rxy → Txy ). Nadie es progenitor de sus hermanos: ¬∃x∃y (Rxy ∧ Sxy ) o ∀x∀y (Rxy → ¬Sxy ). Dora es abuela materna de Ester: Qd ∧ ∃x(Rdx ∧ Qx ∧ Rxe). Ester es bisabuela de Carlos: Qe ∧ ∃x∃y (Rex ∧ Rxy ∧ Ryc). Todo el mundo tiene abuelos: ∀x∃y ∃z(Ryz ∧ Rzx). Todo el mundo tiene bisabuelos: ∀x∃y ∃z∃u(Ryz ∧ Rzu ∧ Rux). Dora es madre de Ester: Qd ∧ Rde. Dora es tı́a de Carlos: Qd ∧ ∃x(Sdx ∧ Rxc). Carlos es abuelo de Dora: Pc ∧ ∃x(Rcx ∧ Rxd). Dora es nieta de Carlos: Qd ∧ ∃x(Rxd ∧ Rcx). Todo el mundo tiene padre: ∀x∃y (Py ∧ Ryx). Todo el mundo tiene dos progenitores: ∀x∃y ∃z(Ryx ∧ Rzx ∧ y 6≈ z). Nadie es progenitor de si mismo: ¬∃xRxx o ∀x¬Rxx. Algunos no tienen hermanos: ∃x¬∃ySxy o ∃x∀y ¬Sxy . Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 113 / 114 Versión 20 de mayo de 2009 F. Bou (bou@ub.edu) Introducción a la Lógica II 114 / 114