Est-il possible de construire un algorithme qui prend en entrée un automate de refoulement avec la promesse que le langage accepté par cet automate L ( M ) est un langage déterministe sans contexte et génère un automate de refoulement déterministe N qui accepte précisément le langage accepté par M ?
Un problème équivalent serait de construire un algorithme qui prend en entrée un automates à pile (avec la promesse que L ( M ) est déterministe, comme ci - dessus) et un pushdown déterministe automates N . La sortie serait oui si L ( M ) = L ( N ) et non si L ( M ) ≠ L ( N ) .
Je crois qu'un algorithme résolvant le premier donnerait un algorithme résolvant le second par la décidabilité de l'équivalence des automates déterministes à refoulement. Je pense qu'une solution à la seconde impliquerait une solution au premier car nous énumérons tous les automates déterministes de refoulement et exécutons l'algorithme un par un, une fois que nous obtenons une instance oui, nous générons cet automate.
Je me demande si quelqu'un en sait quelque chose? Peut-être s'agit-il d'un problème connu et / ou d'une solution connue? Soit dit en passant, je pense que c'est décidable si vous introduisez la restriction qui dit que le langage généré par le PDA est le mot problème d'un groupe.
Réponses:
Prenons un TM déterministeM et un mot w . Considérez ses historiques de calcul pour le mot w . Soit L des historiques invalides (ceux qui ne commencent pas par w , ne se terminent pas par l'acceptation ou ne sont pas valides). Soit L = A∗ ( M n'accepte pas w ) ou L = A∗- { h } pour une chaîne h ( M accepte w avec l'historique de calcul h ). Tout d'abord, L est une LFC efficace, dans le sens où vous pouvez construire une grammaire / PDA en la reconnaissant. De plus, L est un DCFL (non efficace), mais vous ne pouvez pas montrer un DPDA de manière efficace. Plus encore, L est (non efficace) régulier.
Petite précision:
Vous avez demandé si le problème suivant est décidable:
étant donné PDAM promis que L ( M) est un DCFL, et un DPDA N déterminer si L(M)=L(N) .
La réponse est non, et en fait le fait fort suivant est vrai: Le problème suivant est indécidable:
étant donné que le PDAM promis que L(M) est régulier, déterminez si L(M)=A∗ .
la source