L ECTURE 1 T HEORY OF C OMPUTATION Yasir Imtiaz Khan.

Slides:



Advertisements
Similar presentations
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
Advertisements

Formal Languages: main findings so far A problem can be formalised as a formal language A formal language can be defined in various ways, e.g.: the language.
8/25/2009 Sofya Raskhodnikova Intro to Theory of Computation L ECTURE 1 Theory of Computation Course information Overview of the area Finite Automata Sofya.
Basic Structures: Sets, Functions, Sequences, Sums, and Matrices
Basic Structures: Sets, Functions, Sequences, Sums, and Matrices
2.1 Sets. DEFINITION 1 A set is an unordered collection of objects. DEFINITION 2 The objects in a set are called the elements, or members, of the set.
Finite Automata Section 1.1 CSC 4170 Theory of Computation.
Complexity 7-1 Complexity Andrei Bulatov Complexity of Problems.
CS5371 Theory of Computation
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
1 CSCI-2400 Models of Computation. 2 Computation CPU memory.
Complexity 5-1 Complexity Andrei Bulatov Complexity of Problems.
CS5371 Theory of Computation Lecture 1: Mathematics Review I (Basic Terminology)
CS 454 Theory of Computation Sonoma State University, Fall 2011 Instructor: B. (Ravi) Ravikumar Office: 116 I Darwin Hall Original slides by Vahid and.
CS5371 Theory of Computation Lecture 4: Automata Theory II (DFA = NFA, Regular Language)
Topics Automata Theory Grammars and Languages Complexities
SET Miss.Namthip Meemag Wattanothaipayap School. Definition of Set Set is a collection of objects, things or symbols. There is no precise definition for.
 2004 SDU Introduction to the Theory of Computation My name: 冯好娣 My office: 计算中心 430
By: Er. Sukhwinder kaur.  Computation Computation  Algorithm Algorithm  Objectives Objectives  What do we study in Theory of Computation ? What do.
1 Introduction to Automata Theory Reading: Chapter 1.
Introduction Chapter 0. Three Central Areas 1.Automata 2.Computability 3.Complexity.
CS/IT 138 THEORY OF COMPUTATION Chapter 1 Introduction to the Theory of Computation.
INTRODUCTION TO THE THEORY OF COMPUTATION INTRODUCTION MICHAEL SIPSER, SECOND EDITION 1.
L ECTURE 1 T HEORY OF A UTOMATA. P RAGMATICS  Pre-Requisites  No Pre-Requisite  Text book  Introduction to Computer Theory by Daniel I.A. Cohen 
By: Er. Sukhwinder kaur.  What is Automata Theory? What is Automata Theory?  Alphabet and Strings Alphabet and Strings  Empty String Empty String 
1 Chapter 1 Introduction to the Theory of Computation.
Languages, Grammars, and Regular Expressions Chuck Cusack Based partly on Chapter 11 of “Discrete Mathematics and its Applications,” 5 th edition, by Kenneth.
Lecture 1 Computation and Languages CS311 Fall 2012.
Sets Defined A set is an object defined as a collection of other distinct objects, known as elements of the set The elements of a set can be anything:
CSCI 2670 Introduction to Theory of Computing Instructor: Shelby Funk.
CS 103 Discrete Structures Lecture 10 Basic Structures: Sets (1)
CS201: Data Structures and Discrete Mathematics I
CompSci 102 Discrete Math for Computer Science
Theory of Computation, Feodor F. Dragan, Kent State University 1 TheoryofComputation Spring, 2015 (Feodor F. Dragan) Department of Computer Science Kent.
Section 2.1. Section Summary Definition of sets Describing Sets Roster Method Set-Builder Notation Some Important Sets in Mathematics Empty Set and Universal.
THEORY OF COMPUTATION Komate AMPHAWAN 1. 2.
Chapter 2 With Question/Answer Animations. Section 2.1.
Introduction Episode 0 What is TOC (Theory of Computation) about? Giorgi Japaridze Theory of Computability Subject: The fundamental mathematical properties.
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
NP-Completeness  For convenience, the theory of NP - Completeness is designed for decision problems (i.e. whose solution is either yes or no).  Abstractly,
Donghyun (David) Kim Department of Mathematics and Physics North Carolina Central University 1 Chapter 0 Introduction Some slides are in courtesy of Prof.
Theory of computation Introduction theory of computation: It comprises the fundamental mathematical properties of computer hardware, software,
CS154 Formal Languages and Computability Thaddeus Aid Department of Computer Science San Jose State University Spring 2016 Creative Commons Attribution-ShareAlike.
1 Course Overview Why this course “formal languages and automata theory?” What do computers really do? What are the practical benefits/application of formal.
Introduction Why do we study Theory of Computation ?
Introduction Why do we study Theory of Computation ?
Section 2.1. Sets A set is an unordered collection of objects. the students in this class the chairs in this room The objects in a set are called the.
Chapter 2 1. Chapter Summary Sets (This Slide) The Language of Sets - Sec 2.1 – Lecture 8 Set Operations and Set Identities - Sec 2.2 – Lecture 9 Functions.
Week 14 - Friday.  What did we talk about last time?  Simplifying FSAs  Quotient automata.
Computation Theory Asia Mahdi. Textbooks Programs, Machines and Computation: An Introduction to the Theory of Computing - Authors: Keith Clark and Don.
Introduction Why do we study Theory of Computation ?
Theory of Computation. Introduction We study this course in order to answer the following questions: What are the fundamental capabilities and limitations.
Topic 3: Automata Theory 1. OutlineOutline Finite state machine, Regular expressions, DFA, NDFA, and their equivalence, Grammars and Chomsky hierarchy.
Introduction Chapter 0.
BCS2143 – Theory of Computer Science
Introduction to the Theory of Computation
Why do we study Theory of Computation ?
Lecture 1 Theory of Automata
CIS Automata and Formal Languages – Pei Wang
Theory of Computation Theory of computation is mainly concerned with the study of how problems can be solved using algorithms.  Therefore, we can infer.
Computer Science Department
Jaya Krishna, M.Tech, Assistant Professor
2.1 Sets Dr. Halimah Alshehri.
Teori Bahasa dan Automata Lecture 1: Course Overview and Introduction
INTRODUCTION TO THE THEORY OF COMPUTATION
Advanced Algorithms Analysis and Design
Teori Bahasa dan Automata Lecture 1: Course Overview and Introduction
Introduction Chapter 0.
Chapter 1 Introduction to the Theory of Computation
Terminology and Symbols
Presentation transcript:

L ECTURE 1 T HEORY OF C OMPUTATION Yasir Imtiaz Khan

G OALS OF T HEORY OF C OMPUTATION 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.

T HEORY OF C OMPUTATION 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.

C ENTRAL A REAS OF T HE T HEORY OF C OMPUTATION Automata Theory Computability Theory Complexity Theory

A UTOMATA T HEORY 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

C OMPUTABILITY T HEORY Study of computable functions and Turing degrees. Classification of problems is by those that are solvable and those that are not.

C OMPLEXITY T HEORY Classify the easy problems and hard ones. Some problems are hard even we are unable to prove Cryptography is application area of complex computation

S ETS 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}

S ETS C ONTINUED … 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 2 A

E XAMPLES OF S ETS 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

S ET O PERATIONS

V ENN D IAGRAMS

S EQUENCE AND T UPLES 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.)

F UNCTIONS