Presentation is loading. Please wait.

Presentation is loading. Please wait.

UofH - COSC 3340 - Dr. Verma COSC 3340: Introduction to Theory of Computation Rakesh Verma Computer Science Department University of Houston URL: www.cs.uh.edu/~rmverma.

Similar presentations


Presentation on theme: "UofH - COSC 3340 - Dr. Verma COSC 3340: Introduction to Theory of Computation Rakesh Verma Computer Science Department University of Houston URL: www.cs.uh.edu/~rmverma."— Presentation transcript:

1 UofH - COSC 3340 - Dr. Verma COSC 3340: Introduction to Theory of Computation Rakesh Verma Computer Science Department University of Houston URL: www.cs.uh.edu/~rmverma

2 UofH - COSC 3340 - Dr. Verma What is this course about? Course is about models of computation, their power, and relationships. Hierarchy of models of increasing power: DFA < PDA < TM. For each model, we study: – What can be computed. (easier) – What cannot be computed. (harder)

3 UofH - COSC 3340 - Dr. Verma Basic Definitions (Reading Assignment: Chapter 0 of text) 1. Alphabet - a finite set of symbols. – Notation: . – Examples: Binary alphabet {0,1}, English alphabet {a,...,z,!,?,...} 2. String over an alphabet  - a finite sequence of symbols from . – Notation: (a) Letters u, v, w, x, y, and z denote strings. (b) Convention: concatenate the symbols. No parentheses or commas used. – Examples: 0000 is a string over the binary alphabet. a!? is a string over the English alphabet.

4 UofH - COSC 3340 - Dr. Verma Definitions (contd.) 3. Empty string: e or  denotes the empty sequence of symbols. 4. Language over alphabet  - a set of strings over . – Notation: L. – Examples: {0, 00, 000,...} is an "infinite" language over the binary alphabet. {a, b, c} is a "finite" language over the English alphabet.

5 UofH - COSC 3340 - Dr. Verma Definitions (contd.) 5. Empty language - empty set of strings. Notation: . 6. Binary operation on strings: Concatenation of two strings u.v - concatenate the symbols of u and v. – Notation: uv – Examples: 00.11 = 0011. .u = u.  = u for every u. (identity for concatenation)

6 UofH - COSC 3340 - Dr. Verma Binary relations on strings 1. Prefix - u is a prefix of v if there is a w such that v = uw. – Examples :  is a prefix of 0 since 0 =  0 apple is a prefix of appleton since appleton = apple.ton 2. Suffix - u is a suffix of v if there is a w such that v = wu. – Examples: 0 is a suffix of 0 since 0 = ? ton is a suffix of appleton since ?

7 UofH - COSC 3340 - Dr. Verma Binary relations (contd.) 3. Substring - u is a substring of v if there are x and y such that v = xuy. – Examples : let is a substring of appleton since appleton = app.let.on 0 is a substring of 0 since 0 = epsilon.0.epsilon Observe that prefix and suffix are special cases of substring.

8 UofH - COSC 3340 - Dr. Verma Relevance of strings and languages for this course. Consider decision problems. Decision problems are problems with Yes/No answers. Examples: (a) Is an array sorted? (b) Is x in that array A? Consider instances, I, of a decision problem D. Example: For problem (a) an instance is just an array.

9 UofH - COSC 3340 - Dr. Verma Relevance (contd.) We can encode instances of any problem by strings. Associate language with decision problem D by taking all the strings that encode its yes instances.

10 UofH - COSC 3340 - Dr. Verma Applications of the Concepts Are vast, and include: – Text processing (editors, etc.) – Compiler design – Verification through model checking Real world examples are all around you and not just on the desk!

11 UofH - COSC 3340 - Dr. Verma New Developments DNA Computing Quantum Turing Machines New Applications are being discovered as we speak!

12 UofH - COSC 3340 - Dr. Verma History of the Field Check out: URL:http://www.cs.aue. auc.dk/~hicks/courses/c omputability- f2003/class-1.pdf


Download ppt "UofH - COSC 3340 - Dr. Verma COSC 3340: Introduction to Theory of Computation Rakesh Verma Computer Science Department University of Houston URL: www.cs.uh.edu/~rmverma."

Similar presentations


Ads by Google