Im Unterricht zeigte uns unser Professor drei Methoden zum Nachweis der Nichtregelmäßigkeit:
- Myhill-Nerode-Theorem
- Pumping Lemma für reguläre Sprachen
- Beweis der Nichtregelmäßigkeit, basierend auf der Kolmogorov-Komplexität
Jetzt habe ich die ersten beiden, Myhill-Nerode-Theorem und Pumping-Lemma, gut verstanden und konnte auch die Übungen zu den ersten beiden Methoden machen. Aber den dritten habe ich nicht verstanden. Die Definition der dritten Methode lautet wie folgt:
Sei L ⊆ ( Σ b o o l ) ∗ eine reguläre Sprache. Sei L x = { y ∈ ( Σ b o o l ) ∗ | x y ∈ L } für jedes x ∈ ( Σ b o o l ) ∗ . Dann existiert eine Konstante c , so dass für alle x , y ∈ ( Σ b o
wenn y das n-te Wort in der Sprache L x ist .
Jetzt verstehe ich nicht, wie ich diesen Satz verwenden soll, um zu beweisen, dass eine Sprache nicht regelmäßig ist. Ich verstehe das Konzept nicht wirklich. Wir haben die Kolmogorov-Komplexität zuvor verwendet, um die Länge des kürzesten Computerprogramms eines Objekts zu bestimmen. Wie beweist man mit diesem Satz die Unregelmäßigkeit? Und was ist der Gedanke dahinter?
Vielen Dank!
Ich gebe Ihnen einen sehr informellen Beweis in der Hoffnung, dass er Ihnen helfen kann, die Rolle der Kolmogorov-Komplexität besser zu verstehen.
quelle