Eso me vuelve loco al pensar en ello porque mi libro y otras páginas en la web hablan de variables libres y enlazadas sin ninguna definición. Creo que todo en matemáticas tiene una definición, por lo que debe haber una definición para ello.
Además, estoy tomando un curso llamado matemáticas abstractas que habla sobre cómo probar y lógica. Tengo curiosidad acerca de si la lógica y estos estudios de prueba tienen otro nombre en matemáticas.
Las variables libres y vinculadas se definen en el contexto de la sintaxis de la lógica de primer orden , considerando términos (es decir, "nombres" para objetos) y formularios (es decir, declaraciones).
La definición formal del conjunto. de variables libres de una fórmula es definido por :
todas las variables que aparecen en un término o fórmula atómica son libres.
;
, (y lo mismo para los demás conectores binarios);
.
Una variable que no es libre está ligada .
Una fórmula se llama cerrado si .
en fórmula , La variable está atado.
en fórmula La variable está atado mientras que la variable es gratis.
Una fórmula cerrada, cuando se interpreta, expresa una oración, es decir, tiene un valor de verdad definido.
es cierto en , mientras es falso en ella.
¿Cuál es el valor de verdad de una fórmula con una variable libre, como por ejemplo ?
Depende... Depende del valor que le demos a la variable .
Una variable libre actúa como un pronombre del lenguaje natural: su referencia debe identificarse según el contexto: si digo "es rojo", el valor de verdad del enunciado depende del objeto que estoy señalando con el dedo: el libro rojo o la pluma azul en mi mesa.
Del mismo modo, existen formas (definidas por las especificaciones semánticas formales del lenguaje de primer orden: ver función de asignación de variables ) para dar referencia "temporal" a variables libres de una fórmula.
Considere la fórmula:
;
si sustituimos a el (nombre del) número , obtenemos una oración verdadera (es decir, ).
Si en cambio sustituimos a el (nombre del) número , obtenemos una oración falsa (es decir, ).
Una fórmula con var libre se llama "abierta" porque no tiene un significado (fijo): está "abierta a" diferentes interpretaciones; para darle significado, tenemos que transformarlo en una oración (es decir, una fórmula cerrada).
Desafortunadamente, las variables son realmente complicadas.
El problema de las variables surge mucho en informática con respecto a teorías como el cálculo lambda que maneja perfectamente la unión y la sustitución. Si permite un marco de lógica de orden superior de clasificación múltiple, puede axiomizar y definir cuantificadores en términos del cálculo lambda simplemente tipado. A un cuantificador sobre un dominio de discurso se le puede dar directamente un tipo de . Este fundamento de la teoría de tipos simples se utiliza en la práctica en probadores de teoremas como Isabelle/HOL. Consulte Las siete virtudes de la teoría de tipos simples para obtener un poco más de información.
El STLC no resuelve directamente el enlace de variables, pero proporciona un buen ejemplo para formalizar y generalizar. Una de las técnicas más simples para lidiar con la fealdad de las variables y capturar evitando la sustitución que se usa a menudo en la práctica en metateoría es el uso de índices de Bruijn. Básicamente, las variables se manejan como la indexación de números se indexa en el ámbito local y, por ejemplo, la función constante se convierte . Si está interesado en este tipo de cosas, hay una buena publicación de blog sobre carpetas de Jesper Cockx .
Si no está satisfecho con este tipo de enfoque, puede compilar el STLC a categorías cerradas cartesianas. Consulte Compilar en categorías por Conal Elliott . BCKW es probablemente un conjunto más tradicional de combinadores para compilar. Desafortunadamente, el tratamiento completo de la teoría de categorías de tipos dependientes y cuantificadores en términos de rebanadas y subobjetos es bastante extraño. Creo que realmente una de las únicas áreas en las que se usa un enfoque combinatorio en la práctica es el metateorema de comprensión de clases de la teoría de conjuntos NBG, donde las fórmulas para las clases se compilan hasta permutaciones de tuplas y demás.
Los enfoques más directos para tratar con variables son el área de la lógica algebraica. Probablemente desee consultar las Álgebras cilíndricas de Alfred Tarski, donde básicamente puede tratar los cuantificadores existenciales como una especie de operador modal. También hay otros enfoques del problema, como las álgebras poliádicas, pero tampoco los entiendo.
Por último, creo que debería mencionar el operador de descripción indefinida de Hilbert, que podría decirse que empeora algunos problemas con las variables al intercalar proposiciones y términos, pero puede simplificar la metateoría. se usa para describir "un término indefinido tal que P es verdadero". La cuantificación existencial se puede definir entonces como .
No menciona el problema, pero además de las variables libres y vinculadas, también existen los problemas de las definiciones globales y locales y la expansión definitoria. En algunos casos, puede convertir definiciones locales en expresiones lambda. aunque por razones técnicas muy propias de los programas de ordenador esto no siempre funciona. El método más sucinto para tratar con variables globales podría ser abusar de un operador de descripción definida .
Además, esto no es realmente un problema para la lógica de primer orden, pero la ciencia de la computación necesita lidiar con el flujo de control/continuaciones como otro tipo de variable. Sin embargo, el enfoque como en el cálculo lambda bar mu mu-tilde no es determinista.
Espero haberlo convencido de que es posible, si no real, que alguien haya formalizado la captura evitando la sustitución de variables correctamente y que si usted es un Cylon puede Schonfinkle todo en un lío ilegible libre de carpetas de nombres. Desafortunadamente, las variables son realmente complicadas.
contraejemplosmatematicas.net
Mauro ALLEGRANZA
Esmirna
Pedro
Esmirna
Esmirna
Esmirna
Esmirna