Preface |
|
ix | |
|
|
|
|
3 | (20) |
|
1.1 Sets, Functions and Relations |
|
|
3 | (5) |
|
1.2 Lifting Functions to Sets and Tuples |
|
|
8 | (2) |
|
1.3 Alphabets, Words and Languages |
|
|
10 | (3) |
|
1.4 Word Tuples, String Relations and String Functions |
|
|
13 | (3) |
|
1.5 The General Monoidal Perspective |
|
|
16 | (4) |
|
|
20 | (1) |
|
1.7 Exercises for Chapter 1 |
|
|
21 | (2) |
|
2 Monoidal Finite-State Automata |
|
|
23 | (20) |
|
2.1 Basic Concept and Examples |
|
|
23 | (7) |
|
2.2 Closure Properties of Monoidal Finite-State Automata |
|
|
30 | (3) |
|
2.3 Monoidal Regular Languages and Monoidal Regular Expressions |
|
|
33 | (2) |
|
2.4 Equivalence Between Monoidal Regular Languages and Monoidal Automaton Languages |
|
|
35 | (2) |
|
2.5 Simplifying the Structure of Monoidal Finite-State Automata |
|
|
37 | (4) |
|
|
41 | (1) |
|
2.7 Exercises for Chapter 2 |
|
|
41 | (2) |
|
3 Classical Finite-State Automata and Regular Languages |
|
|
43 | (29) |
|
3.1 Deterministic Finite-State Automata |
|
|
43 | (3) |
|
3.2 Determinization of Classical Finite-State Automata |
|
|
46 | (2) |
|
3.3 Additional Closure Properties for Classical Finite-State Automata |
|
|
48 | (2) |
|
3.4 Minimal Deterministic Finite-State Automata and the Myhill-Nerode Equivalence Relation |
|
|
50 | (7) |
|
3.5 Minimization of Deterministic Finite-State Automata |
|
|
57 | (5) |
|
3.6 Coloured Deterministic Finite-State Automata |
|
|
62 | (5) |
|
3.7 Pseudo-Determinization and Pseudo-Minimization of Monoidal Finite-State Automata |
|
|
67 | (2) |
|
|
69 | (1) |
|
3.9 Exercises for Chapter 3 |
|
|
69 | (3) |
|
4 Monoidal Multi-Tape Automata and Finite-State Transducers |
|
|
72 | (22) |
|
4.1 Monoidal Multi-Tape Automata |
|
|
72 | (3) |
|
4.2 Additional Closure Properties of Monoidal Multi-Tape Automata |
|
|
75 | (2) |
|
4.3 Classical Multi-Tape Automata and Letter Automata |
|
|
77 | (3) |
|
4.4 Monoidal Finite-State Transducers |
|
|
80 | (3) |
|
4.5 Classical Finite-State Transducers |
|
|
83 | (2) |
|
4.6 Deciding Functionality of Classical Finite-State Transducers |
|
|
85 | (5) |
|
|
90 | (1) |
|
4.8 Exercises for Chapter 4 |
|
|
91 | (3) |
|
5 Deterministic Transducers |
|
|
94 | (44) |
|
5.1 Deterministic Transducers and Subsequential Transducers |
|
|
94 | (6) |
|
5.2 A Determinization Procedure for Functional Transducers with the Bounded Variation Property |
|
|
100 | (8) |
|
5.3 Deciding the Bounded Variation Property |
|
|
108 | (7) |
|
5.4 Minimal Subsequential Finite-State Transducers: Myhill-Nerode Relation for Subsequential Transducers |
|
|
115 | (8) |
|
5.5 Minimization of Subsequential Transducers |
|
|
123 | (10) |
|
5.6 Numerical Subsequential Transducers |
|
|
133 | (2) |
|
|
135 | (1) |
|
|
135 | (1) |
|
5.9 Exercises for Chapter 5 |
|
|
136 | (2) |
|
|
138 | (23) |
|
|
138 | (7) |
|
6.2 Equivalence of Regular String Functions and Classical Bimachines |
|
|
145 | (4) |
|
6.3 Pseudo-Minimization of Monoidal Bimachines |
|
|
149 | (2) |
|
6.4 Direct Composition of Classical Bimachines |
|
|
151 | (5) |
|
|
156 | (1) |
|
6.6 Exercises for Chapter 6 |
|
|
156 | (5) |
|
PART II FROM THEORY TO PRACTICE |
|
|
|
|
161 | (16) |
|
7.1 Basics and Simple Examples |
|
|
161 | (7) |
|
7.2 Types, Terms and Statements in C(M) |
|
|
168 | (9) |
|
8 C(M) Implementation of Finite-State Devices |
|
|
177 | (59) |
|
8.1 C(M) Implementations for Automata Algorithms |
|
|
177 | (17) |
|
8.2 C(M) Programs for Classical Finite-State Transducers |
|
|
194 | (17) |
|
8.3 C(M) Programs for Deterministic Transducers |
|
|
211 | (11) |
|
8.4 C(M) Programs for Bimachines |
|
|
222 | (14) |
|
9 The Aho-Corasick Algorithm |
|
|
236 | (17) |
|
9.1 Formal Construction -- First Version |
|
|
236 | (8) |
|
9.2 Linear Computation of the Aho-Corasick Automaton |
|
|
244 | (2) |
|
9.3 Space-Efficient Variant -- Construction of the Aho-Corasick f-Automaton |
|
|
246 | (7) |
|
10 The Minimal Deterministic Finite-State Automaton for a Finite Language |
|
|
253 | (26) |
|
|
253 | (5) |
|
10.2 C(M) Implementation of the Construction - First Version |
|
|
258 | (4) |
|
10.3 Efficient Construction of the Minimal Dictionary Automaton |
|
|
262 | (3) |
|
10.4 Adapting the Language of Minimal Dictionary Automata |
|
|
265 | (5) |
|
10.5 The Minimal Subsequential Transducer for a Finite Two-Sided Dictionary |
|
|
270 | (9) |
|
11 Constructing Finite-State Devices for Text Rewriting |
|
|
279 | (19) |
|
11.1 Simple Text Rewriting Based on Regular Relations |
|
|
280 | (2) |
|
11.2 Using Deterministic Machines for Simple Text Rewriting |
|
|
282 | (6) |
|
11.3 Leftmost-Longest Match Text Rewriting |
|
|
288 | (2) |
|
11.4 Regular Relations for Leftmost-Longest Match Rewriting |
|
|
290 | (8) |
References |
|
298 | (4) |
Index |
|
302 | |