Podajmy oczywisty sposób na odzyskanie jednego „czynnika” automatu produktu. Jeśli i A = A 1 × A 2 oznacza automat produktu, to jeśli zdefiniujemy
π 1 ( ( q , q ′ ) ) : = Q
czyli tylko zapomina o A 2Ai=(Qi,δi,q0i,Fi),i=1,2A=A1×A2
π1((q,q′)):=q
A2lub rzutując na drugi komponent, mamy
, także jeśli chcemy wiedzieć
δ 1 ( q , x ) wybierz trochę
q ′ ∈ Q 2 i oblicz w automacie iloczynu
π ( ( δ 1 ( q , x ) , δ 2 ( q ′ , x ) ) = δ 1 ( qQ1=π(Q1×Q2)δ1(q,x)q′∈Q2 , a więc, że może także odzyskiwać przejścia w
A 1 .
π((δ1(q,x),δ2(q′,x))=δ1(q,x)A1
Więc jeśli wiemy, że automat jest kartezjańskim (lub zewnętrznym) automatem produktu, możemy łatwo odzyskać czynniki.
Ale myślę, że nie to masz na myśli w odniesieniu do innych pytań. Pojawiają się tutaj dwa pytania (dalej przez automatyczny izomorfizm mam na myśli izomorficzny jako graf stanu, tj. Bez względu na stany początkowe lub końcowe, jak powiedziałeś, język nie jest tutaj tak bardzo istotny):
A1×…×Ak≅B1×…×Bl
Ai,Bjk=lAi≅Bπ(i)π:{1,…k}→{1,…k}
A,BCA=B×C
Łatwo jest ustalić niezbędne warunki, ale nie widzę żadnych łatwych wystarczających kryteriów, aby jakiś automat był czynnikiem innym.
π1((δ1(q,x),δ2(q′,x))=δ1(q,x)=δ1(π1(q,q′),x)
q∈Q1,q′∈Q2πA1×A2A2
A BBA
BA
MNMN
H. Straubing, P. Weil Wprowadzenie do automatów skończonych i ich związek z logiką,
Strona internetowa kursu z dużą ilością informacji.
Uwaga : Istnieje również inne pojęcie „ ilorazu ”, patrz wikipedia: iloraz automat , ale jest to tylko reguła dla stanów zwijania i stosowana w algorytmach uczenia się / wnioskowania języka lub minimalizacji stanu.