310409-THEORY OF COMPUTATION Komate AMPHAWAN 1. 2.

Slides:



Advertisements
Similar presentations
Mathematical Preliminaries
Advertisements

Chapter 2 Revision of Mathematical Notations and Techniques
CS466 (Prasad)L1Sets1 Introduction Language: Set of Strings.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
CS 310 – Fall 2006 Pacific University Theoretical Computer Science CS 310 Chadd Williams Office Mon 3:00 – 4:00 PM 202 Strain.
CS5371 Theory of Computation Lecture 1: Mathematics Review I (Basic Terminology)
CS 310 – Fall 2006 Pacific University Theoretical Computer Science CS 310 Chadd Williams Office Mon 10:30-11:30 am 202 Strain.
Costas Busch - RPI1 Mathematical Preliminaries. Costas Busch - RPI2 Mathematical Preliminaries Sets Functions Relations Graphs Proof Techniques.
CS 454 Theory of Computation Sonoma State University, Fall 2011 Instructor: B. (Ravi) Ravikumar Office: 116 I Darwin Hall Original slides by Vahid and.
Courtesy Costas Busch - RPI1 Mathematical Preliminaries.
Theoretical Computer Science COMP 335 Fall 2004
Final Exam Review Cummulative Chapters 0, 1, 2, 3, 4, 5 and 7.
Discrete Mathematics Lecture 9 Alexander Bukharovich New York University.
1 CSCI 2400 section 3 Models of Computation Instructor: Costas Busch.
 2004 SDU Introduction to the Theory of Computation My name: 冯好娣 My office: 计算中心 430
CS355 - Theory of Computation Lecture 2: Mathematical Preliminaries.
Introduction Chapter 0. Three Central Areas 1.Automata 2.Computability 3.Complexity.
CSE 3813 Introduction to Formal Languages and Automata Chapter 8 Properties of Context-free Languages These class notes are based on material from our.
CSC312 Automata Theory Lecture # 1 Introduction.
INTRODUCTION TO THE THEORY OF COMPUTATION INTRODUCTION MICHAEL SIPSER, SECOND EDITION 1.
Mathematical Preliminaries Strings and Languages Preliminaries 1.
Week 15 - Wednesday.  What did we talk about last time?  Review first third of course.
1 Chapter 1 Introduction to the Theory of Computation.
Mathematical Preliminaries (Hein 1.1 and 1.2) Sets are collections in which order of elements and duplication of elements do not matter. – {1,a,1,1} =
CSCI 2670 Introduction to Theory of Computing Instructor: Shelby Funk.
Mathematical Preliminaries. Sets Functions Relations Graphs Proof Techniques.
Fall 2005Costas Busch - RPI1 Mathematical Preliminaries.
Prof. Busch - LSU1 Mathematical Preliminaries. Prof. Busch - LSU2 Mathematical Preliminaries Sets Functions Relations Graphs Proof Techniques.
CSC312 Automata Theory Lecture # 1 Introduction.
Language: Set of Strings
Saeid Pashzadeh Jan 2009 Theory of Computation 1.
CSC312 Automata Theory Lecture # 1 Introduction.
Theory of Computation, Feodor F. Dragan, Kent State University 1 TheoryofComputation Spring, 2015 (Feodor F. Dragan) Department of Computer Science Kent.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
1 Theory of Computation 計算理論 2 Instructor: 顏嗣鈞 Web: Time: 2:20-5:10 PM, Tuesday Place: BL 112.
COSC 2007 Data Structures II Chapter 14 Graphs I.
ICS 253: Discrete Structures I Induction and Recursion King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Mathematical Preliminaries
CS 203: Introduction to Formal Languages and Automata
Chapter Relations and Their Properties
Lecture 1 Overview Topics 1. Proof techniques: induction, contradiction Proof techniques June 1, 2015 CSCE 355 Foundations of Computation.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
Models of Computation نظریه زبان ها و ماشین ها Iranai.blog.ir IRANAI.BLOG.ir _
Classifications LanguageGrammarAutomaton Regular, right- linear Right-linear, left-linear DFA, NFA Context-free PDA Context- sensitive LBA Recursively.
Chapter 8 Properties of Context-free Languages These class notes are based on material from our textbook, An Introduction to Formal Languages and Automata,
CMPT 308 — Computability and Complexity Fall 2004 Instructor: Andrei Bulatov, TA: Ramsay Dyer, Learning.
1 Mathematical Preliminaries. 2 Sets Functions Relations Graphs Proof Techniques.
Donghyun (David) Kim Department of Mathematics and Physics North Carolina Central University 1 Chapter 0 Introduction Some slides are in courtesy of Prof.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Theory of Computing Topics Formal languages automata computability and related matters Purposes To know the foundations and principles of computer science.
Theory of Computing Topics Formal languages automata computability and related matters Purposes To know the foundations and principles of computer science.
Week 8 - Wednesday.  What did we talk about last time?  Relations  Properties of relations  Reflexive  Symmetric  Transitive.
Theory of Computation. Introduction to The Course Lectures: Room ( Sun. & Tue.: 8 am – 9:30 am) Instructor: Dr. Ayman Srour (Ph.D. in Computer Science).
Context-Free and Noncontext-Free Languages Chapter 13.
Chapter 1 INTRODUCTION TO THE THEORY OF COMPUTATION.
CSCE 355 Foundations of Computation
Methods of Proof.
Formal Language & Automata Theory
BCS2143 – Theory of Computer Science
Introduction to the Theory of Computation
Formal Modeling Concepts
Computer Science Department
CSCE 355 Foundations of Computation
Introduction to Automata Theory
INTRODUCTION TO THE THEORY OF COMPUTATION
CSCI-2400 Models of Computation.
Mathematical Preliminaries Strings and Languages
Teori Bahasa dan Automata Lecture 1: Course Overview and Introduction
Mathematical Preliminaries
Chapter 1 Introduction to the Theory of Computation
Presentation transcript:

THEORY OF COMPUTATION Komate AMPHAWAN 1

2

DESCRIPTION-1 Studies concepts of:  grammars,  automata,  languages,  computability and complexity 3

DESCRIPTION-2 the relationship between automata and various classes of languages Turing machine and equivalent models of computation the Chomsky hierarchy context-free grammar, push-down automata, Pumping lemmas and variants, closure properties and decision properties; parsing algorithms. 4

Computability What is “Computation”? What is Computable?  Problem of determining whether a mathematical statement is true or false. 5

Evaluation and Grading Midterm exam40% Final exam40% Quiz10% Class attendance10% 6

Text-1 “Introduction to Languages and the Theory of Computation”—John C. Martin,4 ed,

Text-2 “Introduction to the Theory of Computation”—Michael Sipser, 2 ed,

Main topic We shall study different types of theoretical machines that are mathematical models for actual physical processes. 9

Machine Model-1 10

Machine Model-2 11

Machine Model-3 12

Prerequisites Set Theory Relations and Functions „ Relations and Functions Elementary Graph Theory Boolean Logic Proof Mechanisms 13

REVIEW… ON BASIC MATHEMATICS 14

SET 15

Sets-1 A set is a collection of "things," called the elements or members of the set. It is essential to have a criterion for determining, for any given thing, whether it is or is not a member of the given set. This criterion is called the membership criterion of the set. 16

Sets-2 There are two common ways of indicating the members of a set:  List all the elements, e.g. {a, e, i, o, u}  Provide some sort of an algorithm or rule, such as a grammar 17

Sets-3 Notation:  To indicate that x is a member of set S, we write x S  We denote the empty set (the set with no members) as { } or   If every element of set A is also an element of set B, we say that A is a subset of B, and write A  B  If every element of set A is also an element of set B, but B also has some elements not contained in A, we say that A is a proper subset of B, and write A  B 18

Operations on Sets The union of sets A and B, written A  B, is a set that contains everything that is in A, or in B, or in both. The intersection of sets A and B, written A  B, is a set that contains exactly those elements that are in both A and B. The set difference of set A and set B, written A - B, is a set that contains everything that is in A but not in B. 19

Additional terminology The cardinality of a set A, written |A|, is the number of elements in a set A. The powerset of a set Q, written 2 Q, is the set of all subsets of Q. The notation suggests the fact that a set containing n elements has a powerset containing 2 n elements. Two sets are disjoint if they have no elements in common, that is, if A  B = . 20

RELATIONS AND FUNCTIONS 21

Relations and Functions-1 A relation on sets S and T is a set of ordered pairs (s, t), where  s  S (s is a member of S),  t  T,  S and T need not be different,  The set of all first elements (s) is the domain of the relation, and  The set of all second elements is the range of the relation. 22

Relations and Functions-2 A relation is a function iff every element of S occurs once and only once as a first element of the relation. A relation is a partial function iff every element of S occurs at most once as an element of the relation. 23

GRAPHS 24

Graph-1 A graph consists of two sets  A set V of vertices (or nodes), and  A set E of edges (or arcs). An edge consists of a pair of vertices in V. If the edges are ordered, the graph is a digraph (a contraction of "directed graph"). 25

Graph-2 A walk is a sequence of edges, where the finish vertex of each edge is the start vertex of the next edge. Example: (a, e), (e, i), (i, o), (o, u). A path is a walk with no repeated edges. A simple path is a path with no repeated vertices. 26

TREES 27

Trees-1 A tree is a kind of digraph:  It has one distinguished vertex called the root;  There is exactly one path from the root to each vertex; and  The level of a vertex is the length of the path to it from the root. 28

Trees-2 Terminology: if there is an edge from A to B, then A is the parent of B, and B is the child of A. A leaf is a node with no children. The height of a tree is the largest level number of any vertex. 29

PROOF TECHNIQUES 30

Importance Because this is a formal subject, the textbook is full of proofs Proofs are encapsulated understanding You may be asked to learn a very few important proofs 31

Proof by induction Prove something about P1 (the basis) Prove that if it is true for Pn, then it is true for Pn+1 (the inductive assumption) Conclude that it is true for all P 32

Proof by contradiction also called reduction ad absurdum Assume some fact P is false Show that this leads to a contradiction Conclude P must be true 33