Upload
urs-schmiege
View
107
Download
0
Embed Size (px)
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 1
Operationen auf endlichen Akzeptoren und Transduktoren
Kursfolien
Karin Haenelt
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 2
Notationskonventionen
L reguläre Sprache A endlicher Akzeptor DEA deterministischer endlicher Akzeptor NEA nichtdeterministischer endlicher Akzeptor NEA nichtdeterministischer endlicher Akzeptor mit -
Transitionen T Transduktor
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 3
Begriffe: Abgeschlossenheit
• Das Ergebnis einer Operation auf Elementen einer Menge liegt wiederum innerhalb dieser Menge
• Beispiel: – Vereinigung zweier regulärer Ausdrücke ergibt wieder einen
regulären Ausdruck
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 4
Begriffe: lazy implementation
• In der Praxis sind oft viele Zustände, die als Zwischenergebnis einer Operation entstehen, vom Startzustand aus nicht erreichbar
• lazy implementation:– unerreichbare Zustände gar nicht erst produzieren– Zustände nur nach Bedarf erzeugen
• Konstruktion mit Zustand [0,0] beginnen• weitere Zustände nur hinzufügen, wenn sie
Ergebnis einer Transition sind, die von einem bereits eingefügten Zustand ausgeht
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 5
Unäre Operationen(Operationen auf einem Automaten)
für Abgeschlossenheit L A T
L Komplement (complement) L, A,
T ja ja nicht
generell RL Umkehrung (reversal) L, A,
T ja ja ja
1T Inversion (Eingabe:Ausgabe-Umkehrung) (inversion)
T - - ja
'T Projektion (Umformung von FST in FSA) (projection)
T - - ja
*L Iteration (Hülle, Stern) (closure) L, A, T
ja ja ja
Homomorphismus L, A, T
ja ja ja
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 6
Binäre Operationen(Operationen auf zwei Automaten)
für Abgeschlossenheit L A T
21LL Konkatenation (Produkt, Verkettung) (product, concatenation)
L, A, T
ja ja ja
21 LL Vereinigung (Summe, Disjunktion) (sum, union)
L, A,T ja ja ja
21 LL Durchschnitt (intersection)
L, A, T
ja ja nicht generell
21 TT Komposition T - - sofern endlich-subsequentiell
21 AA Differenz L, A, T
ja ja nicht generell
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 7
Optimierungs-Operationen
für
- Connection A, T - Determinisierung A, T - Epsilon-Entfernung A, T - Pushing T - Minimierung A, T
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 8
Komplement regulärer Sprachen
(Hopcroft/Ullman 1988: 61)
Definition LL *
Bedeutung Sei L eine Sprache über einem Alphabet ,
dann enthält L alle Worte, die in * enthalten
sind, aber nicht in L
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 9
Komplement endlicher Automaten (1)
Definition ),,,,( 0 FqQA DEA
),,,,( 0 FQqQA DEA Bedeutung A akzeptiert genau die Worte aus ,
die A nicht akzeptiert Konstruktion - akzeptierende Zustände aus A werden zu nicht-
akzeptierenden Zuständen in A - und umgekehrt - falls A nicht deterministisch ist, muss A zuerst
determinisiert werden
(Hopcroft/Ullman 1988: 61)
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 10
Komplementendlicher Automaten (2)
NEA
Q adje dete nomn
0 - 1 - 2
1 2 - - 2
2 - - 3 -
3 f - - - -
0dete
1adje
2nomn
3
NEA
Q adje dete nomn
0 - {1,2} 3
1 2 - 3
2 - - 3
3 f - - -
0dete
1adje
2nomn
3
nomnnomn
dete
1. 2.
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 11
3.
Komplementendlicher Automaten (3)
partiell
DEA
Q adje dete nomn
0 [0] - 1 3
1 [1,2] 2 - 3
2 [2] - - 3
3 f [3] - - -
0dete
1adje
2nomn
3
nomnnomn
total
DEA
Q adje dete nomn 0 4 1 3 1 2 4 3 2 4 4 3 3 F 4 4 3 4 4 4 4
4.
0dete
adje
dete, adje,nomn
1adje
2nomn
3nomn
nomn
4dete
dete, adje,nomn
dete,adje
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 12
4.
Komplementendlicher Automaten (4)
DEA Q adje dete nomn 0 F 4 1 3 1 F 2 4 3 2 F 4 4 3 3 4 4 3 4 F 4 4 4
5.DEA Q adje dete nomn 0 4 1 3 1 2 4 3 2 4 4 3 3 F 4 4 3 4 4 4 4
0dete
adje
dete, adje,nomn
1adje
2nomn
3nomn
nomn
4dete
dete, adje,nomn
dete,adje
0dete
adje
dete, adje,nomn
1adje
2nomn
3nomn
nomn
4dete
dete, adje,nomn
dete,adje
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 13
Hülle regulärer SprachenDefinition Kleensche Hülle
0
*i
iLL , und es gilt }{0 L , 1i für LLL ii 1
positive Hülle
1i
iLL
Bedeutung *L bezeichnet die Wörter, die durch die Konkatenation
einer beliebigen Anzahl von Wörtern aus L entstehen.
(Hopcroft/Ullman, 1988: 28)
nL ist die Menge der Ketten, die in genau n Teilketten
zerlegbar sind, die zu L gehören. (Kunze, 2001: 177)
Beispiel }{haL , ,....},,,{* hahahahahahaL ,
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 14
Hülle endlicher Automaten (1)
1A }){,,,,( 11111 FqQ
}){,,,},,{( 001001 fqfqQ
definiert durch
),( 0 q }0,{),( 11 fqf
*1A
),( aq ),(1 aq für }{ 11 fQq und
}{ 1 a
Definition
(Hopcroft/Ullman, 1988: 32)
Bedeutung *A akzeptiert die Wörter, die durch die Konkatenation einer
beliebigen Anzahl von Wörtern aus A entstehen.
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 15
Hülle endlicher Automaten (2)
Konstruktion erzeuge
- Anfangszustand 0q
- Endzustand 0f
- -Transitionen von 0q nach 1q
- -Transitionen von 0q nach 0f
(modelliert Möglichkeit von null Vorkommen)
- -Transitionen von },...,,{ 11211 nfffF nach 1q
(modelliert Wiederholung)
- -Transitionen von },...,,{ 11211 nfffF nach 0f
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 16
Hülle endlicher Automaten (3)
q1 f1q0 f0
q1 f1q0 f0q2
h a
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 17
Konkatenation regulärer Sprachen
Definition }|{ 2121 LyLxxyLL
Bedeutung 21 LL enthält die Verkettung der Worte, die in
1L oder in 2L enthalten sind
Beispiel },{1 machlachL , },,{2 tsteL ,
},,,,,{21 machtmachstmachelachtlachstlacheLL
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 18
Konkatenation endlicher Automaten (1)
1A }){,,,,( 11111 FqQ
2A }){,,,,( 22222 FqQ
}){},{,,,( 212121 fqQQ
definiert durch
),( aq ),(1 aq für }{ 11 fQq und
}{ 1 a
),( aq ),(2 aq für }{ 22 fQq und
}{ 2 a
21 AAA
),( 1 f }{ 2q
Definition
(Hopcroft/Ullman, 1988: 31)
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 19
Konkatenation endlicher Automaten (2)
Bedeutung 21 AA akzeptiert die Verkettung der Worte, die 1L bzw.
2L akzeptieren
Konstruktion erzeuge -Transitionen von den Endzuständen von 1A zu
den Anfangszuständen von 2A
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 20
Konkatenation endlicher Automaten (3)
q1 f1 q2 f2
l ca
m10 11 12 1413
h e
s t20 21
22
t
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 21
Vereinigung regulärer Sprachen
Definition }|{ 2121 LxLxxLL
Bedeutung Seien 1L und 2L Sprachen über einem Alphabet , dann
enthält 21 LL alle Worte, die in 1L oder in 2L enthalten sind
Beispiel },{1 waldbahnL , },{2 lachbauL ,
},,,{21 waldlachbaubahnLL
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 22
Vereinigung endlicher Automaten (1)
1A }){,,,,( 11111 FqQ
2A }){,,,,( 22222 FqQ
}){,,,},,{( 00210021 fqfqQQ
0q neuer Anfangszustand
0f neuer Endzustand
definiert durch
),( 0 q },{ 21 qq
Definition
21 AAA
),( aq ),(1 aq für }{ 11 fQq und }{ 1 a
),( aq ),(2 aq für }{ 22 fQq und }{ 2 a
}{),(),( 021 fff
(Hopcroft/Ullman, 1988: 61)
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 23
Vereinigung endlicher Automaten (2)
Konstruktion erzeuge - Anfangszustand 0q
- -Transitionen von 0q zu den
Anfangszuständen von 1A und 2A
- Endzustand 0f
- -Transitionen von den Endzuständen
von 1A und 2A zu 0f
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 24
Vereinigung endlicher Automaten (3)
q1 f1
q2 f2
f0q0
b ha
w l da10 11 12 14
15 16 17
13n
b ua
l c ha20 21 22 23
24 25 26
0100
b ha
u
00 1121
1222 0113
n
w l da15 16 17
l c ha24 25 26
Prinzip
Beispiel alsNEA
Beispiel als“DEA“
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 25
Durchschnitt regulärer Sprachen
Definition }|{ 2121 LxLxxLL
Bedeutung Seien 1L und 2L Sprachen über einem
Alphabet , dann enthält 21 LL alle Worte,
die in 1L und in 2L enthalten sind
Beispiel {bau, glas, honig, wald} {bau, glas, lach,
mach} = {bau, glas}
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 26
Durchschnitt endlicher Automaten (1)
1A ),,,,( 111 FqQ
2A ),,,,( 222 FqQ
21 AAA ),,,,,( 212121 FFqqQQ
wobei für alle 11 Qp , 22 Qp und a
gilt: ),(),,(),,( 221121 apapapp
Definition
(Hopcroft/Ullman, 1988: 61)
Falls die Eingabealphabete der Automaten nicht identisch
sind, ist die Vereinigung der Alphabete der beiden
Automaten.
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 27
Konstruktion Sei Q1 = {q1, q2, …, qm} die Zustandsmenge von A1 Sei Q2 = {s1, s2, …, sm} die Zustandsmenge von A2
Ergebnis der Schnittbildung:
- das Kartesische Produkt Q1 x Q2 beider Zustandsmengen,
- Kante mit dem Etikett von Zustand ji sq zu Zustand
lk sq gibt es genau dann,
wenn es in den Originalautomaten Kanten mit dem Etikett
o von Zustand iq zu Zustand kq und
o von Zustand js zu Zustand ls gibt.
- Der Zustand ji sq ist nur dann ein Endzustand, wenn beide
Zustände der Originalautomaten iq aus Q1 und js aus Q2 Endzustände sind.
- Der Startzustand: Zustand sq , wobei q und s die Startzustände der Originalautomaten sind
Durchschnitt endlicher Automaten (2)
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 28
Durchschnitt endlicher Automaten (3)
b ha
u0 1 2 43
n
b ha
u
l c ha
0 1 2 4
5 6 7
3n
b ha
u
w l da
0 1 2 4
5 6 7
3n
21 AAA
1A
2A
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 29
Durchschnitt endlicher Automaten
green/0.3 blue/0
yellow/0.8
0.81 2
red/0.5
0 red yellow
blue0 1 2
green
3redgreenblueyellow
red
greenblueyellow
redgreenblueyellow
red green blue yellow A B A B A B A B A B 0 0 0 1 1 3 - - 0 1 0 3 1 1 - - 0 3 0 3 1 3 - - 1 1 - - 2 0 2 2 1 3 - - 2 3 2 3 2 0 - - - - 2 2 - - - - 2 3f - - - -
A B
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 30
Durchschnitt endlicher Automaten
green/0.3 blue/0
yellow/0.813 23
red/0.5red/0.500 03
red/0.5
green/0.3
blue/02011green/0.3
22
01
yellow/0.8
red green blue yellow A B A B A B A B A B 0 0 0 1 1 3 - - 0 1 0 3 1 1 - - 0 3 0 3 1 3 - - 1 1 - - 2 0 2 2 1 3 - - 2 3 2 3 2 0 - - - - 2 2 - - - - 2 3f - - - -
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 31
Differenz regulärer Sprachen
Definition }|{ 2121 LxLxxLL
Bedeutung Seien 1L und 2L Sprachen über einem Alphabet , dann
enthält 21 LL alle Worte, die in 1L aber nicht in
2L enthalten sind
Beispiel {bau, glas, honig, wald} - {bau, glas, lach, mach} = {honig,
wald}
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 32
Differenz endlicher Automaten (1)
Definition )]([)]([ 2121 xAAxAA (Mohri/Riley 2002: I, 19)
Bedingung 2A ungewichtet und deterministisch
Konstruktion Konstruktionsschritte vgl. Komplementbildung:
Wenn ein A bzw. T nicht vollständig ist (d.h. ist nur
eine partielle Funktion, d.h. nicht für alle Zustände gibt es
Kanten für alle Symbole aus ), muss zuerst ein „toter
Zustand“ konstruiert werden, zu dem die fehlenden
Übergänge führen.
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 33
Differenz endlicher Automaten (2)
BA
green/0.3 blue/0
yellow/0.8
0.83 4red/0.5red/0.5
0 2
red/0.5
1
green/0.3 blue/0
yellow/0.8
0.81 2
red/0.5
0red yellow
blue0 2
green
1
A B
(Mohri/Riley 2002: I, 24)
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 34
Differenz endlicher Automaten (3) - Konstruktionsschritte
red yellow
blue0 2
green
1
B1. 2. B komplettieren
red yellow
blue0 1 2
green
3redgreenblueyellow
red
greenblueyellow
redgreenblueyellow
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 35
Differenz endlicher Automaten (4) - Konstruktionsschritte
3. B Komplementbildung
red yellow
blue0 1 2
green
3redgreenblueyellow
red
greenblueyellow
redgreenblueyellow
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 36
Differenz endlicher Automaten (5) - Konstruktionsschritte
4. BA Schnittbildung
green/0.3 blue/0
yellow/0.813 23
red/0.5red/0.500 03
red/0.5
green/0.3
blue/02011green/0.3
22
01
yellow/0.8
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 37
Differenz endlicher Automaten (6) - Konstruktionsschritte
5. BA Tilgung der Pfade, die nicht zu akzeptierenden Zuständen führen
green/0.3 blue/0
yellow/0.813 23
red/0.5red/0.500 03
red/0.5
green/0.3
01
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 38
Vielen Dank
für das Aufspüren von Fehlern in früheren Versionen und für Verbesserungsvorschläge danke ich
Maximilian Albert, Christian Roth
© Karin Haenelt 2006, Operationen auf Akzeptoren und Transduktoren, 08.07.2006 (105.04.2004) 39
Literatur
• Haenelt, Karin (2004). Operationen auf endlichen Automaten und Transduktoren. Definitionen, Algorithmen, Erläuterungen und Beispiele – eine Übersicht. Kursskript 25.04.2004. http://kontext.fraunhofer.de/haenelt/kurs/folien/FSOperationenDef.pdf
• Hopcroft, John E. und Jeffrey D. Ullman (1988). Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie. Bonn u.a.: Addison-Wesley (engl. Original: Introduction to automata theory, languages and computation)
• Kunze, Jürgen (2001). Computerlinguistik. Voraussetzungen, Grundlagen, Werkzeuge. Vorlesungsskript. Humboldt Universität zu Berlin. http://www2.rz.hu-berlin.de/compling/Lehrstuhl/Skripte/Computerlinguistik_1/index.html
• Mohri, Mehryar und Michael Riley (2002). Weighted Finite-State Transducers in Speech Recognition (Tutorial). Teil 1, Teil 2