Voici mon approche: je montrerai que si vous pouvez décider de votre problème, alors vous pouvez décider du problème de correspondance de Post (PCP), qui est connu pour ne pas être décidable.
Rappelez-vous, le PCP est un problème de décision qui demande si dans un ensemble de 2-tuples P= { (X1,y1) , … , (Xn,yn) } vous pouvez construire une séquence (y compris la répétition) de telle sorte que le concaténé Xjes et le concaténé yjes de cette séquence forment le même mot. Notez que l'alphabet doit avoir au moins 2 caractères.
Alors laisse Pêtre une instance du PCP. Considérez la grammaire sans contexte suivante, où nous avons introduit un nouveau symbole de terminaltje pour le je-th élément dans P. La grammaire a les règles suivantes:
SXX′Oui→ X!Oui→X1X′t1∣X2X′t2∣ ⋯XnX′tn→X1X′t1∣X2X′t2∣ ⋯XnX′tn∣ ε→y1Ouit1∣y2Ouit2∣ ⋯ynOuitn∣ ε
(La variable
X′ n'est là que pour exclure
S⇒ !).
Bien sûr, étant donné n'importe quelle grammaire, nous pouvons trouver un PDA correspondant qui accepte la même langue que la grammaire. Donc, construisez le PDA correspondant, puis utilisez l'algorithme hypothétique de votre problème pour déterminer si ce PDA accepte un mot du formulaireu ! v (c'est-à-dire, si l'on peut dériver n'importe quel mot de la forme u ! vde cette grammaire). Je vais montrer comment utiliser ces informations pour résoudre l'instance PCPP.
Supposons maintenant que u ! vest un mot dans cette grammaire. Le motu comporte deux parties, le suffixe, composé du tjeterminaux, et le reste appelé préfixe. Il en va de même pourv. On au = vsi et seulement si leurs préfixes et suffixes coïncident. Les suffixes ne coïncident que si nous avons utilisé la même séquence de tuples deP pour construire les mots u et v. Les préfixes deu et v coïncider si la concaténation de la Xjele sable yjes (basé sur la séquence de tuple inversée donnée par le tjes) est le même. Par conséquentu = v si et seulement s'il existe une solution pour l'instance PCP P.
De même, s'il existe une solution pour l'instance PCP P, alors à partir de la solution, il est facile de construire un mot de la forme u ! v qui est dérivable de cette grammaire.
Il s'ensuit que l'instance PCP P a une solution si et seulement si cette grammaire contient un mot de la forme u! v. S'il y avait un algorithme pour décider de votre problème, nous pourrions l'utiliser pour résoudre PCP. Mais bien sûr, le PCP est connu pour être indécidable, donc votre problème est indécidable aussi.
L'approche pourrait être la suivante. Essayez de créer un langage sans contexte (= PDA) qui code les étapes de calcul d'une MT, de telle sorte que le calcul complet réussisse s'il y a un mot de la forme que vous décrivez.
Vous devez d'abord coder des configurations distinctes: contenu de la bande + état + position de la tête (vous l'avez vu pour l'équivalence grammaticale). Un langage sans contexte peut encoder une seule étapeC⊢C′ d'un calcul à condition d'utiliser une image miroir C# m (C′) , où m ( C) désigne l'image miroir (inversion) de $$ C $. (Je suis bâclé ici: vous devrez peut-être distinguer la configuration et sa description.)
Considérons maintenant le langage des étapes distinctes, concaténé avec le langage des configurations dupliquées:C0#C1# m (C2) #C3# m (C4) # …C2 n - 1# m (C2 n) #CF! C′1# m (C′1) #C′2# m (C′2)# …C′n +1#m (C′n + 1) avec pour chaque k , C2 k - 1⊢ (C2 k) . Ceci est en dehors du contexte, en plus du codeC0 comme initiale et CF comme configurations finales.
Maintenant, la première partie garantit que nous avons des étapes consécutives, la deuxième partie que les configurations successives sont égales. Si les deux parties correspondent, nous avons un calcul. Ce que nous ne pouvons pas décider.
Telle est l'idée. J'ai peut-être des index erronés, et toute la séquence doit être encodée en binaire, mais cela peut être résolu.
la source