Ground Stratification for a Logic of Definitions with Induction
Guermond, Nadathur
The logic underlying the Abella proof assistant includes mechanisms for interpreting atomic predicates through fixed point definitions that can additionally be treated inductively or co-inductively. However, the original formulation of the logic includes a strict stratification condition on definitions that is too restrictive for some applications such as those that use a logical relations based approach to semantic equivalence. Tiu has shown how this restriction can be eased by utilizing a weaker notion referred to as ground stratification. Tiu's results were limited to a version of the logic that does not treat inductive definitions. We show here that they can be extended to cover such definitions. While our results are obtained by using techniques that have been previously deployed in related ways in this context, their use is sensitive to the particular way in which we generalize the logic. In particular, although ground stratification may be used with arbitrary fixed-point definitions, we show that weakening stratification to this form for inductive definitions leads to inconsistency. The particular generalization we describe accords well with the way logical relations are used in practice. Our results are also a intermediate step to building a more flexible form for definitions into the full logic underlying Abella, which additionally includes co-induction, generic quantification, and a mechanism referred to as nominal abstraction for analyzing occurrences of objects in terms that are governed by generic quantifiers.
academic
Estratificación de Base para una Lógica de Definiciones con Inducción
Este artículo investiga el problema de la estratificación de definiciones en la lógica subyacente del asistente de pruebas Abella. La lógica de Abella permite interpretar predicados atómicos mediante definiciones de punto fijo, y puede procesarlos además mediante inducción o coinducción. Sin embargo, las condiciones de estratificación estricta en la fórmula lógica original son demasiado restrictivas para ciertas aplicaciones, como los métodos de equivalencia semántica basados en relaciones lógicas. Tiu ha demostrado que estas restricciones pueden aliviarse mediante un concepto más débil denominado "estratificación de base", pero sus resultados se limitan a versiones de la lógica que no tratan definiciones inductivas. Este artículo demuestra que estos resultados pueden extenderse para abarcar definiciones inductivas, aunque se encuentra que mientras la estratificación de base puede utilizarse para definiciones de punto fijo arbitrarias, debilitar la condición de estratificación a definiciones inductivas resulta en inconsistencia lógica.
Limitaciones de la Lógica de Abella: El asistente de pruebas Abella se basa en la lógica G, que contiene condiciones de estratificación estricta que requieren que las constantes de predicado no aparezcan en el lado izquierdo del símbolo de implicación de nivel superior en sus fórmulas de definición
Demandas de Aplicaciones Prácticas: El método de relaciones lógicas se utiliza ampliamente en la inferencia de propiedades de lenguajes de programación, cuyas definiciones suelen estar indexadas por tipos e incluyen auto-referencias (aunque para tipos estructuralmente más pequeños)
Insuficiencia de Soluciones Existentes: El método de estratificación de base de Tiu solo se aplica a versiones de la lógica que no incluyen definiciones inductivas
Extensión de la Teoría de Estratificación de Base: Extender los resultados de estratificación de base de Tiu a la lógica que contiene definiciones inductivas
Identificación de Limitaciones en Definiciones Inductivas: Demostrar que debilitar la condición de estratificación a la forma de estratificación de base resulta en inconsistencia lógica para definiciones inductivas
Propuesta de Estrategia de Estratificación Mixta: Predicados inductivos utilizan estratificación estricta, predicados de punto fijo utilizan estratificación de base
Provisión de Prueba de Consistencia: Demostrar la consistencia de la lógica LDμ mediante reducción a la versión lógica base
Demostración de Aplicaciones Prácticas: Mostrar cómo codificar predicados de reducibilidad en pruebas de normalización fuerte
Una definición D es de estratificación de base si y solo si existe una asignación de nivel a fórmulas atómicas de base tal que para cada cláusula H ^∆= B ∈ D y cada sustitución X-base ρ, se cumple:
lvl(Hρ) ≥ lvl(Bρ)
La función de nivel se define como sigue:
lvl(⊥) := lvl(⊤) := 0
lvl(A∧B) := lvl(A∨B) := max(lvl(A), lvl(B))
lvl(A ⊃ B) := max(lvl(A)+1, lvl(B))
lvl(∀x:α.C) := lvl(∃x:α.C) := sup{lvl(Ct/x∅) | t ∈ ground(α)}
Demostrar que la reducibilidad implica normalizabilidad
Establecer el lema de reducibilidad
El lema de expansión clave:
Supongamos que p x ^μ= B p x es la forma de punto fijo de una definición inductiva. Para cualquier derivación Ψ de ∆ ⊢ D p, donde p no aparece en D y solo aparece positivamente en D p, existe una derivación μ(Ψ,ΠS) de ∆ ⊢ D S.
Se muestra cómo utilizar la estratificación de base para codificar predicados de reducibilidad en pruebas de normalización fuerte al estilo de Tait:
red unit T ^∆= sn T
red (arrow A B) T ^∆= ∀u:tm.(red A u ⊃ red B (app T u))
Esta definición no puede estratificarse estrictamente (porque red aparece negativamente en su cuerpo), pero puede estratificarse de base, porque en las instancias que aparecen negativamente red A u, el parámetro de tipo A es un subtérmino del parámetro de tipo de cabeza (arrow A B).
Soporta la codificación de relaciones de equivalencia lógica que afirman que dos funciones se comportan de manera idéntica en argumentos equivalentes, ampliamente utilizadas en la investigación de semántica de lenguajes de programación.
El artículo cita 17 referencias relacionadas, abarcando trabajos importantes en los campos centrales de definiciones lógicas, razonamiento inductivo y eliminación de corte, particularmente el trabajo pionero de McDowell & Miller (2000) y la teoría de estratificación de base de Tiu (2012).