320 likes | 434 Vues
Explore automata theory's application to language computation, including key proofs, concepts, and regular language operations. Study materials from the syllabus and additional reading recommendations. Understand the definition of palindrome and binary string operations. Explore recursive definitions and language properties. Discover regular languages' closure under various set operations and the Kleene star. Develop problem-solving skills in automata, languages, and complexity theory. Enhance understanding of formal language properties and computation principles for practical applications.
E N D
Erik Jonsson School of Engineering and Computer Science CS 4384– 501 Automata Theory http://www.utdallas.edu/~pervin and eLearning Tuesday: Start Chapter 2 Look at Ullman’s Lectures 2 & 3 Thursday 1-16-14 FEARLESS Engineering www.utdallas.edu/~pervin
SyllabusOfficialS2014.docx SYLLABUS
Hopcroft & Ullman, Intro. to Automata Theory, Languages, and Computation • Lewis & Papadimitriou, Elements of the Theory of Computation • Martin, Intro. to Languages and the Theory of Computation (B&N $174) • Sipser, Intro. to the Theory of Computation ($170 for newest edition) • Du & Ko, Problem Solving in Automata, Languages, and Complexity (e-book $160) RESERVE BOOK LIST
CHAPTER ONE 1.3 Proof Techniques 1.3.6 Proof by Induction Note: Pigeon Hole CS 3305
A palindrome can be defined as a string that reads the same backward and forward, or by the following definition: • 1) e is a palindrome. • 2) If a is any symbol, then the string a is a palindrome. • 3) If a is a symbol and x is a palindrome, then axa is a palindrome. • 4) Nothing else is a palindrome unless it follows from 1) through 3). Palindrome Note: We will prove later that no FA accepts palindrome.
CS 4384 14 January 2014 HOMEWORK 1Due: 21 JANUARY 2014 Written carefully on 8.5x11 white paper as for your boss!
A = {w : w is a binary string containing an odd number of 1s} • B = {w: w is a binary string containing 101 as a substring} • C = {we {0,1}* : w has a 1 in the third position from the right} M&S Examples 2.2.1 p.26; 2.2.2 p.28; 2.2.3 p.29
A = {w : w is a binary string containing an odd number of 1s} What’s wrong with: ….
C = {we {0,1}* : w has a 1 in the third position from the right}Just remember the last three symbols
Language • A language is a set of strings. For example, {0, 1}, {all English words}, {0, 0, 0, ...} are all languages. • The following are operations on sets and hence also on languages. Union: A U B Intersection: A ∩ B Difference: A \ B (A - B when B A) Complement: A = Σ* - A where Σ* is the set of all strings on alphabet Σ. 0 1 2 _ Du
Concatenation: • For example, {0, 1}{1, 2} = {01, 02, 11, 12}. • Especially, we denote A = A, A = AA, ..., and define A = {ε}. 2 1 0 Concatenation of Languages Du
The set of regular languages is closed under the union operation Theorem 2.3.1 M&S p. 32
The set of regular languages is closed under the intersection operation Theorem 2.3.1 Addendum M&S p. 32
The set of regular languages is closed under the complement operation Theorem 2.3.1 Addendum M&S p. 32
The set of regular languages is closed under the Kleene star and concatenation operations To be proved later: M&S p. 32
Binary expansion of positive integers congruent to zero mod 5
Binary expansion of positive integers congruent to zero mod 5
Binary expansion of non-negative integers congruent to 0 mod 5
Any number (including zero) of a’s followed by an equal number of b’s. Recursive Definition
Any number of a’s (including zero) followed by a less than or equal number of b’s. Another Recursive Definition