stringtranslate.com

Función no interpretada

En lógica matemática , una función no interpretada [1] o símbolo de función [2] es aquella que no tiene otra propiedad que su nombre y su forma n-aria . Los símbolos de funciones se utilizan, junto con constantes y variables, para formar términos .

La teoría de funciones no interpretadas también se denomina a veces teoría libre , porque se genera libremente y, por tanto, es un objeto libre , o teoría vacía , siendo la teoría que tiene un conjunto vacío de oraciones (en analogía con un álgebra inicial ). Las teorías con un conjunto de ecuaciones no vacío se conocen como teorías ecuacionales . El problema de la satisfacibilidad de las teorías libres se resuelve mediante la unificación sintáctica ; Los algoritmos para este último son utilizados por intérpretes de varios lenguajes informáticos, como Prolog . La unificación sintáctica también se utiliza en algoritmos para el problema de satisfacibilidad de otras teorías ecuacionales; consulte Unificación (informática) .

Ejemplo

Como ejemplo de funciones no interpretadas para SMT-LIB , si esta entrada se proporciona a un solucionador SMT :

(declarar-divertido f (Int) Int)(afirmar (= (f 10) 1))

el solucionador SMT devolvería "Esta entrada es satisfactoria". Esto sucede porque fes una función no interpretada (es decir, todo lo que se conoce fes su firma ), por lo que es posible que f(10) = 1. Pero aplicando la siguiente entrada:

(declarar-divertido f (Int) Int)(afirmar (= (f 10) 1))(afirmar (= (f 10) 42))

el solucionador SMT devolvería "Esta entrada no es satisfactoria". Esto sucede porque f, al ser una función, nunca puede devolver valores diferentes para la misma entrada.

Discusión

El problema de decisión para las teorías libres es particularmente importante porque muchas teorías pueden reducirse mediante él. [3]

Las teorías libres se pueden resolver buscando subexpresiones comunes para formar la clausura de congruencia . [ se necesita aclaración ] Los solucionadores incluyen solucionadores de teorías de módulo de satisfacibilidad .

Ver también

Notas

Referencias

  1. ^ Bryant, Randal E.; Lahiri, Shuvendu K.; Seshia, Sanjit A. (2002). "Modelado y verificación de sistemas utilizando una lógica de contraaritmética con expresiones lambda y funciones no interpretadas" (PDF) . Verificación asistida por computadora . Apuntes de conferencias sobre informática. vol. 2404, págs. 78–92. doi :10.1007/3-540-45657-0_7. ISBN 978-3-540-43997-4. S2CID  9471360.
  2. ^ Baader, Franz ; Nipkow, Tobías (1999). Reescritura de términos y todo eso . Prensa de la Universidad de Cambridge. pag. 34.ISBN 978-0-521-77920-3.
  3. ^ de Moura, Leonardo; Bjorner, Nikolaj (2009). Métodos formales: fundamentos y aplicaciones: 12º Simposio Brasileño sobre Métodos Formales, SBMF 2009, Gramado, Brasil, 19 al 21 de agosto de 2009: artículos seleccionados revisados ​​(PDF) . Berlín: Springer. ISBN 978-3-642-10452-7.