Die Sprache: {(a n b m ) r | n, m, r≥0} ist nicht regulär, da der Automat / die Maschine zwar die erste Folge von Buchstaben 'a' und dann die Buchstaben 'b' liest, aber zählen muss, wie oft er den Buchstaben 'a' und gelesen hat die Häufigkeit, mit der der Buchstabe 'b' in der ersten Sequenz gelesen wurde, um den Wert von n und m zu kennen .
Wenn r> 1 ist, wird eine andere gleiche Folge von Buchstaben 'a' und Buchstaben 'b' erwartet.
Wenn der Automat / die Maschine nicht weiß, wie viele Buchstaben 'a' und 'b' er in der ersten Sequenz gelesen hat , kennt er auch den Wert von n und m nicht und kann daher nicht sagen, ob Die anderen Sequenzen vom vorletzten bis zum letzten sind Wörter, die der ersten Sequenz entsprechen.
Es ist jedoch bekannt, dass nur eine Turing-Maschine die Werte von n und m zählen und kennen und die obige Sprache erkennen kann, so dass die obige Sprache nicht nur nicht regulär ist, sondern auch nicht kontextfrei, dh auch nicht kontextfrei nicht vorhanden Kellerautomaten , diese Sprache zu erkennen und sie nicht existiert kontextfreie Grammatik , dass jeder von dieser kontextfreien Grammatik abgeleiteten Wortes in der obigen Sprache.
Da die Tatsache, dass sowohl der deterministische endliche Automat als auch der endliche Pushdown-Automat die Werte von n und m im Gegensatz zur Turing-Maschine nicht zählen und kennen , können sie die obige Sprache nicht erkennen und daher ist die obige Sprache nicht kontextfrei und ist nicht regelmäßig.
Gegenbeispiel zu der Annahme, dass die obige Sprache regulär ist:
Für n = 3 ∧ m = 5 ∧ r = 2 ist das folgende Wort in der obigen Sprache:
aaabbbbbaaabbbbb
Aber das folgende Wort ist nicht in der Sprache:
aaabbbbbaaaaabbb, weil n, m und r nicht existieren , also:
(a n b m ) r = aaabbbbbaaaaabbb, denn um die erste Folge von Buchstaben 'a' und dann die Buchstaben 'b' zu erfüllen, muss wahr sein, dass n = 3 ∧ m = 5 ist und dass wir 2 Folgen von Buchstaben sehen ' a 'und dann Buchstaben' b ', dann r = 2 , aber wenn n = 3 ∧ m = 5 ∧ r = 2, dann (a n b m ) r = (a 3 b 5 ) 2 = (aaabbbbb) 2 = aaabbbbbaaabbbbb ≠ aaabbbbbaaaaabbb, weil ihre Suffixe unterschiedlich sind, dh aaabbbbb ≠ aaaaabbb, obwohl ihre Präfixe für r = 1 gleich aaabbbbb sind.
Der "beste" deterministische endliche Automat, der für diese Sprache gebaut werden kann, ist der deterministische endliche Automat, der den regulären Ausdruck (a * b *) * erkennt , aber die obige Sprache nicht erkennt, weil er sagt, dass beide Wörter aaabbbbbaaabbbbb und aaabbbbbaaaaabbb sind in der Sprache und dies ist nicht wahr, weil aaabbbbbaaabbbbb in der Sprache ist, aber aaabbbbbaaaaabbb ist nicht in der Sprache.
Selbst ein endlicher Pushdown-Automat kann nicht sagen, ob beide Wörter in der Sprache sind oder nicht, also kann nur die Turing-Maschine.
In der zweiten Sequenz stellte die Turing-Maschine fest, dass n = 5 ∧ m = 3 ist, und dies widerspricht, dass in der ersten Sequenz n = 3 ∧ m = 5 gefunden wurde , sodass das zweite Wort nicht in der Sprache ist , aber im ersten Wort findet sich kein Widerspruch.
Beide Sequenzen erfüllen n = 3 ∧ m = 5 , daher sagt die Turing-Maschine, dass das erste Wort in der Sprache ist.
Nur Turing-Maschinen können, wenn sie die Werte von n und m zählen und sich merken, indem sie ihren Wert auf das Band schreiben und später lesen.