Hintergrund:
Bei zwei deterministischen endlichen Automaten A und B bilden wir das Produkt C, indem wir die Zustände in C das kartesische Produkt von Zuständen in A und Zuständen in B sein lassen C ist der Schnittpunkt der Sprachen für A und B.
Fragen:
(1) Können wir C durch B "teilen", um A zu finden? Ist A einmalig bis zum Isomorphismus? Wir kümmern uns um die Zustandsdiagramme, nicht um die Sprachen hier und unten. Daher dürfen die Zustandsdiagramme nicht komprimiert werden, um die Anzahl der Zustände zu verringern.
(2) Wenn A eindeutig ist, gibt es einen effizienten Algorithmus, um es zu finden?
(3) Hat jeder deterministische endliche Automat eine eindeutige Faktorisierung in "Primzahlen"? Eine Primzahl bedeutet hier einen Automaten, der nicht berücksichtigt werden kann, dh als Produkt von 2 kleineren Automaten geschrieben ist.
- Arbeite mit @MichaelWehar
quelle
Antworten:
Schauen Sie sich dieses MFCS 2013-Papier an , das die Komposition in Automaten untersucht. Vielleicht hilft es.
quelle
Geben wir einen offensichtlichen Weg, um einen "Faktor" des Produktautomaten wiederzugewinnen. Wenn und A = A 1 × A 2 den Produktautomaten bezeichnet, dann definieren wir π 1 ( ( q , q ′ ) ) : = q dh A 2 einfach vergessenAi=(Qi,δi,q0i,Fi),i=1,2 A=A1×A2
Wenn wir also wissen, dass ein Automat ein kartesischer (oder externer) Produktautomat ist, können wir die Faktoren leicht wiederfinden.
Aber ich denke, das ist nicht das, was Sie in Bezug auf Ihre anderen Fragen im Sinn haben. Hier stellen sich zwei Fragen (im Folgenden meine ich mit Automatenisomorphismus isomorph als Zustandsgraph, dh ohne Berücksichtigung von Anfangs- oder Endzuständen, wie Sie sagten, die Sprache ist hier nicht so sehr von Belang):
1) Ist diese Zerlegung bei jedem Automaten, der zu einem Produktautomaten isomorph ist (dh auf irgendeine Weise zerlegt werden könnte), einer endlichen Anzahl von Automaten im wesentlichen einzigartig? (vorausgesetzt, die Faktoren könnten nicht weiter zerlegt werden, sonst offensichtlich nicht). Genauer gesagt, wenn für nicht zusammensetzbare Automaten A i , B j
2) Bei zwei beliebigen AutomatenA,B C A=B×C
Es ist leicht, die notwendigen Bedingungen dafür abzuleiten, aber ich sehe keine einfachen ausreichenden Kriterien dafür, dass ein Automat ein Faktor eines anderen ist.
H. Straubing, P. Weil Einführung in endliche Automaten und deren Verknüpfung mit der Logik,
Kurswebsite mit vielen Informationen.
Bemerkung : Es gibt auch einen anderen Begriff von " Quotientierung ", siehe Wikipedia: Quotientautomat , aber dies ist nur eine Regel für das Zusammenfallen von Zuständen und wird in Lern- / Sprachinferenzalgorithmen oder bei der Zustandsminimierung verwendet.
quelle