Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
CSE-217: Theory of ComputationIntroduction
Lec Md Jakaria
Department of Computer Science and EngineeringMilitary Institute of Science and Technology
October 25, 2019
Lec Md Jakaria MIST Theory of Computation October 25, 2019 1 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Overview
Lec Md Jakaria MIST Theory of Computation October 25, 2019 2 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Overview
Three traditionally central areas of the theory of computation.
AutomataComputabilityComplexity
What are the fundamental capabilities andlimitations of computers?
Lec Md Jakaria MIST Theory of Computation October 25, 2019 3 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Overview
Three traditionally central areas of the theory of computation.
AutomataComputabilityComplexity
What are the fundamental capabilities andlimitations of computers?
Lec Md Jakaria MIST Theory of Computation October 25, 2019 3 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Complexity Theory
Computer problems come in different varieties
EasyHard
What makes some problems computationallyhard and others easy?
Lec Md Jakaria MIST Theory of Computation October 25, 2019 4 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Complexity Theory
Computer problems come in different varieties
EasyHard
What makes some problems computationallyhard and others easy?
Lec Md Jakaria MIST Theory of Computation October 25, 2019 4 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Computability Theory
Again Computer problems come in different varieties
SolvableUnsolvable
What makes some problems computationallysolvable and others unsolvable?
Lec Md Jakaria MIST Theory of Computation October 25, 2019 5 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Computability Theory
Again Computer problems come in different varieties
SolvableUnsolvable
What makes some problems computationallysolvable and others unsolvable?
Lec Md Jakaria MIST Theory of Computation October 25, 2019 5 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Complexity Theory vs Computability Theory
The theories of computability and complexity are closelyrelated. In complexity theory, the objective is to
classify problems as easy ones and hard ones, whereas incomputability theory the classification of problems is by
those that are solvable and those that are not.Computability theory introduces several of the concepts
used in complexity theory.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 6 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Automata Theory
Automata Theory
Automata theory deals with the definitions and properties ofmathematical models of computation.
Example 1
The Finite Automatonused in text processing, compilers, and hardware design.
Example 2
The Context-Free Grammarused in programming languages and artificial intelligence.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 7 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Automata Theory
Automata Theory
Automata theory deals with the definitions and properties ofmathematical models of computation.
Example 1
The Finite Automatonused in text processing, compilers, and hardware design.
Example 2
The Context-Free Grammarused in programming languages and artificial intelligence.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 7 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Automata Theory
Automata Theory
Automata theory deals with the definitions and properties ofmathematical models of computation.
Example 1
The Finite Automatonused in text processing, compilers, and hardware design.
Example 2
The Context-Free Grammarused in programming languages and artificial intelligence.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 7 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
MATHEMATICAL NOTIONS AND TERMINOLOGY
Lec Md Jakaria MIST Theory of Computation October 25, 2019 8 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
SETS
A set is a group of objects represented as a unit.
S = {2,13,4,256}
Elements or membersSubset / Proper subsetMultisetFinite / Infinite SetEmpty/Singleton set
Unordered PairUnionIntersectionComplementVenn diagram
Lec Md Jakaria MIST Theory of Computation October 25, 2019 9 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
SETS
A set is a group of objects represented as a unit.
S = {2,13,4,256}
Elements or membersSubset / Proper subsetMultisetFinite / Infinite SetEmpty/Singleton set
Unordered PairUnionIntersectionComplementVenn diagram
Lec Md Jakaria MIST Theory of Computation October 25, 2019 9 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
SEQUENCES AND TUPLES
A sequence of objects is a list of these objects in someorder.
S = (2,8,512)
Finite sequences often are calledtuples.
A sequence with k elements is ak-tuple.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 10 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
SEQUENCES AND TUPLES
A sequence of objects is a list of these objects in someorder.
S = (2,8,512)
Finite sequences often are calledtuples.
A sequence with k elements is ak-tuple.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 10 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
FUNCTIONS AND RELATIONS
A function is an object that sets up an input–output relationship.
f (a) = b
A function also is called a mapping.
f : A → B
Lec Md Jakaria MIST Theory of Computation October 25, 2019 11 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
GRAPS
An undirected graph, or simply a graph,is a set of points with lines connecting
some of the points. The points arecalled nodes or vertices, and the lines
are called edges
Lec Md Jakaria MIST Theory of Computation October 25, 2019 12 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
STRINGS AND LANGUAGES
An alphabet to be any nonempty finite set. The membersof the alphabet are the symbols of the alphabet.
Σ1 = {0,1}Σ2 = {a,b, c, . . . , x , y , z}
Γ = {0,1, x , y , z}
Lec Md Jakaria MIST Theory of Computation October 25, 2019 13 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
STRING AND LANGUAGES
A string over an alphabet is a finitesequence of symbols from that alphabet,usually written next to one another and
not separated by commas.
If Σ1 = {0,1}, then 01001 is a string overΣ1.
A language is a set of strings.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 14 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
STRING AND LANGUAGES
A string over an alphabet is a finitesequence of symbols from that alphabet,usually written next to one another and
not separated by commas.
If Σ1 = {0,1}, then 01001 is a string overΣ1.
A language is a set of strings.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 14 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
STRING AND LANGUAGES
A string over an alphabet is a finitesequence of symbols from that alphabet,usually written next to one another and
not separated by commas.
If Σ1 = {0,1}, then 01001 is a string overΣ1.
A language is a set of strings.
Lec Md Jakaria MIST Theory of Computation October 25, 2019 14 / 15
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY
Thank You
Lec Md Jakaria MIST Theory of Computation October 25, 2019 15 / 15