Równoważność automatów wielotaśmowych Dariusz Leniowski 07.05.2008
1 Automaty Automaty probabilistyczne Monoidy S-automaty Automaty wielotaśmowe (2-taśmowe) 2 Pierścienie i R-S-automaty Pierścienie Automaty z krotnościami (ważone) Pierścienie grupowe 3 Równoważność R-S-automatów Wprowadzenie Twierdzenie Eilenberga Podsumowanie Plan prezentacji
Przypomnienie Na automat skończony składają się: Σ alfabet wejściowy, Q skończony, niepusty zbiór stanów, I stan początkowy, F zbiór stanów końcowych, E Q Σ Q relacja przejścia (zbiór krawędzi).
Definicja Na automat probabilistyczny składają się: Σ alfabet wejściowy, Q skończony, niepusty zbiór stanów, I : Q [0,1] rozkład początkowy, F : Q {0,1} funkcja charakterystyczna zbióru stanów końcowych, E Q Σ Q relacja przejścia (zbiór krawędzi). µ : E [0, 1] funkcja określająca prawdopodobieństwo przejścia. Gdyµjest przedstawiona w postaciµ :Σ Q Q [0,1], wtedy µ (σ) jest macierzą przejścia dla literyσ.
Przykład a:1.0 1 a:0.2 2 a:0.8 b:0.5 b:1.0 b:0.5 µ (a)= 0.0 0.2 0.0 0.8 0.0 1.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 1.0 3 4 a:1.0 b:1.0 a,b:1.0 µ (b)= 0.0 0.0 0.5 0.5 0.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 1.0
Definicja Problem równoważności Dwa automaty probabilistyczne są równoważne, jeżeli dla każde słowo jest akceptowane z tym samym prawdopodobieństwem. Inaczej Niechµ 1,µ 2 będą macierzami przejścia automatów A 1 i A 2, oraz µ(σ 1 σ 2...σ n )=µ(σ 1 )µ(σ 2 )...µ(σ n ). Wtedy I T iµ i (σ 1 σ 2...σ n )F i jest prawdopodobieństwem zaakceptowania słowaσ 1 σ 2...σ n przez automat A i. Wtedy A 1 i A 2 są równoważne wtedy i tylko wtedy, gdy σ 1 σ 2...σ n I T 1 µ 1 (σ 1 σ 2...σ n )F 1 = IT 2 µ 2 (σ 1 σ 2...σ n )F 2
Suma automatów i ich macierz przejścia Dla automatów A 1 i A 2 o wspólnym alfabecie rozważmy automat A=A 1 + A 2 taki, że: Q=Q 1 + Q 2 suma rozłączna, I Q1 = 0.5 I 1, I Q2 = 0.5 I 2, µ(σ) Q1 =µ 1 (σ), µ(σ) Q2 =µ 2 (σ) dla dowolnegoσ Σ. µ1 (σ) 0 µ(σ)= 0 µ 2 (σ)
Zamiast badać równości Problem równoważności przeformułowanie zbadajmy różnicę I T 1 µ 1 (σ 1 σ 2...σ n )F 1 = IT 2 µ 2 (σ 1 σ 2...σ n )F 2 I T 1 µ 1 (σ 1 σ 2...σ n )F 1 IT 2 µ 2 (σ 1 σ 2...σ n )F 2 = 0 Niech F Q1 = F 1 oraz F Q2 = F 2. Wystarczy wtedy sprawdzić, czy istnieje słowoσ 1 σ 2...σ n t.że I T µ(σ 1 σ 2...σ n )F 0
Obserwacja Zauważmy, że I T µ(σ 1 σ 2...σ n ) jest wektorem skończonego wymiaru, dodanie kolejnej literkiσ n+1 odpowiada przemnożeniu go przezµ(σ n+1 ),
ε Drzewo słów a b aa ab ba bb aaa aab aba abb baa bab bba bbb
Obserwacji ciąg dalszy Lemat Wektory odpowiadające potomkom wierzchołka, którego wektor jest liniowo zależny są liniowo zależne. Wynika z tego, że dla kolejnych słów(σ 1 ),(σ 1 σ 2 ),...,(σ 1 σ 2...σ n ) możemy mieć co najwyżej Q 1 + Q 2 1 niezależnych liniowo wektorów, wystarczy sprawdzić równośćα i F= 0, gdzieαto otrzymane niezależne liniowo wektory.
[0,0.2,0,0.8] Obcięte drzewo słów [0,0.2,0,0.8] aa a aba [0,0,0,1] ab ε [1,0,0,0] [0,0,0,1] ba [0,0,0,1] abb [0,0,0,1] b [0,0,0.5,0.5] bb [0,0,0.5,0.5]
Algorytm Niech span(v) przestrzeń liniowa rozpiętą przez wektory z V. Wejście: A 1 =(Σ,Q 1,I 1,F 1,µ 1 ), A 2 =(Σ,Q 2,I 2,F 2,µ 2 ) 1 V 2 queue {node(ε)} 3 while queue is not empty do 4 node(x) queue.pop 5 if Iµ(x) / span(v) then 6 for each σ Σ do 7 queue.add node(xσ) 8 V V {Iµ(x)} 9 for each v V do 10 if vf 0 then 11 return no 12 return yes
Monoidy : definicja Monoid S=(,,1) to struktura, w której 1 s= s=s 1 element neutralny (s 1 s 2 ) s 3 = s 1 (s 2 s 3 ) łączność Na przykład (,+,0) grupy, pierścienie, ciała (Σ,,ε) (,,id)
Produkt Niech S=(, S,ε S ) oraz T=(, T,ε T ), wtedy produktem S T=(, U,ε U ) nazywamy monoid, w którym = (s 1, t 1 ) U(s 2, t 2 )=(s 1 S s 2, t 1 T t 2 ) ε U =(ε S,ε T )
Produkt wolny Niech S=(, S,ε S ) oraz T=(, T,ε T ), wtedy produktem wolnym S T=(, U,ε U ) nazywamy monoid, w którym ={ } stanowią ciągi napisów z łożone liter z alfabetów oraz s 1 t 2 s 3 U s 4 t 5 = s 1 t 2 (s 3 S s 4 )t 5 które skracają się w obrębie S lub T, ale nie pomiędzy sobą. =ε U =ε S =ε T przy czym utożsamia się elementy neutralne z obu struktur.
Definicji ciąg dalszy Monoid ze skończonym rozkładem to taki monoid, w którym dla każdego elementu s istnieje skończenie wiele rozkładów s=s 1 s 2...s n. W szczególności wynika z tego, że s 1 s 2 =ε= s 1 = s 2 =ε. Monoid konserwatywny to taki monoid ze skończonym rozkładem, w którym istnieje zbiór generatorów B taki, że z warunku s 1 s 2...s n = r 1 r 2... r m dla s i,r i B wynika, że n=m.
S-automaty : definicja Niech S będzie dowolnym monoidem ze skończonym rozkładem. Wtedy na S-automat składają się S monoid jako alfabet, Q skończony, niepusty zbiór stanów, I zbiór stanów początkowych, F zbiór stanów końcowych, E Q S + Q relacja przejścia, nie ma krawędzi o etykietachε S.
Automaty wielotaśmowe (2-taśmowe) : definicja Na automat 2-taśmowy składają się: Σ alfabet wejściowy, Γ alfabet wyjściowy, Q skończony, niepusty zbiór stanów, I zbiór stanów początkowych, F zbiór stanów końcowych, E Q Σ {ε} Γ {ε} Q relacja przejścia.
Przykład ε:0 0:0 0:ε ε:1 1:ε 1 2 3 Automat wielotaśmowy jako S-automat Automat wielotaśmowy jest przykładem(σ Γ )-automatu.
Przecięcie automatów Niech A 1 będzie automatem rozpoznającym język {(0 n 10 m,0 k 10 n ) : n,m,k }. Niech A 2 będzie automatem rozpoznającym język {(t,t) : t {0,1} }. Wtedy A 1 A 2 rozpoznawałby język{0 n 10 n : n }, co jest sprzeczne z lematem o pompowaniu. Wniosek Klasa automatów wielotaśmowych nie jest zamknięta na przecięcia.
Programy o stałej pamięci Twierdzenie Każdy program działający w stałej pamięci da się zasymulować na automacie wielotaśmowym. Twierdzenie Dla dowolnego automatu wielotaśmowego da się napisać program działający w pamięci stałej, który będzie go symulował.
Pierścienie : definicja i przykłady Pierścień (z jedynką) to stuktura algebraiczna o sygnaturze (P,+,,,0,1), w której (P, +,, 0) jest grupą przemienną, (P,,1) jest monoidem, zachodzi rozdzielność dodawania względem mnożenia: (a+b) c=a c+b c. a (b+c)=a b+a c. Półpierścień to pierścień bez odejmowania.
Definicja Automatem z krotnością (ważonym) nazwiemy dowolny automat A=(Σ,Q,E,I,F) wraz z funkcją µ : E R nazywaną krotnością(wagą) krawędzi, gdzie R jest dowolnym pierścieniem. Krotnością ścieżki p nazywamy iloczynµ(p)=µ(e 1 )µ(e 2 )...µ(e n ). Krotnością słowa s nazwiemy sumę mult A (s)= p µ(p) po wszystkich ścieżkach p, które akceptują s.
Definicja R-S-automat Niech S będzie monoidem ze skończonym rozkładem, R dowolnym pierścieniem, wtedy R-S-automatem nazwiemy krotkę A=(S,Q,E,µ,I,F) taką, że(s,q,e,i,f) jest S-automatem oraz µ : E R jest funkcją krotności(wagi) krawędzi. Analogia Tak jak zwykły S-automat ma się do zwykłego automatu, tak R-S-automat ma się do automatu z krotnością: automat z krotnością jest R-Σ -automatem. Przykład Automat probabilistyczny jest[0,1]-σ -automatem.
Pierścienie grupowe : definicja Rozważmy zbiór szeregów formalnych R[[G]] nad G ze współczynnikami w R. Niech n s s+ m s s= (n s + m s ) s s s s n s s m s s = s s s n u m v s u v=s wtedy R[[G]] nazywamy pierścieniem grupowym.
Przykład: [ 3 ] Niech r s= r,s wtedy ( 2,2 + 5,0 ) ( 1,2 + 1,1 )= =( 1,2 + 1,1 + 5,0 ) ( 2,2 + 5,0 )( 1,2 + 1,1 )= = 2,2 1,2 + 2,2 1,1 + 5,0 1,2 + 5,0 1,1 = = 2,1 + 2,0 + 5,2 + 5,1 = = 5,2 + 7,1 + 2,0
Przykład: [ ] Niech r s= rx s, wtedy (1x 5 + 5x 3 + 1x 1 ) (1x 5 + 1x 0 )=5x 3 1x 0 + 1x 1 (1x 5 + 5x 3 + 1x 1 )(1x 5 + 1x 0 )=1x 10 + 1x 5 + 5x 8 + 5x 3 + 1x 4 + 1x 1
Nośniki skończonej mocy Problem Niech x= + i= n i i. Ile wynosi x x? Rozwiązanie 1 Rozważajmy sumy tylko o skończonej liczbie składników.
Nośnik dobrze uporządkowane Problem Niech x= + i=0 n i i. Wtedy x x jest dobrze określone, x x= + i=0 in i i, ale nośnik x nie jest skończony. Definicja Zbiór W jest dobrze uporządkowany, gdy każdy podzbiór W posiada element najmniejszy. Rozwiązanie 2 Rozważajmy sumy o nośnikach dobrze uporządkowanych.
Grupa G jest liniowo uporządkowana, gdy istnieje porządek liniowy na G, który zachowuje prawe i lewe mnożenie, tzn g<h= gt<ht oraz tg< th. Pierścień z dzieleniem, inaczej ciało skośne, to struktura o sygnaturze ciała, której mnożenie nie musi być przemienne.
Twierdzenie Niech G będzie liniowo uporządkowaną grupą, wtedy P wo [[G]] jest pierścieniem z dzieleniem. Twierdzenie Niech S będzie podmonoidem liniowo uporządkowanej grupy G oraz niech R będzie podpółpierścieniem pierścienia z dzieleniem. Wtedy R[S] jest podpółpierścieniem pierścienia z dzieleniem.
Problem odpowiedniości Posta przypomnienie Problem NiechΣbędzie alfabetem, a P zbiorem par słów nadσ: P={(x 1,y 1 ),(x 2,y 2 ),...,(x k,y k ) : l i,r i Σ } Czy dla danego P istnieje ciąg indeksów w 1,w 2,...,w s {1,2,...,k} takie, że x w1 x w2...x ws = y w1 y w2...r ws? Odpowiedź Ten problem jest nierozstrzygalny.
Automaty niedeterministyczne Niech P będzie opisanym wcześniej zbiorem par słów nad pewnym alfabetemγ. NiechΣ={1,2,...,k} będzie alfabetem wejściowym automatów A 1 i A 2, aγalfabetem wyjściowym. Rozważmy automat A 1, który dla dowolnego wejścia generuje dowolne wyjście, oraz automat A 2, który dla wejścia i 1 i 2... i n generuje słowo w takie, że w x i1 x i2...x in lub w y i1 y i2... y in. Wtedy A 1 jest równoważny A 2 wtedy i tylko wtedy, kiedy problem odpowiedniości posta nie ma pozytywnej odpowiedzi dla P. Wniosek Równoważność niedeterministycznych automatów wielotaśmowych jest nierozstrzygalna.
Równoważność w sensie krotności Definicja Powiemy, że R-S-automaty A 1 i A 2 są równoważne w sensie krotności, jeżeli dla dowolnego słowa s krotności mult A1 (s)=mult A2 (s).
Automaty z ε-krawędziami Niech A 1, A 2 będą dowolnymi R-S-automatami. Niech A 1, A 2 powstaną z odpowiednio A 1 i A 2 przez dodanie dla każdego stanu q krawędzie(q,ε,q),µ((q,ε,q))=2. Wtedy A 1 i A są równoważne w 2 sensie krotności (krotności wszystkich elementów z S akceptowanych przez A i są nieskończone) wtedy i tylko wtedy, gdy A 1 i A 2 są równoważne. Wniosek Równoważność w sensie krotności automatów z ε-krawędziami jest nierozstrzygalna.
Twierdzenie Eilenberga Twierdzenie Niech Σ będzie alfabetem oraz niech R będzie podpółpierścieniem pierścienia z dzieleniem. Wtedy dla dwóch znormalizowanych R-Σ -automatów A 1 oraz A 2 mult A1 (s)=mult A2 (s) jest prawdziwe dla każdego s S wtedy i tylko wtedy, gdy mult A1 (s)=mult A2 (s) dla wszystkich s S takich, że s < A 1 + A 2.
Konstrukcja równoważnego R[S]-{a} -automatu Niech S będzie konserwatywnym monoidem oraz niech A=(S,Q,E,µ,I,F) będzie znormalizowanym R-S-automatem. Wtedy R[S]-{a} -automat A (a) =(Q,E (a),µ (a),i,f) zdefiniowany jest przez E (a) ={(q,a,p) :(q,s,p) E} µ (a) ((q,a,p))= s S (1) µ((q,s,p)) s
Twierdzenie o równoważności problemów Niech A 1 i A 2 będą znormalizowanymi R-S-automatami, gdzie S jest konserwatywnym monoidem. Wtedy mult A1 (s)=mult A2 (s) jest prawdą dla każdego s S wtedy i tylko wtedy, gdy mult A (a) 1 (u)=mult A (a) 2 (u) dla każdego u {a}.
Dowód S jest konserwatywny, więc każda ścieżka, która akceptuje s w A i jest długości s. Wobec tego mult A1 (s)=mult A2 (s) zachodzi dla dowolnych s S wtedy i tylko wtedy gdy zachodzi dla dowolnego k dla downolnego s S (k). Zapisując to jako A1 s =kmult (s) s= mult A2 (s) s s =k (s w sumie są różne, więc tak naprawdę sprowadza się to do porównania współrzędnych indeksowanych przez s) dostajemy mult A (a) 1 (a k )=mult (a) A (a k ) 2
Przypomnienie Twierdzenie Niech G będzie liniowo uporządkowaną grupą, wtedy P wo [[G]] jest pierścieniem z dzieleniem. Twierdzenie Niech S będzie podmonoidem liniowo uporządkowanej grupy G oraz niech R będzie podpółpierścieniem pierścienia z dzieleniem. Wtedy R[S] jest podpółpierścieniem pierścienia z dzieleniem.
Uogólnienia twierdzenia Eilenberga Twierdzenie Niech S będzie monoidem konserwatywnym oraz niech R będzie podpółpierścieniem pierścienia z dzieleniem. Wtedy dla dwóch znormalizowanych R-S-automatów A 1 oraz A 2 mult A1 (s)=mult A2 (s) jest prawdziwe dla każdego s S wtedy i tylko wtedy, gdy mult A1 (s)=mult A2 (s) dla wszystkich s S takich, że s < A 1 + A 2.
Twierdzenie Każdą grupę wolną da się liniowo uporządkować. Twierdzenie Produkt grup liniowo uporządkowanych jest liniowo uporządkowany. Twierdzenie Niech S będzie produktem wolnych monoidów oraz niech R będzie podpółpierścieniem pierścienia z dzieleniem. Wtedy dla dwóch znormalizowanych R-S-automatów A 1 oraz A 2 mult A1 (s)=mult A2 (s) jest prawdziwe dla każdego s S wtedy i tylko wtedy, gdy mult A1 (s)=mult A2 (s) dla wszystkich s S takich, że s < A 1 + A 2.
Twierdzenie Niech S będzie produktem wolnych monoidów oraz niech R będzie podpółpierścieniem pierścienia z dzieleniem. Wtedy dla dwóch znormalizowanych R-S-automatów A 1 oraz A 2 mult A1 (s)=mult A2 (s) jest prawdziwe dla każdego s S wtedy i tylko wtedy, gdy mult A1 (s)=mult A2 (s) dla wszystkich s S takich, że s < A 1 + A 2. Twierdzenie Równoważność w sensie krotności dla automatów wielotaśmowych jest rozstrzygalna. Twierdzenie Problem równoważności dla wielotaśmowych automatów deterministycznych jest rozstrzygalny.
S. Eilenberg. Automata, Languages and Machines. Academic Press, New York, 1974. T Harju and J Karhumaki. The equivalence problem of multitape finite automata. Theoretical Computer Science, (78):347 355, 1991. Donald S. Passman. The Algebraic Structure of Group Rings. Wiley-Interscience, 1977. M. O. Rabin and D. Scott. Finite automata and their decision problems. IBM Journal of Research and Development, 3(2), 1959. Wen-Guey Tzeng. A polynomial-time algorithm for the equivalence of probabilistic automata. SIAM J. Comput., 21(2):216 227, 1992.