100 likes | 256 Views
General Concepts on Automata Theory. Juan Carlos Guzmán CS 6413 Theory of Computation Southern Polytechnic State University. Concepts. Symbol Any character Alphabet A finite, non-empty set of symbols String (or word) A finite sequence of symbols from a given alphabet Language
E N D
General Concepts on Automata Theory Juan Carlos Guzmán CS 6413 Theory of Computation Southern Polytechnic State University
Concepts • Symbol • Any character • Alphabet • A finite, non-empty set of symbols • String (or word) • A finite sequence of symbols from a given alphabet • Language • A set of strings over the same alphabet
Symbol • Any character • Usually notated by the first letters of the English alphabet: a, b, c, …, and digits: 1, 2, 3, …
Alphabet • A finite, non-empty set of symbols • Usually denoted by Σ or T • Σ = { 0, 1 } • Σ = { a, b, …, z } • The ASCII character set
String • A finite sequence of symbols from a given alphabet • Usually denoted by last letters of the English alphabet: … u, v, w, x, y, z • w = 10101 • w = 0000 • The empty string • String with no symbols • Denoted by ε
Length of a String • Number of symbols a string has • Denoted by |w|, if w is a string • |10101| = 5 • |ε| = 0 • A related concept, the number of repetitions of a particular symbol (a) in a string (w) • Notated as |w|a • |10101|0 = 2 • |10101|1 = 3 • |ε|0 = 0
Power Notation • For a symbol a, a k is the sequence (string) of length k of a’s • 05 = 00000 • a3 = aaa • 10 = ε • For an alphabet Σ, Σk is the set of all strings from Σ of length k • Σ = {0, 1} • Σ3 = {000, 001, 010, 011, 100, 101, 110, 111} • Σ0 = {ε}
All Strings over an Alphabet (Σ*) • For a given alphabet • Σ* = Σ0 Σ1 Σ2 … • Σ+ = Σ1 Σ2 Σ3 … • Σ* = Σ+ {ε} • Σ* is the set of all strings over Σ • Σ+ is the set of all nonempty strings over Σ
String Concatenation • For any strings x and y • xy (or xy) is the concatenation of x and y • a1a2…aib1b2…bj = a1a2…ai b1b2…bj • 101 01 = 10101 • ε x = x ε = x
Language • A set of strings over the same alphabet • Let Σ be an alphabet, L Σ* implies that L is a language over Σ • All strings consisting of n 0’s followed by n 1’s • {ε, 01, 0011, 000111, …} • All strings with the same number of 0’s and 1’s • {ε, 01, 10, 0011, 0101, 0110, 1001, 1010, 1100, …} • The following are languages over any Σ • Σ* all strings over the alphabet • no strings • {ε} just the empty string