[Élargir le commentaire en réponse.]
Tout d'abord, juste une clarification sur le comptage des variables liées dans un combinateur (= terme fermé) . J'interprète la question comme demandant
le nombre total de noms de variables liés distincts en t de
sorte que par exemple le terme t = ( λ x . X ( λ y . Y ) ) ( λ x . Λ y . Y x ) compte comme ayant deux variables liées, malgré quatre liants (c.-à-d. abstractions lambda). Cette façon de compter était initialement un peu étrange pour moi car elle n'est pas invariante soust
le nombre total de noms de variables liés distincts en t
t = ( λ x . x ( λ y. y) ) ( λ x . λ y. yx )Conversion
α : par exemple,
t est
α- équivalent à
t ′ = ( λ x . x ( λ y . y ) ) ( λ a . λ b . b a ) , mais
t ′ a quatre noms de variables liés distincts. Cependant, ce n'est pas vraiment un problème, car lenombre
minimumde noms de variables liées distinctes nécessaires pour écrire un terme fermé
t est égal au
nombre maximum de variables libres dans un sous-terme de tαtαt′= ( λ x . x ( λ y. y) ) ( λ a . λ b . b a )t′tle nombre maximum de variables libres dans un sous-terme de t
et cette dernière notion est invariante sous
conversion.
α
Donc, soit la collection de tous les combinateurs qui peuvent être écrits en utilisant au plus deux variables liées distinctes, ou de manière équivalente la collection de tous les combinateurs dont les sous-termes ont au plus deux variables libres.C
Théorème (Statman) : n'est pas combinatoire complet.C
Il semble que la preuve originale de cela soit contenue dans un rapport technique de Rick Statman:
- Combinateurs héréditairement de l'ordre deux. Rapport technique 88-33 de Carnegie Mellon Math Department, août 1988. ( pdf )
Statman définit une collection essentiellement isomorphe de combinateurs qu'il appelle "HOT", pour "héréditaire d'ordre deux". Le rapport technique montre en fait que le problème de mot (c'est-à-dire, égalité) pour HOT est encore indécidable, malgré le fait qu'il n'est pas combinatoire complet. Statman a ensuite écrit un court article autonome avec la preuve que HOT n'est pas complet en combinatoire dans:β
- Deux variables ne suffisent pas. Actes de la 9e conférence italienne sur l'informatique théorique, pp. 406-409, 2005. ( acm )
HnHnn + 1βnS= λ x . λ y. λ z. ( x z) ( yz)nnHnn + 1