1 / 14

Lecture 1 Theory of Computation

Lecture 1 Theory of Computation. Yasir Imtiaz Khan. Goals of Theory of Computation. What is computable? What can be computed efficiently within a certain and time constraints? The ultimate answer from the Turing machine test is that anything can be computed by ignoring time and space.

drake-ayers
Download Presentation

Lecture 1 Theory of Computation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 1Theory of Computation Yasir Imtiaz Khan

  2. Goals of Theory of Computation • What is computable? • What can be computed efficiently within a certain and time constraints? • The ultimate answer from the Turing machine test is that anything can be computed by ignoring time and space.

  3. Theory of Computation • The theory of computation or computer theory is the branch of computer science and mathematics that deals with whether and how efficiently problems can be solved on a model of computation, using an algorithm.

  4. Central Areas of The Theory of Computation • Automata Theory • Computability Theory • Complexity Theory

  5. Automata Theory • Deals with the definitions and properties of mathematical model of computation. • Examples: Finite automata, Context free grammars. • Finite Automaton: Text Processing, Compilers • Context Free grammars: Programming languages, AI

  6. Computability Theory • Study of computable functions and Turing degrees. • Classification of problems is by those that are solvable and those that are not.

  7. Complexity Theory • Classify the easy problems and hard ones. • Some problems are hard even we are unable to prove • Cryptography is application area of complex computation

  8. Sets • A set is a group of objects, called elements (or members) of this set. For example, the students in this room form a set. • A set can be defined by listing all its elements inside braces, e.g.: • S ={ 7,21,57} • The order and repetitions of elements in sets do not matter – in particular, {7,21,57} = {21,57,7} = {21, 7, 57, 7, 21}

  9. Sets Continued… • The membership is denoted by ϵ symbol. For example, 21 ϵ S but 10 not belong to S. • For two sets A and B, we say A is a subset of B and write A subset B • if every member of A is also a member of B. We say that A is a proper subset of B and write A proper B if A is a subset of B and not equal to B. • The set of all subsets of a set A is called the power set of A and denoted 2A

  10. Examples of Sets • The set with no elements is called the empty set and denoted • The empty set is a subset of any other set. • The set of natural numbers N (or N): • N = {1, 2, 3, . . .} • The set of integers Z (or Z): • Z = {...,-2,-1, 0, 1, 2,…} • It is clear that N subset of Z

  11. Set Operations

  12. Venn Diagrams

  13. Sequence and Tuples • A sequence is a list of objects in some order. • For example, sequences of the students' names in alphabetic order such as (Alice,Bob). • In contrast to sets, repetitions and order matter in sequences. The sequences (7, 21, 57) and (7, 7, 21, 57) are not equal. • Finite sequences are called tuples. In particular, a sequence with k elements is called k-tuple (as well as pair, triple, quadriple, etc.)

  14. Functions

More Related