Lógica y Computación Modelización de Sistemas de Creencias LÓGICA: MODELIZACIÓN DE SISTEMAS DE CREENCIAS Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 1 Lógica y Computación Modelización de Sistemas de Creencias LAS CREENCIAS COMO GENERADORES DE CONDUCTA • En último término, la respuesta que un sistema genera ante los estímulos de su entorno dependen de lo que sabe acerca de él • Creencia: Lo que el sistema sabe: • Relatividad de las creencias respecto al sistema que las posee • Interdependencia o sistematicidad de las creencias: Sostener una creencia puede obligar a sostener o rechazar otras creencias • Consistencia del sistema de creencias: El conjunto de creencias debe ser consistente • A la Psicología le interesa: • El contenido de las creencias: En gran medida, el análisis de ese contenido debe ser proporcionado por las Ciencias Sociales (Antropología, Sociología) • La estructura y propiedades globales de los sistemas de creencias: Lógica Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 2 Lógica y Computación Modelización de Sistemas de Creencias MODELIZACIÓN MATEMÁTICA DE LOS SISTEMAS DE CREENCIAS • Modelización lógica de los sistemas de creencias: modelización matemática de las relaciones entre creencias como inferencias • Inferencia : Obtención de unas creencias a partir de otras • Tipos de inferencia: • Inferencia deductiva o deducción: Obtención de creencias a partir de otra disponible en la que la primera se encuentra implícita • Inferencia no-deductiva: • • • • Inferencia inductiva Inferencia estadística o probabilística Inferencia borrosa (fuzzy) ... • La Lógica es una teoría matemática de la inferencia deductiva Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 3 Lógica y Computación Teoría Lógica NATURALEZA DE LA TEORÍA LÓGICA • Teoría formal (= matemática) • Teoría matemática cualitativa (algebraica) • Surge inicialmente como análisis del razonamiento natural (expresado en el lenguaje natural) • Progresiva introducción de elementos formales • Actualmente, teoría plenamente matemática, con diversas aplicaciones: • • • • • Matemáticas Ciencias de la Computación (Informática) Lingüística Modelización psicológica Inteligencia Artificial • Cuatro partes: • • • • Teoría de la demostración (matemática) Teoría de modelos (Semántica formal) Teoría de la Recursión (Computabilidad) Teoría de Conjuntos Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 4 Lógica y Computación Teoría Lógica DESARROLLO DE LA TEORÍA LÓGICA (1) Filosofía • Aristóteles. • Estoicos. - Escolástica. - Abelardo Alberto Magno - Realistas Tomás de Aquino - Nominalistas: Ockham • Leibniz • Lambert Matematización • Hamilton Algebra de la Lógica • de Morgan • Boole Crisis de Fundamentos • Cantor • Frege Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 5 Lógica y Computación Teoría Lógica DESARROLLO DE LA TEORÍA LÓGICA (1) Lógica Matemática Clásica • Bertrand Russell y A. Whitehead (Principia Mathematica) • Herbrand, Gentzen • Hilbert Teoremas de Limitación • Gödel Lógicas no-clásicas • Lukasiewicz • Kripke • Prior Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 6 Lógica y Computación Teoría Lógica LA LÓGICA CONTEMPORÁNEA Lógica de n-orden Lógica de 2º Orden Lógica de 1er Orden Lógica de Predicados o Cuantificacional Lógica de Enunciados o Proposicional • Verdad • Lógica Clásica • Falsedad Lógica • No Bivalentes • Lógica no-Clásica • • • • • • Más Recursos • Expresivos • • • Lógica Trivalente Lógicas Polivalentes Lógicas Probabilísticas Lógicas Difusas Lógica Modal Lógica Temporal Lógica Epistémica Lógica Deóntica Lógica Nomonotónica Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 7 Lógica y Computación Teoría Lógica CÁLCULOS LÓGICOS Teoría de la Demostración Axiomas Derivación Teoremas Teoría de Modelos Interpretación Fórmulas Lógicamente Válidas Presentaciones “sintácticas”: “Teoría de la Demostración” Varios sistemas: • Sistemas de tipo Hilbert: - Sistemas Axiomáticos: Ö Estudio de las propiedades metalógicas Ö Axiomas y teoremas • Sistemas de tipo Gentzen: - Cálculo de Deducción Natural: Ö Estudio de los procesos “naturales” de inferencia. Deducción a partir de supuestos - Arboles Lógicos (como cálculo) Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 8 Lógica y Computación Lógica de Enunciados LÓGICA CLÁSICA LÓGICA DE ENUNCIADOS (Introducción ) Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 9 Lógica y Computación Lógica de Enunciados EL LENGUAJE DE ENUNCIADOS (Le) Símbolos de Le 1. Variables enunciativas p, q, r, s, ... p1, p2, p3, ... 2. Operadores enunciativos (conectores o juntores) Símbolo ¬ Símbolo ∧ ∨ Monádicos (unarios) Se lee Nombre no... Negador Diádicos (Binarios) Se lee Nombre ...y... Conjuntor ...o... → si...,entonces... ↔ ... equivale a ... ... si, y sólo si ... Disyuntor Condicional Implicador Material Equivaledor Bicondicional 3. Símbolos Auxiliares - ) , ( Paréntesis. - ] , [ Llaves. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 10 Lógica y Computación Lógica de Enunciados (Def.) Expresión de Le: Cualquier secuencia finita de símbolos de Le (Def.) Lenguaje-objeto y Metalenguaje En lógica no puede haber ambigüedades y a menudo para hablar de la notación que usamos en el cálculo necesitamos otra notación de nivel superior, para evitar equívocos. A esa notación superior que habla de la del cálculo que estamos usando lo denominamos Metalenguaje y lenguaje-objeto a la que es referida por el metalenguaje. Esta distinción es fundamental a la hora de analizar las propiedades de los cálculos lógicos. Tarea de la que se encarga la Metalógica (Def.) Metavariable En concreto aquí X e Y son metavariables, es decir variables que pueden sustituirse por cualquier fórmula del cálculo del que hablamos, en este caso del cálculo proposicional. Así por ejemplo, X puede ser p, ó ¬q ó p∧ ∧q ó (p ∨ ¬q)→ → r, etc. Símbolo que utilizamos para referirnos a una fórmula cualquiera: X, Y, Z, ... X1 , X2 , X3 , ... Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 11 Lógica y Computación Lógica de Enunciados (Def.) Fórmula de Le. Reglas de Formación de fórmulas 1. Una variable enunciativa sola es una Fórmula Bien Formada, fbf (fbf atómica), de Le: p, q, p3, r, s15 2. Si A es una fbf , también lo es ¬A. (negación) 3. Si A y B son fbfs, también lo serán; A∧B A∨B A→B A↔B Conjunción Disyunción Condicional o Implicación Material. Equivalencia. (Fbfs. Moleculares) (Def.) Subfórmula 1. A es una subfórmula de ¬A 2. A y B son subfórmulas de: A∧B A∨B A →B A ↔B Cada parte se denomina: Primer y/o segundo miembro. (Conjunción y disyunción) Antecedente y/o consecuente (Condicional y bicondicional) Si A es una subfórmula de B y B es una subfórmula de C, entonces A es una subfórmula de C Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 12 Lógica y Computación Lógica de Enunciados (Def.) Decidibilidad de un conjunto: Un conjunto es decidible si existe un método algorítmico para averiguar, para cualquier objeto x, si x∈ ∈A, o si x∉ ∉A. (Teorema) El conjunto de las fbfs. de Le es decidible: Para cualquier expresión, podemos averiguar (mediante un árbol de formación de fórmulas) si es una fbf. El Operador principal o conectiva principal de una fórmula es el último que entra en su composición y el que determina la estructura lógica de la fórmula. D. Construcción de un árbol de formación de fórmulas (ejemplo) ¬(A ∧ B) → (C ∨ (A ∧ B)) ¬(A ∧ B) A∧B A B (C ∨ (A ∧ B)) C A∧B A Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia B 13 Lógica y Computación Sistemas Axiomáticos LA LÓGICA DE PROPOSICIONES COMO SISTEMA AXIOMÁTICA: EL SISTEMA PM. TEORÍA: Conjunto de proposiciones verdaderas relativo a un determinado campo de problemas AXIOMATIZAR UNA TEORÍA: Organizar ese conjunto de proposiciones de tal forma que, partiendo de algunos de sus miembros, denominados AXIOMAS, y mediante la aplicación de una serie de REGLAS DE TRANSFORMACIÓN, se pueden derivar todos los restantes enunciados de la teoría, a los que llamamos TEOREMAS. AXIOMAS: proposiciones aceptadas como verdaderas por su autoevidencia, postulados. Conviene que el conjunto seleccionado sea independiente, es decir, que no pueda derivarse ninguno de los axiomas a partir del resto del conjunto. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 14 Lógica y Computación Sistemas Axiomáticos EL SISTEMA PM (Principia Mathematica. Russell y Whitehead, 1910-1913) Vocabulario: El mismo que el del sistema de deducción natural. (Sólo se admiten como conectivas ¬, ∨) Símbolos definidos: (∧ ∧) X ∧ Y =def ¬(¬ ¬X ∨ ¬Y) (→ →) X → Y=def ¬X ∨ Y (↔ ↔) X ↔Y =def ¬[ ¬(¬ ¬X ∨ Y) ∨ ¬(¬ ¬Y ∨ X)] Reglas de Formación: Cómo en el sistema de deducción natural Reglas de Transformación: RT1. Regla de Sustitución: Dada una Tesis del sistema (Fórmula verdadera del cálculo), en la que aparecen variables enunciativas, el resultado de sustituir una, algunas o todas esas variables por fbfs del cálculo será también una tesis del cálculo. Con la única restricción de que cada variable ha de ser sustituida siempre que aparece, y siempre por el mismo sustituto. RT2. Modus Ponens: Si ‘X’ es una tesis del sistema y ‘X→ →Y’ también lo es, entonces ‘Y’ es una tesis del sistema. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 15 Lógica y Computación Sistemas Axiomáticos Axiomas A1. (p ∨ p) → p A2. q → (p ∨ q) A3. (p ∨ q) → (q ∨ p) A4. (p ∨ (q ∨ r)) → (q ∨ (p ∨ r)) A5. (q → r) → ((p ∨ q) → (p ∨ r)) Ejemplo de Pruebas. T1. p → (p ∨ p) 1. q → (p ∨ q) 2. p → (p ∨ p) A2 RT1[q/p], 1. T2. (p → (q → r)) → (q →(p → r)) 1. (p ∨ (q ∨ r)) → (q ∨ (p ∨ r)) A4 2. (¬ ¬p ∨ (q ∨ r)) → (¬ ¬q ∨ (¬ ¬p ∨ r)) RT1[p/¬ ¬p, q/¬ ¬q], 1. 3. (p → (q → r)) → (q →(p → r)) Def. Condicional 2. T3. (q → r) → ((p → q) → (p → r)) 1. (q → r) → ((p ∨ q) → (p ∨ r)) A5 2. (q → r) → ((¬ ¬p ∨ q) → (¬ ¬p ∨ r)) RT1[p/¬ ¬p], 1. 3. (q → r) → ((p → q) → (p → r)) Def. Condicional 2. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 16 Lógica y Computación Sistemas Axiomáticos El Sistema Formal de la Aritmética (Peano, 1891) Términos Primitivos: N, 1, m es el sucesor de n. Axiomas: (1) 1 es un número natural, 1 ∈ N. (2) 1 no es el sucesor de ningún número natural (3) Para todo número natural n, hay exactamente un número natural m tal que m es el sucesor de n. (4) Si m es el sucesor de n, y m es también el sucesor de K, entonces n = k. (5) (Principio de Inducción). Si A es un subconjunto del conjunto N tal que. (i) 1∈A (ii) Para todo número natural n: si n ∈ A y m es el sucesor de n, entonces m ∈ A. Entonces todo número natural está en A, es decir, A = N. Definición Inductiva de la Adición: Si n’ = el sucesor de n, entonces 1) n + 1 = n’, para todo n ∈ N 2) n + m’ = (n + m)’, para todo n, m ∈ N. Definición Inductiva de la Multiplicación: 3) n . 1 = n, para todo n ∈ N 4) n. m’ = (n.m) + n, para todo n, m ∈ N. Definición de la relación Ser Menor 5) m < n sii existe un número natural k, tal que m + k = n. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 17 Lógica y Computación Inducción Matemática INDUCCIÓN MATEMÁTICA Principio de Inducción Matemática (Reformulación) Si W es una propiedad definida sobre el conjunto N de los números naturales tal que: 1. W(1), 1 tiene la propiedad 2. para todo número natural n: si W(n), entonces W(n + 1), entonces todo número natural tiene la propiedad W Explicación Intuitiva y Uso: De acuerdo con este principio resulta posible probar con caracter general cualquier proposición referente a números naturales si se prueba: 1. Que esa proposición vale para el número 1; y 2. Que si por hipótesis esa proposición vale para cualquier número n, entonces vale para n + 1. A la primera parte de una prueba semejante se le llama BASE, y a la segunda PASO DE LA INDUCCIÓN. Una vez establecida la base y el paso de la inducción, queda establecida la proposición general. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 18 Lógica y Computación Inducción Matemática El campo normal de aplicación del principio de inducción matemática es el universo de los números naturales. pero como las fórmulas de la lógica elemental tienen una estructura finita, es posible expresar esa estructura en números naturales mediante funciones tales como el Grado Lógico de una Fórmula. Cuando el principio de Inducción Matemática se aplica a números naturales que son medida de fórmulas lógicas, se le llama PRINCIPIO DE INDUCCIÓN SEMIÓTICA Así, si se muestra que una propiedad le corresponde a fórmulas de grado cero, y se muestra también que se corresponde a fórmulas de grado n, corresponde así mismo a las de grado n + 1, entones queda probado que esa propiedad corresponde a toda fórmula. INDUCCIÓN DEDUCTIVA (Curry-Feys) La inducción deductiva consiste en mostrar que todas las consecuencias de ciertos enunciados básicos tienen una propiedad mostrando que: 1. Que los enunciados básicos tienen esa propiedad 2. Que si las premisas de una regla tienen la propiedad, también la tiene la conclusión. La demostración por inducción es un ejemplo de demostración metateórica constructiva, ya que permite comprobar “efectivamente” el resultado en cada caso particular. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 19 Lógica y Computación Semántica de Lp SEMÁNTICA DE Lp • Ningún lenguaje lo es realmente hasta que no se establece su semántica, esto es, aquello de lo que el lenguaje habla • El lenguaje proposicional “habla de” (se refiere a) un mundo o universo que contiene sólo dos objetos, “lo verdadero” (T) y “lo falso” (⊥ ⊥): Up= {T,⊥ ⊥} • Habitualmente, T y ⊥ son denominados “valores de verdad” • La relación semántica básica entre el lenguaje (Lp) y el universo del que el lenguaje habla es la de “valoración veritativa” • Una valoración veritativa sobre Lp es una aplicación que asigna a cada fórmula A de Lp un valor de verdad, esto es, uno de los dos elementos del conjunto {T , ⊥} de valores de verdad: σ : Lp → {T, ⊥} • Sea Aσ el valor de verdad que σ asigna a A. Lo leeremos como ‘‘el valor de A bajo σ" • σ es la función semántica que a cada fórmula de Lp hace corresponder “aquello de lo que esa fórmula habla” • De toda lógica que utilice una valoración veritativa de este tipo diremos que se trata de una lógica bivalente. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 20 Lógica y Computación Semántica de Lp VALORACIONES BOOLEANAS • Una valoración veritativa es una valoración booleana sii esa función de valoración es tal que: 1. ¬ Aσ = Tsii Aσ = ⊥. En otro caso, ¬ Aσ = ⊥. 2. (A ∧ B)σ = T sii Aσ = T y Bσ =T. En otro caso, (A ∧ B)= ⊥ 3. (A ∨ B)σ = T sii Aσ = T o Bσ =T. En otro caso, (A ∨ B) = ⊥ 4. (A → B)σ = T sii Aσ = ⊥ o Bσ = T. En otro caso, (A →B) =⊥ ⊥ 5. (A ↔ B)σ = T sii Aσ = Bσ. En otro caso, (A ↔B) =⊥ ⊥ • El valor de verdad que una valoración asigna a una fórmula molecular depende del valor asignado a las subfórmulas de esa fórmula molecular, y en último término a las fórmulas atómicas. • Valoración atómica: la función que asigna un valor de verdad a cada fórmula atómica. Suponemos que cada fbf atómica posee un valor de verdad, cualquiera que sea éste. • Puesto que consideramos dos valores de verdad , para n fórmulas atómicas distintas habrá 2n valoraciones atómicas posibles. Así: • para 2 variables 22=4 • para 3 variables 23=8 • para 4 variables 24=16 • étc. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 21 Lógica y Computación Semántica de Lp FUNCIONES VERITATIVAS • De la definición de valoración booleana se sigue que cada conectivas de Lp puede considerarse como un “funtor” o "conector" esto es, como un nombre de una función veritativa, es decir, como el nombre de una función cuyos argumentos son n-tuplas de valores de verdad, y cuyos valores son valores de verdad. Por ejemplo: T∧T=T T∨T=T T→T=T T∧⊥=⊥ ⊥∨⊥=⊥ T→⊥=⊥ • Cuando la función veritativa sólo tiene un argumento, decimos que se trata de un funtor monádico; si tiene dos, será diádico; si tiene tres, triádico, etc. • Existen - 22 = 4 funciones veritativas monádicas distintas, - (22)2 = 16 funciones veritativas diádicas distintas, - ((22)2)2 = 256 triádicas, etc. • Una tabla de verdad es una definición tabular de cada conectiva considerada como función verítativa. • Construimos cada tabla de la siguiente forma (siendo Cni la i-ésima conectiva n-ádica): 1 2 ... 2n Valores de los argumentos de Cni Valor de arg1 ... Valor de argn Valor de arg1 ... Valor de argn ... ... ... Valor de arg1 ... Valor de argn Valores de Cni Valor Valor ... Valor • La tabla tendrá 2n filas y n+1 columnas. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 22 Lógica y Computación Semántica de Lp • Las tablas definitorias de las conectivas, consideradas como nombres de funciones veritativas, establecen a qué nos estamos refiriendo cuando utilizamos esas conectivas, esto es, establecen su “significado”. Ejemplo: Consideremos la siguiente fórmula (A ∧ B) → C • Cómo la fórmula tiene tres variables, el número de filas de la tabla será 23 = 8 • Desplegándola sistemáticamente el resultado de la tabla de verdad para toda combinación posible de valores de verdad sería: A T T T T ⊥ ⊥ ⊥ ⊥ B T T ⊥ ⊥ T T ⊥ ⊥ A∧B T T ⊥ ⊥ ⊥ ⊥ ⊥ ⊥ C T ⊥ T ⊥ T ⊥ T ⊥ (A ∧ B) → C T ⊥ T T T T T T Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 23 Lógica y Computación Semántica de Lp DEFINICION TABULAR DE LAS FUNCIONES VERITATI VAS • Podemos proceder a definir las funciones veritativas monádicas mediante la siguiente tabla: Valores posibles del argumento T ⊥ M1 T T Valores para las conectivas de las conectivas monádicas M2 M3 T ⊥ T ⊥ M4 ⊥ ⊥ • Para dos valores de verdad estas son las cuatro conectivas monádicas posibles: • M1 es la función que ante lo verdadero devuelve lo verdadero y lo falso lo hace verdadero. • M2 deja los argumentos como están. • M3 invierte los valores de entrada. Lo verdadero lo convierte en falso y lo falso lo convierte en verdadero. • M4 transforma lo verdadero en falso y lo falso lo deja como está. • ¿De estas cuatro conectivas cuál interesa a la lógica? • M3 es precisamente la función veritativa a la que hemos dado el nombre de “negador". Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 24 Lógica y Computación Semántica de Lp DEFINICION TABULAR DE LAS FUNCIONES VERITATIVAS (Cont.) • Asimismo, podemos definir mediante tablas las funciones veritativas diádicas: Combinación de Valores para dos argumentos T T ⊥ ⊥ T ⊥ T ⊥ Valores de las correspondientes fórmulas moleculares D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15 D16 T T T T T T T ⊥ T T ⊥ T T T ⊥ ⊥ T ⊥ T T T ⊥ T ⊥ T ⊥ ⊥ T T ⊥ ⊥ ⊥ ⊥ T T T ⊥ T T ⊥ ⊥ T ⊥ T ⊥ T ⊥ ⊥ ⊥ ⊥ T T ⊥ ⊥ T ⊥ ⊥ ⊥ ⊥ T ⊥ ⊥ ⊥ ⊥ • De las 16 conectivas diádicas posibles ¿cuáles pueden interesar a los cálculos lógicos por sus características semánticas? • D2 es la Disyunción, ∨ • D5 es el Condicional, → • D7 es el Bicondicional, ↔ • D8 es la Conjunción, ∧ • Aunque algunos cálculos pueden usar otras conectivas, por ejemplo: • D9 se conoce como "función barra de Sheffer" o "negación alternativa" [p | q] y la podemos utilizar para definir todas la conectivas diádicas en función de ésta. • D15 se conoce como "función flecha" o "negación conjunta" [p ↓ q] y tiene las mismas características que la barra de Sheffer. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 25 Lógica y Computación Semántica de Lp TAUTOLOGICIDAD Y CONSECUENCIA • Nos interesan en especial aquellas fórmulas de Lp que expresan inferencias (relaciones de consecuencia) válidas. • Para recoger esta idea, introducimos las siguientes definiciones básicas: • Una valoración veritativa σ sobre Lp satisface un conjunto de fórmulas Γ de Lp (σ σ╞ Γ) sii, para toda fórmula A de Γ, Aσ=T. • Si Γ sólo tiene una fórmula A, escribimos σ╞ A en vez de σ╞ {A}. • A es una tautología (es decir, una fórmula proposicionalmente válida) sii, σ╞ A, para toda valoración σ. • Si A es una tautologia, escribimos ╞ A. • Una fbf B de Lp es una consecuencia tautológica de un conjunto Γ de fbfs de Lp (F╞ B) sii, para todo σ, si σ╞ Γ, entonces σ╞ B • Si Γ = ∅ (conjunto vacío), escribimos simplemente ╞ B. • Dos fórmulas A y B son tautológicamente equivalentes sii Aσ = Bσ, para todo σ; es decir, sii A╞ B y B╞ A. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 26 Lógica y Computación Semántica de Lp OTROS TEOREMAS SEMÁNTICOS DE Lp • Si Aσ = T y (A →B) σ = T , entonces Bσ = T • Si ╞ A y ╞ (A → B),entonces ╞ B. • A╞ B sii ╞ (A → B) • (Principio de Monotonía) Si Γ╞ A, entonces Γ∪∆╞ A. • Si Γ╞ A y A╞ B, entonces Γ╞ B. • Si Γ╞ A y Γ╞ A → B, entonces Γ╞ B. • Si ╞ A, entonces Γ╞ A. • Teorema semántico de interpolación para Lp. Si ╞ A→ →B, y A y B tienen al menos una variable enunciativa en común, entonces, existe una fórmula C, fórmula de interpolación, tal que todas sus variables enunciativas aparecen tanto en A como en B, de forma que se cumple: ╞ A→ →C y ╞ C→ →B Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 27 Lógica y Computación Semántica de Lp Teorema de Interpolación para Lp [Ejemplo de prueba semántica metateorética por inducción] Teorema: Si ╞ A→ →B, y A y B tienen al menos una variable enunciativa en común, entonces, existe una fórmula C, fórmula de interpolación, tal que todas sus variables enunciativas aparecen tanto en A como en B, de forma que se cumple: ╞ A→ →C y ╞ C→ →B Demostración: Por inducción sobre el número de variables enunciativas, n, que aparecen en A, pero no en B. Base: n = 0, Entonces todos los símbolos enunciativos de A aparecen en B. Entonces C puede ser A. Tomemos a A como fórmula de interpolación, se cumple: ╞ A → A y ╞ A → B Paso: Hipótesis Inductiva. El teorema se cumple siempre que hay n>0 variables enunciativas en A que no están en B Sea n= n+1 variables enunciativas en A que no están en B Sea A una fórmula tal que: • ╞A→B • A contiene n + 1 variables enunciativas que no están en B. Sea p una de tales variables Como ╞ A → B, (A → B)σ = T tanto para pσ = T como pσ = ⊥ Sea q una variable que aparece tanto en A como en B Sea A1 el resultado de sustituir en A p por q → q, como ╞ q → q, entonces pσ = T. Sea A2 el resultado de sustituir en A p por ¬( q → q), para tal caso pσ = ⊥. Obviamente ╞ A1 → A y ╞ A2 → B Por tabla de verdad tenemos que ╞ (¬ ¬A1 → A2 ) → B Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 28 Lógica y Computación Semántica de Lp Demostración: Si no fuera así - (¬ ¬A1 → A2 ) σ = T y Bσ= ⊥, pero si Bσ= ⊥, entonces A1σ y A2σ= ⊥ ya que ╞ A1 → A y ╞ A2 → B, pero - Si A1σ y A2σ= ⊥ entonces (¬ ¬A1 → A2 ) σ no puede ser T ya que (T → ⊥) σ ≠ T . Luego Como la fórmula (¬ ¬A1 → A2 ) → B tiene n variables enunciativas de las que están en A, pero no en B, ya que hemos quitado p, por la Hipótesis Inductiva existe alguna fórmula C que sólo contiene variables enunciativas que aparecen tanto en ¬A1 → A2 como en B de forma que (¬ ¬A1 → A2) → C y C →B De ahí se sigue, por tabla de verdad que ╞ A → C, demostrando que ((¬ ¬A1 → A2) → C) ∧ (C →B)) → (A → C) es una tautología Demostración: Si no lo fuera i) ((¬ ¬A1 → A2) → C) ∧ (C →B)) σ = T y ii) (A → C) σ= ⊥ Para ii) Aσ= T y Cσ= ⊥ Para i) ((¬ ¬A1 → A2) → C) σ = T y (C →B) σ = T para ((¬ ¬A1 → A2) → C) σ = T, entonces como Cσ= ⊥, (¬A1 → A2 ) σ = ⊥ . y, en consecuencia, tanto A1σ = ⊥ y A2σ= ⊥. Pero de nuestras definiciones de A1 y de A2 , se sigue que, si Aσ= T, o bien A1 o bien A2 deben tener también el valor T. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 29 Lógica y Computación Semántica de L SEMÁNTICA PARA LA LÓGICA DE PREDICADOS. DEFINICIÓN SEMÁNTICA BÁSICA .(SEMANTICA PARA L) • Mediante σ definimos lo que significa ser verdadero para una fbf de L. (Def.) Valoración σ en L Sea U un conjunto no-vacío (universo o dominio de discurso). Entonces: (1) Para todo t ∈ L: tσ ∈ U (2) Para todo P ∈ L: P es una relación definida sobre U, de forma que: (Pt1, ..., tn)σ = T sii <t1σ, ..., tnσ > ∈ Pσ ⊥ , en otro caso (3) Para toda L-fórmula A y variable u (∀ ∀v A)σ = (∃ ∃v A)σ = T sii Aσ(v/u) = T para todo u ∈ U ⊥ , en otro caso T sii Aσ(v/u) = T para algún u ∈ U ⊥ , en otro caso • σ(v/u) es una valoración que coincide en todo con σ excepto quizás en el objeto u atribuido a v. Es decir, en el objeto del universo de discurso atribuido a la variable. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 30 Lógica y Computación Semántica de L • Se mantienen todas las definiciones semánticas básicas (valoraciones booleanas) de la Lógica de Enunciados: • En vez de tautologías, lógicamente válidas hablaremos de fórmulas • (Def.) A es satisfacible sii, σ╞ A , para alguna valoración σ (Teorema) Todas las tautologías son fórmulas lógicamente verdaderas, pero no a la inversa. (Teorema) Todos los teoremas de Lp son teoremas de L en la lógica cuantificacional. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 31 Lógica y Computación Metalógica METALÓGICA (Introducción) Una cuestión fundamental en lógica es estudiar las relaciones entre las estructuras sintácticas y sus interpretaciones semánticas que se establecen en los cálculos. Este estudio nos dará una visión de la utilidad del cálculo como herramienta deductiva. Imaginemos que queremos formalizar una teoría científica, por ejemplo la Matemática, y que para ello tenemos que elegir un mecanismo deductivo que desarrolle toda la teoría. ¿Qué le pediríamos al cálculo deductivo a emplear? A simple vista parecería importante que: 1. Todo lo que se derivase en el cálculo fuera una verdad lógica. 2. Toda verdad pudiera derivarse en el cálculo 3. Ante cualquier fórmula que pueda construirse pudiera determinarse si es o no verdadera. Dicho de otra manera, si denominamos teoremas lógicos (TL) a lo que se deduce en un cálculo y fórmulas lógicamente verdaderas (FLV) a las que quedan satisfechas por cualesquiera interpretación, un cálculo será de interés si TL ⊆ FLV por un lado, y por el otro si TL FLV FLV ⊆ TL. Es decir, que el conjunto de teoremas lógicos sea un subconjunto propio de las fórmulas lógicamente Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 32 Lógica y Computación Metalógica verdadera y viceversa, o lo que es lo mismo que en la intersección de estos dos conjuntos queden todos los elementos de los conjuntos. Pues bien, la disciplina que estudia a los cálculos lógicos se denomina Metalógica y las propiedades importantes que pretende establecer para estos cálculos son: a) Consistencia: Un cálculo es consistente si toda fórmula que se deriva en el cálculo es una verdad lógica. Formalmente el teorema de consistencia se expresa de la siguiente forma: Si ├ A, entonces ╞ A. O si lo consideramos como consecuencia de un conjunto de hipótesis: Si Γ├ A, entonces Γ╞ A. b) Completud: Un cálculo es completo si toda verdad lógica puede deducirse en el cálculo. El teorema se expresa formalmente de la siguiente manera: Si ╞ A, entonces├ A. O si lo consideramos como consecuencia de un conjunto de hipótesis: Si Γ╞ A, entonces Γ├ A. Como vemos el teorema de completud es lo inverso de la consistencia y en ambos se establece la equivalencia entre la sintaxis y la semántica de un cálculo lógico. c) Decidibilidad: Finalmente la tercera propiedad de interés es la decidibilidad. Diremos que un cálculo es decidible si existe un procedimiento finito que permite decidir si una fórmula o deducción es demostrable en el cálculo. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 33 Lógica y Computación Metalógica En 1930 KURT GÖDEL probó el Teorema de Completud para el cálculo lógico de 1er orden. Pero en 1931, estableció un resultado absolutamente sorprendente y de graves consecuencias para la ciencia y la racionalidad en general, el Teorema de Incompletud, que expresaba: i) Todos los sistemas formales de la matemática clásica son incompletos, es decir, puede construirse una sentencia indecidible, tal que ni ella ni su negación son deducibles. Y la incompletud es irremediable. ii) Es imposible probar la consistencia de un sistema formal de la matemática clásica usando todos los recursos y razonamientos incorporados al sistema, es decir dentro del mismo. oooOooo La prueba de Completud de Gödel de 1930 para la lógica de 1er orden demuestra la completud en sentido débil: • Un sistema de lógica es completo sii todas las fórmulas válidas bien formadas son teoremas del sistema. La Completud en sentido fuerte (E. L. Post) expresaría que un sistema de lógica es completo sii para cualquier fórmula bien formada A del sistema, o bien A es un teorema, o el sistema se convierte en incosistente si se le añade, sin cambio, A como axioma. En este sentido la lógica proposicional es completa, pero no la lógica de 1er orden. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 34 Lógica y Computación Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia Metalógica 35 Lógica y Computación Metalógica de Lp METALÓGICA DE ENUNCIADOS CONSISTENCIA La prueba de consistencia de la lógica de enunciados se basa en la siguiente estrategia: (1) Determinar una propiedad que “inmunice” contra la contradicción, y (2) Demostrar a continuación que esa propiedad pertenece a toda fórmula del sistema, tanto a los axiomas, como a los teoremas. La propiedad en cuestión es la tautologicidad, pues una contradicción es justo la negación de una tautología. CONSISTENCIA SEMÁNTICA Teorema 1: Si Γ├ A, entonces Γ╞ A Demostración: Sea B1,...,Bn una deducción de A a partir de Γ. Luego Bn = A. Por inducción sobre k = 1,...,n mostraremos que Γ╞ Bn . Así, para k = n tenemos Γ╞ A. i) Si Bk es un axioma, entonces Bk es una tautología. Luego Bk es satisfecho por cualquier valoración veritativa y, por tanto, es una consecuencia tautológica de cualquier conjunto de fórmulas. ii) si Bk ∈ Γ, entonces evidentemente Γ╞ Bk Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 36 Lógica y Computación Metalógica de Lp Si para algún i, j < k, tenemos Bj = Bi → Bk , entonces iii) Bi, Bj╞ Bk, concretamente Bi, Bj → Bk╞ Bk .Por la hipótesis inductiva Γ╞ Bi y Γ╞ Bj luego Γ╞ Bk CONSISTENCIA SINTÁCTICA Definición: Un conjunto Γ de fórmulas es enunciativamente inconsistente (E-inconsistente) si, para algún B, se da tanto Γ├ B como Γ├ ¬B. En otro caso Γ es E-consistente. Teorema: Ninguna valoración de verdad satisface un conjunto inconsistente de fórmulas. Demostración: Sea Γ├ B y Γ├ ¬B. Si σ ╞ Γ entonces σ╞ B y σ ╞ ¬B, lo que es imposible. Teorema: (Consistencia Absoluta): Un conjunto de fórmulas es E-inconsistente sii Γ├ A , para toda fórmula A. Teorema: Para cualquier Γ y A: i) Γ, ¬A es E-inconsistente sii Γ├ A ii) Γ, A es E-inconsistente sii Γ ├ ¬A Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 37 Lógica y Computación Metalógica de Lp COMPLETUD (Prueba de Kalmar 1934-35) Esta prueba se basa en la previa demostración de un lema por el que se establece una relación entre el concepto semántico de atribución veritativa y el concepto sintáctico de deducibilidad. Lo que se pretende mostrar es que cada una de las líneas que componen una tabla de verdad puede considerarse una deducción, cuyas premisas son las variables enunciativas de que consta la fórmula que se analiza en la tabla y cuya conclusión sería la fórmula misma. Basta con escribir en cada caso en lugar de T la letra o fórmula así interpretada, y su negación si su valor es ⊥. Lema: Sea A una combinación de B1...Bk mediante conectivas de Lp. Consideremos una columna de una tabla de verdad para A respecto a B1...Bk. Para cada i = 1..., k, sea B’i o bien Bi o bien ¬Bi, según que el valor de verdad que corresponda a Bi sea T o ⊥. De igual forma sea A’ bien A o bien ¬A según que el valor de verdad que corresponda a A en esa columna sea T ó ⊥. Entonces B’i , B’k├ A’. Lema: Sea A una tautología, ╞ A, y sean B1...Bk las diferentes fórmulas atómicas que componen A, entonces: i) B’1 , B’k-p├ A, donde para cada i, B’i puede ser (independientemente para cada i distinto) o bien Bi o bien ¬Bi Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 38 Lógica y Computación ii) Metalógica de Lp Se sigue además (para k = p)├ A. Lema: Sea Γ finito y Γ╞ A. Entonces puede construirse una deducción de A a partir de Γ. Teorema de Completud débil: Si Γ es finito y Γ╞ A, entonces Γ├ A. En particular si ╞ A, entonces ├A. DECIDIBILIDAD DE LA LÓGICA PROPOSICIONAL • Decimos, en general, que poseemos un método de decisión para una teoría lógica (y que dicha teoría es decidible) cuando disponemos de un procedimiento efectivo (es decir, algorítmico) para averiguar si una determinada fórmula A de esa lógica expresa, o no, una relación válida de consecuencia • La lógica proposicional es decidible, es decir, podemos demostrar que: • El conjunto de las tautologías de Lp es decidible. • Demostraremos este teorema mostrando que la lógica proposicional cuenta con varios métodos de decisión: • • • • Tablas de Verdad Análisis de Valores de Verdad Reducción a Forma Normal Arboles Lógicos. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 39 Lógica y Computación Metalógica de Lp TABLAS DE VERDAD (Wittgenstein, 1921) • Una tabla de verdad para una fórmula de Lp no es sino la exhibición, en forma de matriz, de: • Todos los posibles valores de verdad de las variables proposicionales de la fórmula (para n variables enunciativas, 2n posibles combinaciones de dichos valores, esto es, 2n filas de la matriz), • Todos los posibles valores de cada subfórmula de la fórmula, inducidos por la definición booleana de la conectiva principal de cada subfórmula • Se procede desde las subfórmulas más internas a las más externas • Finalmente, todos los posibles valores de la fórmula globalmente considerada, inducidos por el operador principal de la fórmula sobre los valores de sus subfórmulas • Si bajo el operador principal sólo aparece el valor de verdad T, la fórmula será una tautología, esto es, una fórmula verdadera para cualquier asignación de valores de verdad a sus variables enunciativas. • Conoceremos, por tanto, para toda fórmula, y en un tiempo finito, su carácter tautológico o no. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 40 Lógica y Computación Metalógica de Lp TABLAS DE VERDAD (Wittgenstein, 1921) • Ejemplo: ?╞ (A → B) → (¬ ¬B → ¬A) • Tendremos una tabla de verdad de 22 filas, que construimos, para mayor facilidad, en varias etapas distintas: A B T T ⊥ ⊥ T ⊥ T ⊥ ¬A ¬B A → B ¬B → ¬A (A → B) → (¬ ¬B → ¬A) ⊥ ⊥ T T ⊥ T ⊥ T T ⊥ T T T ⊥ T T T T T T • A la izquierda de la doble línea vertical tenemos las combinaciones posibles de valores para las variables proposicionales de la fórmula. • A la derecha vamos construyendo los valores que pueden tomar las demás subfórmulas de la fórmula. • En el extremo de la derecha llegamos finalmente a la fórmula que nos interesa. • Vemos que, en este caso, ╞ (A → B) → (¬ ¬B → ¬A), ya que la fórmula resulta verdadera para cualquier asignación de valores de verdad. • Puesto que a cada fórmula A de Lp le corresponde una tabla de este tipo, el método de tablas de verdad es un método de decisión para la lógica proposicional. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 41 Lógica y Computación Metalógica de L METALÓGICA DE LÓGICA DE PRIMER ORDEN (LÓGICA ELEMENTAL). CONSISTENCIA Si Γ├ A, entonces Γ╞ A . En particular si ╞ A, entonces ╞ A. La demostración de la consistencia de la lógica de predicados se obtiene recurriendo a una cierta reducción de la misma a la lógica de enunciados y a la idea de tautología. Si en una fórmula cuantificacional cualquiera se efectúa la operación : (1) de suprimir todos los cuantificadores y símbolos de individuo, y (2) reemplazar convenientemente las letras predicativas por variables enunciativas que no figurasen en la referida fórmula A, se obtiene una fórmula A’ a la que se denomina fórmula enunciativa asociada a la fórmula cuantificacional A. La consistencia de L se establece considerando que: (1) Sus axiomas o bien son tautologías o bien tienen una fórmula enunciativa asociada que es una tautología (2) Sus reglas de inferencia transmiten la tautologicidad. Otro procedimiento es apoyarse en la idea de satisfacibilidad. Un sistema que tiene un modelo no puede ser contradictorio. EL lenguaje L tiene al menos un modelo, basta con elegir un universo de un único individuo que satisfaga a sus axiomas. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 42 Lógica y Computación Metalógica de L Organigrama del Teorema de Completud Lema de Lindenbaum: Si Γ es consistente y el conjunto de variables libres que aparecen en Γ es finito, LBR(Γ Γ) finito, hay un Γ* maximamente consistente y ejemplificado tal que Γ⊆ Γ* ⊆ L Lema de Henkin: si Γ* es maximamente consistente y ejemplificado entonces Γ* tiene un modelo numerable. Corolario: si Γ es consistente y LBR(Γ Γ) finito, entonces Γ tiene un modelo numerable. Lema: Si Γ ⊆ L y Γ’ es la clase formada por la fórmulas de Γ que resultan de sustituir las variables libres por constantes nuevas, y si Γ’ tiene un modelo numerable, entonces Γ también lo tiene Teorema de Henkin: Para cualquier conjunto de fórmula Γ, si Γ es consistente, entonces tiene un modelo numerable. Teorema de Gödel: Si Γ ╞ A, entonces Γ ├ A. Corolario: si ╞ A, entonces ├ A . • Teorema de Compacidad: Γ tiene un modelo sii cada subconjunto finito de Γ lo tiene • Teorema de Löwenheim-Skolem: Si Γ es un conjunto satisfacible de fórmulas escritas en un lenguaje numerable, entonces Γ tiene un modelo numerable Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 43 Lógica y Computación Metalógica de L COMPLETUD (Prueba de Hekin 1949) Si Γ╞ A, entonces Γ├ A. En particular si ╞ A, entonces ├ A Gödel demostró en 1930 este teorema para la lógica de primer orden. En 1949 Henkin presentó una prueba más sencilla que es la que se analiza aquí. Estrategia de Prueba: Comprobar que el teorema de Henkin es condición suficiente del de Completud. Lo importante en la prueba es demostrar que todo conjunto consistente tiene un modelo y construirlo. Una vez visto esto, habrá que ver cómo el teorema de Henkin se sigue del corolario en cuanto encontramos el modo de prescindir de la condición de que las variables libres del conjunto constituyen un conjunto finito. Para demostrar el lema de Lindenbaum se ordenan las fórmulas del lenguaje y se construye inductivamente una cadena de conjuntos consistentes y ejemplificados, es decir que para cada fórmula existencial exista una instancia de sustitución que sea “nueva”. El poder ordenar las fórmulas del lenguaje es fundamental para la posibilidad de la construcción de la cadena de conjuntos consistentes y ejemplificados. Es por esta razón que cuando el lenguaje es de cardinalidad más que numerable, necesitamos el axioma de elección. La meta del lema de Lindenbaum es simple: extender el conjunto de fórmulas de partida incluyendo en él a todas las que no lo convierten en contradicción y en añadir testigos o ejemplificaciones para cada particularizador. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 44 Lógica y Computación Metalógica de L Def. Por un conjunto máximamente consistente se entiende un conjunto que no sólo es consistente sino que además comprende toda fórmula consistente, de manera que la adición de cualquier fórmula que no formase parte de él lo haría inconsistente. La prueba exige determinar un plan de construcción de este conjunto lo que supone realizar un recorrido completo de un universo infinito, como es el de todas las posibles fórmulas consistentes y no consistentes, para ir seleccionando todas las que sean consistentes con el conjunto Γ de partida. Una vez construido la prueba de la satisfacibilidad se puede hacer del conjunto inicial Γ, ya que éste está ahora contenido en Γ* Construido el conjunto Γ* máximamente consistente y ejemplificado, conocido como conjunto de Henkin, hay que presentar un modelo numerable que satisfaga al conjunto de Henkin. El modelo se basa en una autointerpretación del sistema lógico, estableciendo una relación de equivalencia en el conjunto de los términos de L, que se prueba que satisface a Γ* y en consecuencia a Γ, que forma parte de Γ*. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 45 Lógica y Computación Metalógica de L Construcción del Conjunto de Henkin (1) Definir la cardinalidad de L, λ , entendida como la cardinalidad del conjunto de símbolos de L. (2) Demostrar que la cardinalidad del conjunto de todos los términos < λ y que el conjunto de todas las fórmulas es de de L es cardinalidad λ. (3) Definir una extensión L’ de L que obtenemos añadiendo nuevas constantes individuales y que L’ tiene cardinalidad λ (4) Proceder a construir el conjunto de Henkin (4.1) Sobre el conjunto de fórmulas de L’ establecer una buena ordenación: {φδ: δ < λ} (4.2) Por Recursión transfinita para cada δ ≤ λ definimos un conjunto Γδ tal que: (4.3) a) Γδ ⊆ Γη b) Γδ es consistente c) en Γδ aparecen a lo sumo δ nuevas constantes Construirlo a) Para δ = 0 se cumple a), b) y c). b) Para 0 < γ < λ • Si γ es un ordinal límite Γγ = ∪ { Γδ : δ ≤ γ } y se cumple a), b) y c). • Si γ es un ordinal sucesor Γγ = Γδ + 1 • Si Γδ ∪ {B δ } es inconsistente Γδ + 1 = Γδ • Si Γδ ∪ {B δ } y B δ no es de la forma ¬∀v A se cumple a), b) y c), entonces Γδ + 1 = Γδ ∪ {B δ }. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 46 Lógica y Computación Metalógica de L • Si Γδ ∪ {B δ } es consistente y B δ es de la forma ¬∀v A se cumple a) y c) y también b), entonces Γδ + 1 = Γδ ∪ {B δ, ¬Av/c }. (4.4) Demostrar que Γγ = ∆ es máximamente consistente. Lo que queda asegurado por el método de construcción de Γγ = ∆. (5) Demostrar que todo conjunto consistente de fórmulas de L es satisfecho por una valoración cuyo universo tiene una cardinalidad ≤ λ (teorema de Henkin). (6) establecido el teorema de Henkin, el teorema de Gödel es inmediato pues: Si Γ╞ A, entonces Γ, ¬A es insatisfacible Si Γ, ¬A es insatisfacible, entonces Γ, ¬A es inconsistente Luego Γ├ A Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 47 Lógica y Computación Metalógica de L DECIDIBILIDAD DE LA LÓGICA DE PREDICADOS El problema de la decisión en un sistema deductivo consiste en hallar un procedimiento mecánico o algoritmo que permita determinar en un número finito de pasos, para una fórmula cualquiera A, si esa fórmula es o no deducible en el sistema. En la lógica de predicados, el problema no tiene una solución general satisfactoria. Teorema de Church (1936): No existe un procedimiento efectivo que permita resolver el problema de la decisión de la lógica cuantificacional de primer orden. Sin embargo hay zonas de la lógica de primer orden que sí son decidibles (T.) La lógica cuantificacional monádica es decidible (T.) La Lógica Elemental es indecidible (Church) Consecuencia del teorema de incompletud de la aritmética elemental (Gödel, 1931) Pero existen subclases decidibles de fórmulas de L, y de argumentos que utilizan fórmulas de L Algunos métodos para establecer la decidibilidad de una clase de fórmulas se basan en la reducción de las fórmulas a su forma normal prenexa. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 48 Lógica y Computación Metalógica de L REDUCCIÓN A FORMA NORMAL PRENEXA (Def.) Una fbf de L está en forma normal prenexa (FNP) si todos sus cuantificadores aparecen en un único prefijo cuantificacional cuya matriz cuantificacional es el resto de la fórmula Para reducir una fórmula a su FNP se opera mediante cadena de equivalencias, aplicando como criterios de transformación un conjunto de equivalencias lógicamente verdaderas. Los pasos de la transformación son: 1. Interiorización de negadores 2. Eliminación de la doble negación 3. Discriminación de variables índice: cada aparición de un cuantificador ligará variables distintas 4. Exteriorización de cuantificadores en su mismo orden de aparición. Equivalencias lógicamente válidas • Exteriorización de cuantificadores • Mutación de variable • Interiorización de negadores Criterios de decidibilidad para L Una fórmula de L es decidible si el prefijo cuantificacional de su FNP: • Sólo tiene generalizadores, o • Sólo tiene particularizadores, o • No tiene cuantificadores universales detrás de cuantificadores existenciales ... Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 49 Lógica y Computación Metalógica de L Un argumento en L es decidible si sus premisas y conclusión están en FNP y son tales que: • En las premisas, no hay cuantificadores existenciales detrás de cuantificadores universales, y • En la conclusión, no hay cuantificadores universales detrás de cuantificadores existenciales. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 50 Lógica y Computación Computabilidad y Decidibilidad Computabilidad y Decidibilidad Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 51 Lógica y Computación Computabilidad y Decidibilidad ESPECIFICACIÓN FORMAL DE PROCESOS • La matemática nos proporciona lenguajes especificar (= definir, hablar de) procesos para • El concepto clave para la definición matemática de procesos es el de algoritmo • Definición intuitiva de algoritmo: • Secuencia de operaciones que, aplicada correctamente a un problema de una clase determinada, genera la solución a ese problema en un tiempo finito • Existen varias formas de definición matemática de algoritmo: • Funciones recursivas (Gödel) • Funciones λ-definibles (Church, Kleene) • Algoritmos de Markov. • Teoría de Autómatas (Máquinas de Turing) Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 52 Lógica y Computación Computabilidad y Decidibilidad AUTÓMATAS Y COMPUTABILIDAD • Para la especificación matemática estudiamos tres teorías distintas: de procesos • Teoría de Autómatas • Computabilidad y Decidibilidad • Teoría de la Complejidad Computacional • La Teoría de Autómatas nos proporciona el lenguaje para la especificación de procesos algorítmicos. • La Teoría de la Computabilidad y la Decidibilidad nos proporciona información acerca de los límites de la resolución algorítmica de problemas. • La Teoría de la Complejidad Computacional nos proporciona estrategias de medida de la complejidad de cada tipo de proceso algorítmico. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 53 Lógica y Computación Computabilidad y Decidibilidad TEORÍA DE AUTÓMATAS Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 54 Lógica y Computación Computabilidad y Decidibilidad AUTOMATAS • Un autómata es: • Una máquina (mecanismo) de naturaleza formal (Sólo existe como un mecanismo matemático) • que acepta una información de entrada (input), • la procesa, (La somete a transformaciones simbólicas que pueden adoptar la forma de un cálculo o computación) • y genera un resultado o salida (output). • Definir un autómata equivaldrá a definir el proceso de transformación del input en un output, lo que equivale a definir una función cuyos argumentos son el input y cuyo valor es el output Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 55 Lógica y Computación Computabilidad y Decidibilidad TIPOS DE AUTOMATAS • Hay muchos tipos de autómatas • Cada tipo de autómata se asocia a una potencia computacional determinada, es decir, a una capacidad dada de resolución de problemas • De hecho, podemos clasificar los problemas algorítmicamente solubles asociándolos al tipo de autómata que los resuelve • Estos tipos se ordenan en una jerarquía de menor a mayor potencia computacional • Jerarquía de automátas: 1) Autómatas finitos (Redes Lógicas) 2) Autómatas intermedios: 2.1. Autómatas de memoria de pila 2.2. Autómatas de memoria linealmente limitada 3) Máquinas de Turing Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 56 Lógica y Computación Computabilidad y Decidibilidad TIPOS DE AUTOMATAS (2) • Además, podemos clasificar los autómatas: • Por el tipo de proceso que ejecutan: • Aceptación o reconocimiento • Generación • Por su tipo de causalidad: • Determinista • No-Determinista • Por el tipo de su almacenamiento de información: • De tamaño fijo • De tamaño creciente • De tamaño infinito • Por el tipo de la información que manejan • Discreta • Continua Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 57 Lógica y Computación Computabilidad y Decidibilidad TIPOS DE AUTOMATAS (3) • Autómatas aceptadores o reconocedores: • Resuelven problemas con respuesta si/no, que se modeliza normalmente como la identificación de dos estados finales, uno de aceptación y otro de rechazo • Autómatas generadores o transductores: • Construyen una respuesta específica (una salida) para el problema planteado • Autómatas deterministas: • La solución del problema viene unívocamente determinada por las entradas y los estados internos del autómata • Autómatas no-deterministas: • La respuesta no está unívocamente determinada Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 58 Lógica y Computación Computabilidad y Decidibilidad DESARROLLO DE LA TEORÍA DE AUTÓMATAS • • • • • • • • • • • • • • Turing (1936) McCulloch, Pitts (1943) Kleene (1956) Shannon (1956) Moore (1956) Minsky (1956) Wang (1957) Sepherdson (1959) Rabin, D. Scott (1959) McNaughton, Yamada (1960) Rabin (1963) Chomsky (1963) McCarthy (1963) Hartmanis, Stearns (1965) Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 59 Lógica y Computación Maquinas de Turing Máquinas de Turing I/O I d i m b Autómata Finito de Control • Cinta potencialmente infinita, que se utiliza para almacenar: • Los datos de entrada • Los datos de salida • Los resultados intermedios. • Cada casilla de la cinta contiene cada uno de los símbolos del alfabeto Σ del problema (Supondremos que Σ = {1, 0}) • Al comienzo del proceso, la Máquina de Turing se encuentra situada sobre la primera casilla a la izquierda de la parte no-vacía de la cinta • El autómata finito de control tiene una entrada (I) y cuatro salidas (d, i, m, b) • La entrada I recibe en cada instante t el símbolo contenido en la casilla que se está examinando en ese instante Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 60 Lógica y Computación Maquinas de Turing Máquinas de Turing (2) • En respuesta a esa información de entrada, el autómata finito de control genera una instrucción de actuación sobre la cinta: • Cuando activa la salida “d”, la Máquina de Turing se mueve a la derecha una casilla • Cuando activa “i”, se mueve una casilla a la izquierda • Cuando activa “m” (“marcar”), escribe un símbolo “1” en la casilla actual • Cuando activa “b” (“borrar”), escribe un “0” en la casilla actual. • La definición puede variar en sus términos: • Alfabeto variado • Movimiento de la cinta, y no de la máquina • ... • (Def.) La Máquina de Turing se detiene en un instante t si, a partir t, la Máquina de Turing sigue examinando la misma casilla, sin producir ningún cambio en ella, y sin cambios de estado en el autómata finito de control. • En cada instante t, la Máquina de Turing está en un estado dado (el de su autómata finito de control). • Cada operación de cambio de estado y de salida de la Máquina de Turing está determinada por una combinación <estado, símbolo leído> Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 61 Lógica y Computación Maquinas de Turing Máquina de Turing (3) • Resolver un problema equivale a computar una función cuyo valor es la solución del problema • (Def.) Una Máquina de Turing T computa una función f(a1,...,an)= v sii, representados en su cinta, en un instante t0, los argumentos a1, ..., an, se detiene en un instante ti ≥ t0, con v representado sobre su cinta. • T es una Máquina de Turing “concreta”: sólo resuelve el problema para el que está diseñada. • Si T computa una función f, decimos que f es Turing-computable. • Si un problema es Turing-computable, entonces es algorítmicamente soluble. • A es un algoritmo sii el problema que A resuelve es resoluble mediante una Máquina de Turing. • Tesis de Turing: La clase de las funciones efectivamente computables (funciones algorítmicas o algoritmos) puede identificarse con la clase de las funciones Turingcomputables Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 62 Lógica y Computación Maquinas de Turing Especificación de Máquinas de Turing • Las Máquinas de Turing se definen en términos de quíntuplas: <estado, entrada, salida, nuevo estado, movimiento> La Máquina de Turing que suma enteros [Ejemplo] Especificación de una Máquina de Turing sumadora tal que: • Cada número se representa mediante n+1 “1”s • Los “0”s actúan como delimitadores • Los dos sumandos están separados por un espacio en blanco (un “0”) • Al final del proceso sólo debe quedar el resultado escrito sobre la cinta, con la cabeza de I/O posicionada sobre la casilla más a la izquierda de la parte no vacía de la cinta Estado Actual Símbolo en la Celda Escribe q1 q1 q2 q2 q3 q3 q4 q4 0 1 0 1 0 1 0 1 1 1 0 1 0 0 0 1 Mueve Derecha Derecha Izquierda Derecha Izquierda Izquierda Derecha Izquierda Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia Siguiente Estado q2 q1 q3 q2 q3 q4 Paro q4 63 Lógica y Computación Maquinas de Turing Podemos simplificar la tabla escribiendo cada fila en quintuplas ordenadas como: <q1, 0, 1, d, q2>, <q1, 1, 1, d, q1>, <q2, 0, 0, i, q3>, <q2, 1, 1, R, q2>, <q3, 0, 0, i, q3>, <q4, 0, 0, d, Paro>, <q4, 1, 1, i, q4>. Los datos de entrada representan dos números en notación unaria. Para representar un par de enteros (x, k) en notación unaria, empezamos con un cero, seguido por x unos separados por otro cero y seguidos de k unos, se termina con un cero. Por ejemplo, el par (2,3) sería en notación unaria 01101110. Usando entonces 01101110 como input y siguiendo la tabla anterior tendríamos la siguiente secuencia, que terminaría con 0111110: Referencias (en Internet) http://www.turing.org.uk/turing/scrapbook/tmjava.html http://obiwan.uvi.edu/computing/turing/ture.htm http://www.wadham.ox.ac.uk/~ahodges/Turing.html http://www.turing.org.uk/turing/ http://www.fisk.edu/vl Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 64 Lógica y Computación Maquinas de Turing q1 q1 q1 0 1 1 0 ⇑ 0 1 1 0 ⇑ 0 1 1 0 ⇑ 0 1 1 1 1 1 1 0 d q1 1 1 1 0 d q1 1 1 1 0 q2 1 1 1 ⇑ 0 1 1 1 1 1 1 ⇑ 0 1 1 1 1 1 1 ⇑ 0 1 1 1 1 1 1 q2 0 1 1 1 q3 0 1 1 1 q4 0 1 1 1 q4 0 1 1 1 ⇑ 0 1 1 1 ⇑ 0 1 1 1 ⇑ 0 1 1 1 ⇑ 0 1 1 1 q2 q2 q4 q4 q4 q4 0 d q2 0 d q2 0 d q2 0 d ⇑ 1 1 1 0 i ⇑ 1 1 0 0 i ⇑ 1 1 0 0 i ⇑ 1 1 0 0 i q2 1 1 0 0 i q4 1 1 0 0 i q4 1 1 0 0 i q4 1 1 0 0 i Paro q3 q4 q4 q4 Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 65 Lógica y Computación Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia Maquinas de Turing 66 Lógica y Computación Maquinas de Turing Máquina de Turing Universal • Una Máquina de Turing Universal (U) es una Máquina de Turing tal que: • Si, en t=0, representamos en su cinta: • una Máquina de Turing concreta • los datos de entrada a esa MT concreta • Entonces, en algún t > 0, se detendrá con la solución de la MT concreta representada en la cinta • La Máquina de Turing Universal imita o reproduce el comportamiento de cualquier Máquina de Turing concreta • Existen métodos de codificación (Por ej., la numeración de Gödel) que permiten representar una Máquina de Turing mediante: • Una codificación de las quíntuplas que definen su funcionamiento • Una codificación del estado en que se encuentra la Máquina de Turing • La Máquina de Turing Universal: 1. Lee el estado en que se encuentra la MTuring concreta. 2. Mientras no es el estado final: 2.1 Lee el símbolo siguiente de la cadena de entrada 2.2 Identifica cuál es la instrucción aplicable de la MTuring concreta 2.3 Aplica la instrucción: 2.3.1 Cambiando el estado de la MTuring concreta 2.3.2 Generando la salida correspondiente. 3. Si lee el estado final, termina. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 67 Lógica y Computación Maquinas de Turing Decidibilidad • Tesis de Turing: Un problema es decidible sii es computable (por una MTuring). En otro caso, es indecidible • La cuestión de si, para una clase dada de problemas, existe un algoritmo o procedimiento efectivo que los resuelva, se denomina problema de decisión. • Decimos que un problema de decisión es indecidible si podemos demostrar que no existe ningún algoritmo que pueda responder a todas las preguntas que el problema pueda plantear. • Ejemplos: • El problema “¿Hay enteros tales que satisfagan la ecuación 3x + 6y = 151?” (que tiene una respuesta negativa) no es un problema de decisión. • El problema “¿Hay enteros x, y tales que se cumple la ecuación ax + by = c?”, sí es un problema de decisión: • Para cada asignación de valores a los parámetros a, b, c, hay un problema distinto • Respuesta: • sí, si el máximo común divisor (mcd) de a y b divide a c • Tenemos el algoritmo de Euclides para hallar el mcd de dos números Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 68 Lógica y Computación Maquinas de Turing El Problema de la Parada • Consideremos el siguiente problema de decisión: ¿Existe algún procedimiento efectivo (algoritmo o máquina de Turing) que nos permita determinar, para cualquier MT concreta representada en la cinta de la MTuring universal, si la MTuring concreta llegará a detenerse después de iniciar su computación? • Este problema tiene una respuesta negativa, por lo que se trata de un problema indecidible • Este resultado es equivalente a los obtenidos respecto a la Lógica Clásica de Primer Orden: • Gödel (1931): Cualquier sistema formal cuyo lenguaje sea lo suficientemente rico para describir las operaciones y relaciones básicas de la aritmética elemental es incompleto • La Aritmética de Peano, formalizada con la Lógica de Primer Orden con Identidad (y símbolos funcionales) y con axiomas específicos, es incompleta. • El conjunto de los enunciados verdaderos de la aritmética no es decidible • Church (1936): La Lógica de Primer Orden es indecidible • Consecuencias para las Ciencias Cognitivas: • Existen problemas elementales no decidibles • Pero los sujetos solucionan problemas muy complejos. Luego se requieren recursos de modelización no algorítmicos (heurísticos). Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 69 Lógica y Computación Maquinas de Turing MAQUINAS DE REGISTROS • Una computadora digital (ordenador) es la realización física de una Máquina de Turing (universal) • Un modelo más realista se obtiene si sustituimos la cinta potencialmente infinita de la MT por un número finito pero potencialmente ilimitado de registros • Cada registro es un espacio de memoria que supondremos que puede almacenar: • Un número de cualquier longitud y tipo, o • Una cadena alfanumérica cualquiera, numéricamente codificada • Cada registro lleva asociado unívocamente un número, la dirección de ese registro • Un conjunto de registros, que comienza en una dirección dada, almacenará representaciones numéricas de las instrucciones del programa • Otro conjunto de registros almacena los datos sobre los que debe operar el programa • En general, las instrucciones se reformularán para que todas ellas se ajusten al formato: Número_Instrucción Operando [Operador1, ..., Operadorn] • Los operandos identifican la instrucción que se va a ejecutar • Los operadores son direcciones de registros en los que se guardan datos sobre los que se va a ejecutar la operación. En los lenguajes de programación se representan mediante variables. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 70 Lógica y Computación Maquinas de Turing DE LOS AUTOMATAS A LOS ORDENADORES • Un ordenador o computadora digital es la realización física de una Máquina de Registros -en último término, de una Máquina de Turing- Universal. • Cuando un ordenador ejecuta un programa, la máquina “universal” (que puede ejecutar cualquier programa o proceso computable) se convierte en una “máquina virtual” concreta. • Cada instrucción de los lenguajes de programación de alto nivel que se utilizan para programar ordenadores, es, en realidad, una macroinstrucción, es decir, una expresión que resume todo un conjunto más o menos complejo de operaciones elementales Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 71 Lógica y Computación Maquinas de Turing PROGRAMAS • Una macroinstrucción es una unidad lingüística que hace referencia, en último término, a una operación definible en términos de Máquina de Turing • Un lenguaje de programación es un conjunto de macroinstrucciones que puede ser utilizado para definir operaciones o procesos complejos. • Hay lenguajes de programación de distintos niveles, de forma que los lenguajes de un nivel utilizan explícita o implícitamente macroinstrucciones del nivel inferior • Un programa es una secuencia finita de instrucciones tal que cada una de ellas es: • Una macroinstrucción de algún lenguaje de programación • Un subprograma (rutina o subrutina) formulada en ese mismo lenguaje • Una computadora digital (ordenador) es la realización física de una Máquina de Turing (universal) que ejecuta procesos definidos usualmente mediante programas escritos en lenguajes de programación de diferentes niveles • Cuando un ordenador ejecuta un programa, la máquina “universal” (que puede ejecutar cualquier programa o proceso computable) se convierte en una “máquina virtual” concreta. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 72 Lógica y Computación Maquinas de Turing ¿Puede Pensar Una Máquina? En 1950 la revista Mind publicó una conferencia de Alan M. Turing, "Maquinaria computadora e Inteligencia", en la que sostiene la tesis de que un computador digital puede hacer todo lo que hace el hombre. Si una máquina universal de Turing puede hacer toda tarea computable, entonces puede hacer todo lo que hace la mente. Test de Turing: Se conoce con el nombre de test de Turing la prueba que consiste en poner en comunicación a una máquina con un humano, si el humano no es capaz de darse cuenta de que su interlocutor es una máquina entonces podemos considerar a la máquina como inteligente. La Metáfora Computacional: es el modelo teórico que implica que una máquina puede ser un modelo explicativo de la mente humana. Entendiendo funcionalmente a la máquina, es decir, al programa que ejecuta una máquina. Esta metáfora inaugura las disciplinas de la Inteligencia Artificial y la Ciencia Cognitiva. Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 73 Lógica y Computación Complejidad Computacional COMPLEJIDAD COMPUTACIONAL Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 74 Lógica y Computación Complejidad Computacional COMPLEJIDAD • No basta con el criterio de decidibilidad para establecer si una modelización cognitiva puede ser estrictamente algorítmica • Los recursos físicos utilizados en la solución de problemas (espacio y tiempo) son limitados • Ni siquiera todos los problemas decidibles son manejables • Podemos medir la complejidad de los algoritmos para estimar su manejabilidad. • Los parámetros de medida son: • Tiempo de computación requerido (número de operaciones primitivas) • Espacio de memoria requerido: • Tamaño del input • Tamaño del output • Espacio requerido para almacenar resultados intermedias • La complejidad vendrá dada por el tiempo requerido para resolver el problema, dado como una función del tamaño del problema • Tipos de complejidad: • Polinómica (problemas “buenos”) • Exponencial (problemas “malos”). Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 75 Lógica y Computación Complejidad Computacional Análisis de la Complejidad de un Algoritmo • Ejemplo: Complejidad de la Multiplicación • Sean dos enteros: • n, que tiene i dígitos • m, que tiene k dígitos • Para obtener m x n tenemos que obtener i filas que se sumarán • En cada fila tendremos aprox. j (≥ ≥ k) operaciones • Luego para obtener las i filas necesitamos, aproximadamente, i x j operaciones. • Finalmente, para sumar las filas necesitamos, aproximadamente, i x j sumas de dos números de un dígito cada uno • Luego el tiempo de ejecución de toda la operación será proporcional a la ejecución de todas las operaciones • El número de operaciones es 2(i x j) • Luego la complejidad será proporcional al factor variable de esta expresión: i x j Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 76 Lógica y Computación Complejidad Computacional La Medida de la Complejidad Algorítmica • Lo que resulta importante a la hora de medir la complejidad es su tasa funcional de crecimiento: • Esa tasa puede ser: • Lineal (buena) • Cuadrática (admisible en algunos casos) • Exponencial (no manejable) • ... • Los factores constantes se omiten. • Denotación de la complejidad: O(f(n)) (La complejidad es proporcional a fn o “de orden f(n)) • Clasificación complejidad: de los problemas respecto a su • Problemas P: tienen algoritmos eficientes, con crecimiento polinómico • Problemas NP: • Es indemostrable que sean problemas P • Tienen un algoritmo eficiente (polinómico) de verificación de la solución • Problemas NP-completos: • No son problemas P ni NP • Si uno de la clase se solucionara mediante un algoritmo polinómico, todos tendrían un algoritmo de ese tipo • Problemas intrínsecamente difíciles: No son problemas P ni NP, y tienen algoritmos con tiempo exponencial . Carlos Muñoz Gutiérrez. Departamento de Lógica y Filosofía de la Ciencia 77