Je suis tombé sur cette question: "Donnez des exemples de deux langues régulières dont leur union ne produit pas une langue régulière."
C'est assez choquant pour moi parce que je crois que les langues régulières sont fermées sous l'union. Ce qui signifie pour moi que si je prends deux langues régulières et les union, je dois avoir une langue régulière.
Et je pense que j'en comprends la preuve: selon mes mots, si les langues sont régulières, alors il existe des automates qui les reconnaissent. Si nous prenons tous les états (union), et nous ajoutons un nouvel état pour le point d'entrée, et nous modifions la fonction de transition pour le nouvel état avec epsilon, nous sommes ok. Nous montrons également qu'il existe un chemin de chaque état, etc.
Pouvez-vous me dire où je me trompe, ou peut-être une autre façon d'aborder la question.
Source de la question, exercice 4, en français.
En outre, la même question est posée avec l'intersection.
Réponses:
Il y a une différence significative entre la question telle que vous la posez et la question posée dans l'exercice. La question demande un exemple d'un ensemble de langues régulières telles que leur union n'est pas régulière. Notez la plage de l'union: à . Les langues régulières sont fermées sous l' union finie , et les preuves vont dans le sens que vous esquissez dans la question, mais cela tombe sous l' union infinie . Nous pouvons le montrer en prenant pour chaque (avecL = ∞ ⋃ i = 1 L i 1 ∞ L i = { 0 i 1 i } i Σ = { 0 , 1 } L = { 0 i 1 i ∣ i ∈ N }L1, L2, …
En passant, nous pouvons voir facilement où la preuve normale échoue. Imaginez la même construction où nous ajoutons un nouvel état de démarrage et des transitions aux anciens états de démarrage. Si nous faisons cela avec un ensemble infini d'automates, nous avons construit un automate avec un nombre infini d'états, contredisant évidemment la définition d'un automate fini .ε
Enfin, je suppose que la confusion peut provenir de la formulation de la question originale, qui commence "Donner deux exemples des suites de langages ...", qui est (à
peu près, mon français est un peu rouillé, mais vérifié de l'extérieur!) "Donnez deux exemples de séquences de langues ...", plutôt que "Donnez deux exemples de langues ...". Une lecture imprudente peut cependant confondre la seconde avec la première.la source
Pour votre deuxième question, considérez les langues définies par Observez que pour tout , est régulier, car (1) l'ensemble gauche est fini et donc régulier, (2) l'ensemble droit est désigné par l'expression régulière est donc régulier, et (3) les langues régulières sont fermées sous des unions finies, comme vous le savez déjà.
Il n'est pas trop difficile de montrer que pour tout entier nous avons et donc donc inductivement nous avons (dont nous n'avons pas réellement besoin ici, mais c'est trop joli pour être laissé de côté).n≥1 Mn+1⊆Mn Mn∩Mn+1=Mn+1
Maintenant, observez que ne contient pas , donc aucune de ces chaînes sera dans l'intersection complète. En conséquence, nous aurons qui est connu pour ne pas être un langage régulier. (Si vous ne le saviez pas, c'est dans de nombreux textes théoriques et la preuve en vaut la peine.)Mn an2+1,an2+2,…,a(n+1)2−1
la source
Pourquoi choisir des langues régulières compliquées pour montrer que les ensembles réguliers ne sont pas fermés sous une union infinie? Les langues singleton suffisent à montrer que toute langue RE est une union infinie d'ensembles réguliers.
Prenez une langue récursive dénombrable . Chaque chaîne a un indice d'énumération . Soit . Chaque est un ensemble singleton, donc régulier. Mais est RE.w ∈ L i = i n d e x ( w ) L i = { w ∣ i = i n d e x ( w ) } L i L = ⋃ ∞ i = 1 L iL w∈L i=index(w) Li={w∣i=index(w)} Li L=⋃∞i=1Li
De même, en définissant , nous avons les ensembles qui sont réguliers en complément d'un ensemble singleton. Alors qui est le complément de , donc co-RE. Et cela peut être réalisé avec n'importe quel ensemble co-RE.M i ⋂ ∞ i = 1 M i = Σ ∗ ∖ LMi=Σ∗∖Li Mi ⋂∞i=1Mi=Σ∗∖L L
Par conséquent, tout langage récursif est une union infinie d'ensembles réguliers, et aussi une intersection infinie d'ensembles réguliers (pas les mêmes, mais leurs compléments :).
L'infini est plein de surprises, et ce qui est vrai pour des valeurs arbitrairement grandes peut ne pas être vrai à l'infini.
la source
la source