Minimiser les automates acceptant les mots (c'est-à-dire des mots infinis)


10

Quelle est l'approche standard pour minimiser Büchi-Automata (ou aussi Müller-Automata)? Le transfert de la technique habituelle à partir de mots finis, c'est-à-dire la mise à égalité de deux états si les mots "en cours d'exécution" des états acceptés sont les mêmes, ne fonctionnera pas. Par exemple, considérons le Büchi-Automoton acceptant tous les mots avec un nombre infini de a composé de deux états, un état initial et un état final, et l'état final est entré chaque fois qu'un a est lu, et l'état initial est entré chaque fois qu'un un symbole différent est lu. Les deux états sont considérés comme égaux par la définition ci-dessus, mais leur effondrement produit un automate composé d'un seul état, et acceptant ainsi tous les mots.

Réponses:


12

En général, ω langues ne peuvent pas avoir réguliers réguliers une DBW minimale unique. Par exemple, le langage "infiniment de a et infiniment de b" a deux DBW à 3 états (dans l'image, remplacez ¬a par b ): Deux DBW minimaux pour la même langue

Comme vous pouvez le voir, ils ne sont pas topologiquement équivalents.

Par conséquent, le problème de minimisation est plus difficile que le cas fini, et en fait, il est NP-complet .


J'ai trouvé trois Büchi-Automata déterministes à 3 états, deux sont structurellement très similaires (ils diffèrent simplement par les étiquettes sur leurs transitions), mais voudriez-vous quand même donner vos machines, juste pour comparaison :) Merci pour l'article!
StefanH

@Stefan - a ajouté l'exemple.
Shaull

Celui de gauche que j'ai aussi, mais j'en ai aussi un autre, je l'ai posté en tant que modification dans ma question.
StefanH

L'automate que vous avez ajouté est incorrect - il n'accepte pas le mot (bab)ω=babbabbabbab...
Shaull

En ce qui concerne les DBW, je me demandais si le problème est toujours difficile si nous considérons un alphabet , disons binaire. Qu'est-ce que tu penses? Et en ce qui concerne les états équivalents, ne pouvons-nous en quelque sorte limiter le nombre d'états équivalents dont nous avons besoin?! Par exemple, je crois que l'on peut délimiter le nombre d'états avec une seule flèche sortante (étiquetée "vrai"). constant
Bader Abu Radi

13

Cette question a généré beaucoup de littérature dans les années 80, en partie à cause d'une mauvaise approche du problème. C'est une histoire assez longue que je vais essayer de résumer dans cette réponse.

1. Le cas des mots finis

On peut trouver deux définitions d'un DFA minimal dans la littérature. La première consiste à définir le DFA minimal d'une langue régulière comme le DFA complet avec le nombre minimum d'états acceptant la langue. Le second est plus long à définir mais est mathématiquement plus attrayant que le premier et il donne des propriétés plus fortes.

Rappelons qu'un DFA est accessible si pour tout q Q , il y a un mot u A tel que i u = q . Il est complet si q un est défini pour tout q Q et un A .(Q,A,,i,F)qQuAiu=qqaqQaA

Soit et A 2 = ( Q 2 , A , , i 2 , F 2 ) soient deux DFA complets et accessibles. Un morphisme de A 1 à A 2 est une fonction φ : Q 1Q 2 telle queA1=(Q1,A,,i1,F1)A2=(Q2,A,,i2,F2)UNE1UNE2φ:Q1Q2

  1. ,φ(je1)=je2
  2. ,φ-1(F2)=F1
  3. pour tout et a A , φ ( q ) a = φ ( q a ) .qQ1uneUNEφ(q)une=φ(qune)

On peut montrer que ces conditions impliquent que est nécessairement surjectif (et donc | Q 2 || Q 1 | ). De plus, il y a au plus un morphisme de A 1 à A 2 et si ce morphisme existe, alors A 1 et A 2 reconnaissent le même langage. Maintenant, on peut montrer que pour chaque langue L , il y a un DFA complet unique , accessible A L accepter L et tel que, pour tous les DFA , stockable A accepter Lφ|Q2||Q1|UNE1UNE2UNE1UNE2LUNELLUNEL, Il existe un morphisme de sur A L . Cet automate est appelé DFA minimal de L . Notez encore que puisque le nombre d'états dans A L est plus petit que le nombre d'états dans A , A L est également minime dans le premier sens.UNEUNELLUNELUNEUNEL

Il convient de mentionner qu'il existe également une définition algébrique appropriée pour les DFA incomplets . Voir [Eilenberg, Automata, Languages ​​and Machines , vol. A, Academic Press, 1974] pour plus de détails.

2. Retour aux mots infinis

L'extension de la première définition ne fonctionne pas, comme l'a montré Shaull dans sa réponse. Et malheureusement, on peut aussi montrer que la propriété universelle de la deuxième définition ne s'étend pas aux mots infinis, sauf dans quelques cas particuliers.

Est-ce la fin de l'histoire? Attendez une seconde, il y a un autre objet minimal qui accepte les langages normaux ...

3. L'approche syntaxique

Revenons d'abord aux mots finis. Rappelons que la langue de A * est reconnu par un monoid M s'il y a une surjective monoid morphisme f : A *M et d' un sous - ensemble P de M de telle sorte que f - 1 ( P ) = L . Encore une fois, il existe un monoïde M ( L ) , appelé le monoïde syntaxique de L , qui reconnaît L et est un quotient de tous les monoïdes reconnaissant LLUNE MF:UNEMPMF-1(P)=LM(L)LLL. Ce monoïde syntaxique peut être défini directement comme le quotient de par la congruence syntaxique L de L , définie comme suit: u L v  si et seulement si, pour tout  x , y A x u y LUNE LL La bonne nouvelle est que cette fois, cette approche a été étendue à des mots infinis, mais il a fallu beaucoup de temps pour découvrir les notions appropriées. En premier, le (A congruence syntaxique pour rationnels notion appropriée d'une congruence syntaxique a été trouvé par A. Arnoldco-langues,Sci. Theoret. Comput.39, 2-3 (1985), 333-335). L'extension des monoïdes syntaxiques à la définition de mots infinis nécessitait un type d'algèbres plus sophistiqué, appelé de nos joursalgèbres de Wilkeen l'honneur de T. Wilke, qui fut le premier à les définir (T. Wilke, Une théorie algébrique pour les langages réguliers de fini et d'infini mots,Int. J. Alg. Comput.3

uLv si et seulement si, pour tous X,yUNEXuyLXvyL
ω (1993), 447–489). Plus de détails peuvent être trouvés dans mon livre Infinite words co- écrit avec D. Perrin.

4. Conclusion

Il existe donc une notion mathématiquement saine d'un objet minimal acceptant un -langue régulier donné , mais il ne repose pas sur des automates. C'est en fait un fait assez générique: les automates sont un outil algorithmique très puissant, mais ils ne sont pas toujours suffisants pour traiter des questions mathématiques sur les langues.ω

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.