Gibt es eine algebraische Charakterisierung der Anzahl der Wörter einer bestimmten Länge in einer regulären Sprache?
Wikipedia gibt ein etwas ungenaues Ergebnis an:
Für jede reguläre Sprache existieren Konstanten und Polynome so dass für jedes die Anzahl von gilt Wörter der Länge in erfüllen die Gleichung .λ 1 ,p 1 ( x ) ,n s L ( n ) n L s L ( n ) = p 1 ( n ) λ n 1 + ⋯ + p k ( n ) λ n k
Es wird nicht angegeben, in welchem Raum die leben ( , nehme ich an) und ob die Funktion nichtnegative ganzzahlige Werte für . Ich hätte gerne eine genaue Aussage und eine Skizze oder einen Hinweis für den Beweis.C N
Bonusfrage: Ist das Umgekehrte wahr, dh gibt es bei einer Funktion dieser Form immer eine reguläre Sprache, deren Anzahl der Wörter pro Länge dieser Funktion entspricht?
Diese Frage verallgemeinert die Anzahl der Wörter in der regulären Sprache
quelle
Antworten:
Wenn eine reguläre Sprache , betrachten Sie einige DFA als L akzeptierend , lassen Sie A seine Übertragungsmatrix sein ( A i j ist die Anzahl der Kanten, die von Zustand i zu Zustand j führen ), lassen Sie x den charakteristischen Vektor des Anfangszustands sein und lassen Sie y sei der charakteristische Vektor der akzeptierenden Zustände. Dann ist s L ( n ) = x T A n y .L L A Aij i j x y
Jordan-Theorem besagt , dass über die komplexen Zahlen, eine Matrix mit Blöcken von einem der Formen ähnlich ist ( λ ) , ( λ 1 0 λ ) , ( λ 1 0 0 λ 1 0 0 λ ) , ( λ 1 0 0 0 λ 1 0 0 0 λ 1 0 0 0 λ ) , … Wenn λ ≠ 0 , dann ist das nA
Zusammenfassend hat jeder Eintrag in entweder die Form oder die Form , und wir schließen daraus, dass für einige komplexe und komplexe Polynome . Insbesondere für die groß genug , um , Dies ist die genaue Angabe des Ergebnisses.EINn ( nk) λn - k [ n = k ]
Wir können weiterhin asymptotische Informationen über , aber dies ist überraschenderweise nicht trivial. Wenn es ein eindeutiges der größten Größe gibt, sagen wir , dann ist Komplizierter wird es, wenn es mehrere der größten Größenordnung gibt. Es kommt also vor, dass ihr Winkel rational sein muss (dh bis zur Größe sind sie Wurzeln der Einheit). Wenn die LCM der Nenner , dann wird die Asymptotik von sehr nach dem Rest von Modulo . Für einige dieser Reste giltsL(n) λi λ1
quelle
Sei eine reguläre Sprache undL⊆Σ∗
seine Erzeugungsfunktion , wobei und damit .Ln=L∩Σn |Ln|=sL(n)
Es ist bekannt , daß ist rational , alsoL(z)
mit Polynome; Dies ist am einfachsten zu sehen, wenn eine rechtslineare Grammatik für in ein (lineares!) Gleichungssystem übersetzt wird, dessen Lösung .L L ( z )P,Q L L(z)
Die Wurzeln von sind im Wesentlichen für, was zu dem auf Wikipedia angegebenen Formular führt. Dies hängt unmittelbar mit der Methode der charakteristischen Polynome zur Lösung von Wiederholungen zusammen (über die Wiederholung, die ).| L n | ( | L n | ) n ≤ NQ |Ln| (|Ln|)n∈N
quelle