Top Banner
Overview MATHEMATICAL NOTIONS AND TERMINOLOGY CSE-217: Theory of Computation Introduction Lec Md Jakaria Department of Computer Science and Engineering Military Institute of Science and Technology October 25, 2019 Lec Md Jakaria MIST Theory of Computation October 25, 2019 1 / 15
24

CSE-217: Theory of Computation - Introduction

Feb 26, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CSE-217: Theory of Computation - Introduction

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

Page 2: CSE-217: Theory of Computation - Introduction

Overview MATHEMATICAL NOTIONS AND TERMINOLOGY

Overview

Lec Md Jakaria MIST Theory of Computation October 25, 2019 2 / 15

Page 3: CSE-217: Theory of Computation - Introduction

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

Page 4: CSE-217: Theory of Computation - Introduction

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

Page 5: CSE-217: Theory of Computation - Introduction

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

Page 6: CSE-217: Theory of Computation - Introduction

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

Page 7: CSE-217: Theory of Computation - Introduction

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

Page 8: CSE-217: Theory of Computation - Introduction

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

Page 9: CSE-217: Theory of Computation - Introduction

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

Page 10: CSE-217: Theory of Computation - Introduction

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

Page 11: CSE-217: Theory of Computation - Introduction

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

Page 12: CSE-217: Theory of Computation - Introduction

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

Page 13: CSE-217: Theory of Computation - Introduction

Overview MATHEMATICAL NOTIONS AND TERMINOLOGY

MATHEMATICAL NOTIONS AND TERMINOLOGY

Lec Md Jakaria MIST Theory of Computation October 25, 2019 8 / 15

Page 14: CSE-217: Theory of Computation - Introduction

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

Page 15: CSE-217: Theory of Computation - Introduction

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

Page 16: CSE-217: Theory of Computation - Introduction

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

Page 17: CSE-217: Theory of Computation - Introduction

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

Page 18: CSE-217: Theory of Computation - Introduction

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

Page 19: CSE-217: Theory of Computation - Introduction

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

Page 20: CSE-217: Theory of Computation - Introduction

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

Page 21: CSE-217: Theory of Computation - Introduction

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

Page 22: CSE-217: Theory of Computation - Introduction

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

Page 23: CSE-217: Theory of Computation - Introduction

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

Page 24: CSE-217: Theory of Computation - Introduction

Overview MATHEMATICAL NOTIONS AND TERMINOLOGY

Thank You

Lec Md Jakaria MIST Theory of Computation October 25, 2019 15 / 15