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
Stratification de Base pour une Logique des Définitions avec Induction
Cet article examine la question de la stratification des définitions dans la logique sous-jacente de l'assistant de preuve Abella. La logique d'Abella permet l'interprétation des prédicats atomiques par des définitions de points fixes et permet un traitement ultérieur par induction ou coinduction. Cependant, les conditions de stratification stricte dans la formulation logique originale s'avèrent trop restrictives pour certaines applications, telles que les méthodes d'équivalence sémantique basées sur les relations logiques. Tiu a démontré que ces restrictions pouvaient être assouplies par un concept plus faible appelé « stratification de base », mais ses résultats se limitaient à une version de la logique ne traitant pas les définitions inductives. Cet article démontre que ces résultats peuvent être étendus pour couvrir les définitions inductives, tout en révélant que bien que la stratification de base soit applicable aux définitions de points fixes arbitraires, l'affaiblissement de la condition de stratification aux définitions inductives entraîne une incohérence logique.
Restrictions de la logique d'Abella: L'assistant de preuve Abella est fondé sur une logique G contenant des conditions de stratification strictes, exigeant que les constantes de prédicat n'apparaissent pas à gauche du symbole d'implication de niveau supérieur dans leur formule de définition
Besoins des applications pratiques: La méthode des relations logiques est largement utilisée dans le raisonnement sur les propriétés des langages de programmation, ses définitions étant généralement indexées par type et supposant l'auto-référence (bien que pour des types structurellement plus petits)
Insuffisance des solutions existantes: La méthode de stratification de base de Tiu s'applique uniquement à une version de la logique n'incluant pas les définitions inductives
Valeur théorique: Étendre la flexibilité des définitions logiques tout en garantissant la cohérence
Signification pratique: Soutenir davantage de scénarios de vérification de langages de programmation, en particulier les méthodes basées sur les relations logiques
Avancée technique: Jeter les bases pour construire une logique d'Abella plus flexible
Extension de la théorie de la stratification de base: Étendre les résultats de stratification de base de Tiu à la logique incluant les définitions inductives
Identification des restrictions des définitions inductives: Démontrer que l'affaiblissement de la condition de stratification à la forme de stratification de base entraîne une incohérence logique pour les définitions inductives
Proposition d'une stratégie de stratification mixte: Les prédicats inductifs utilisent la stratification stricte, les prédicats de points fixes utilisent la stratification de base
Fourniture de preuves de cohérence: Démontrer la cohérence de la logique LDμ par réduction à la version logique de base
Démonstration d'applications pratiques: Montrer comment encoder les prédicats de réductibilité dans les preuves de normalisation forte
Une définition D est stratifiée de base si et seulement s'il existe une assignation de niveaux aux formules atomiques de base telle que pour chaque clause H ^∆= B ∈ D et chaque substitution X-basique ρ:
lvl(Hρ) ≥ lvl(Bρ)
La fonction de niveau est définie comme suit:
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(α)}
Prouver que la réductibilité implique la normalisabilité
Établir le lemme de réductibilité
Le lemme de dépliage clé:
Supposons que p x ^μ= B p x soit la forme de point fixe d'une définition inductive, pour toute dérivation Ψ de ∆ ⊢ D p, où p n'apparaît pas dans D et apparaît uniquement positivement dans D p, il existe une dérivation μ(Ψ,ΠS) de ∆ ⊢ D S.
Montre comment encoder les prédicats de réductibilité dans les preuves de normalisation forte de style Tait en utilisant la stratification de base:
red unit T ^∆= sn T
red (arrow A B) T ^∆= ∀u:tm.(red A u ⊃ red B (app T u))
Cette définition ne peut pas être stratifiée strictement (car red apparaît négativement dans son corps de définition), mais peut être stratifiée de base, car dans les instances apparaissant négativement red A u, le paramètre de type A est un sous-terme du paramètre de type de tête (arrow A B).
Supporte l'encodage de relations d'équivalence logique affirmant que deux fonctions se comportent de manière identique sur des arguments équivalents, largement utilisées dans la recherche en sémantique des langages de programmation.
L'article cite 17 références connexes, couvrant les domaines essentiels de la théorie des définitions logiques, du raisonnement inductif et de l'élimination des coupures, en particulier les travaux fondateurs de McDowell & Miller (2000) et la théorie de la stratification de base de Tiu (2012).