Sont DPDAs sans


16

Dans la description formelle des automates déterministes de refoulement, ils autorisent mouvements, où la machine peut faire apparaître ou pousser des symboles sur la pile sans lire un symbole de l'entrée. Si ces mouvements ϵ ne sont pas autorisés et que la pile ne peut être modifiée qu'une fois après chaque lecture de symbole, les automates résultants sont-ils égaux à la puissance des DPDA?ϵϵ

Il peut y avoir quelque chose de trivial qui me manque en ce qui concerne l'utilisation du jeu de pouvoirs de comme nouveau Γ , vous permettant de "compresser" ϵ les mouvements dans l'automate équivalent sans eux, de la même manière que vous pouvez compresser ϵ mouvements dans un DFA. Il semble juste qu'une telle conversion ne soit pas aussi triviale que pour les DFA, et je ne suis pas sûr qu'elle soit même possible.ΓΓϵϵ

Les deux sont-ils donc équivalents en puissance? Je demande simplement parce que tout le monde semble supposer que les DPDA ont des mouvements et je me demande pourquoi cette hypothèse existe, car cela semble être un modèle plus complexe.ϵ


D'accord. Alors, y a-t-il une raison pour laquelle nous étudions uniquement les mouvements avec ? ϵ
Phylliida

1
Je viens donc de réaliser que vous pouvez réellement reconnaître . Vous commencez simplement dans un état accepté, puis en lisant le premier a , vous poussez & sur la pile, et en lisant le second a vous poussez # sur la pile. Après cela, vous écrivez un a dans la pile pour chaque autre a que vous lisez, en commençant par le a que vous lisez après avoir poussé # dans la pile. L={a2nbn}aaaaa
Phylliida

Ensuite, si vous lisez un tout en sachant que vous lisez un nombre impair de a que vous rejetez (assis dans un état coincé), sinon vous passez dans un autre état et poussez un a hors de la pile. Vous répétez cela pour chaque lecture b . Si finalement, lors de l'analyse d'un b , # est en haut de la pile au lieu d'un a , entrez un état d'acceptation. Entrez ensuite un état de rejet si d'autres symboles sont lus. Dans tous les cas différents de ceux décrits ci-dessus, entrez un état de rejet. Est-ce que ça marche? baabba
Phylliida

Ça me semble bien.
Klaus Draeger

1
Corrigez-moi si je me trompe, mais je suis d'accord. Je crois également que vous pouvez reconnaître avec un DPDA qui se déplace toujours à droite sur la bande d'entrée (sans jamais s'arrêter). La seule partie délicate est de le faire terminer à l'état final. L'acceptation des DPDA peut être délicate. {a2nbn}
Michael Wehar

Réponses:


18

J'ai peut-être trouvé des informations pertinentes dans:

Jean-Michel Autebert, Jean Berstel, Luc Boasson; Langues sans contexte et automates de refoulement; Manuel des langues formelles; 1997, pp 111-174

Les DPDA sans transition sont appelésϵ automates déterministes déterministes en temps réel .

Ils sont moins puissants que les DPDA, par exemple

L={anbpcanp,n>0}{anbpdbpp,n>0}

est déterministe et peut être reconnu par un DPDA, mais ne peut être reconnu par aucun DPDA en temps réel .

Qu'est - ce que vous pouvez faire est d' éliminer de plus en plus ϵ -Transitions:

Proposition 5.4 : Pour tout DPDA, il est possible de construire un DPDA reconnaissant le même langage de telle sorte que toute règle diminue.ϵ


1
Génial merci! Cela répond donc à la première partie de ma question. La deuxième partie est - pourquoi ne les étudions-nous pas? Tout le monde semble concentré sur ceux qui ne sont pas en temps réel et cela me semble étrange.
Phylliida

2
@DanielleEnsign: en parcourant Google, vous pouvez trouver des résultats sur les RDPDA, par exemple le problème d'équivalence est décidable . Mais je suis d'accord avec vous, ils n'ont pas attiré beaucoup d'attention.
Marzio De Biasi
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.