Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
35 views

Z-Introduction To TOC

Theory of Computation (ToC) deals with what can and cannot be computed efficiently given computational resources. Computability Theory examines what problems are solvable in principle, while Complexity Theory analyzes which problems can be solved quickly. ToC defines fundamental computing concepts like algorithms, models of computation, and automata. It studies languages and whether strings are members, using models like finite automata, context-free grammars, and Turing machines.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views

Z-Introduction To TOC

Theory of Computation (ToC) deals with what can and cannot be computed efficiently given computational resources. Computability Theory examines what problems are solvable in principle, while Complexity Theory analyzes which problems can be solved quickly. ToC defines fundamental computing concepts like algorithms, models of computation, and automata. It studies languages and whether strings are members, using models like finite automata, context-free grammars, and Turing machines.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Theory of Computation

What is ToC?
What can or cannot be computed efficiently with given resources
Can it be computed?- Computability Theory
Can it be computed quickly? Complexity Theory

Computability Theory
Problems Solvable Not solvable

Complexity Theory
Computationally Hard Problems

Computationally Easy Problems

Defining ToC
Fundamental ideas & Models on Computing The branch of computer science and mathematics that deals with how efficiently problems can be solved on a model of computation, using an algorithm. Computational Model

Automata
Alphabets Strings Empty string Length of a string Powers of an alphabet Concatenation of strings Languages

Alphabets
Finite, non empty set of symbols
S ={0,1} - Binary Alphabet S={a,b,c ..,z} - set of all lowercaseletters

Set of ASCII characters

String
Finite sequence of symbols from some alphabet Ex:011101 - a string from {0,1} abbccd - a string from {a,b, .,z} Empty string (e) - Zero occurrences of symbols

Length of string
The number of symbols in the string Let w be a string, Length of string a |w|
Ex:- |00110| = 5 |e| = 0

Power of an Alphabet
Sk
Set of all strings of length k from alphabet S S = {0,1}

S0 = {e} S1 = {0,1} S2 = {00,01,10,11} S* - Set of all strings from the alphabet S

Concatenation of strings
x = 01101 y = 110 xy = 01101110
Identity of concatenation

ew = we = w

Language - L
Set of strings choosen from some S* L is a language over S
L is a subset of S* Ex:- English words starting with a

Examples of Languages
L = {w/ 0n1n}
L = {10,11,101,110,1011, }
Binary numbers whose value is prime

L= {e,01,10,1010,111000, ..}
Equal number of 0s and 1s

Problem in Automata Theory


Deciding whether a given string is a member of a particular language or not
If S is an aphabet L is a language over S Then the problem is Given string w in S*, decide whether or not w is in L

Computational Models
Finite Automata - DFA & NFA

Context Free Grammar Push Down Automata

Turing Machine

You might also like