CS2303 THEORY OF COMPUTATION-QUESTION BANK WITH ANWSERS- 2MARKS ...

CS2303 THEORY OF COMPUTATION-QUESTION BANK WITH ANWSERS- 2MARKS ...

Posted by R.Anirudhan

THEORY OF COMPUTATION(CS2303)

Third Year CSE( Sem:V)

2 marks Questions and Answers

UNIT I

Why are switching circuits called as finite state systems?

A switching circuit consists of a finite number of gates, each of which can be in any one of the two conditions 0 or 1.Although the voltages assume infinite set of values,the electronic circuitry is designed so that the voltages orresponding to 0 or 1 are stableand all others adjust to these value. Thus control unit of a computer is a finite statesystem.

What is a : (a) String (b) Regular language

A string x is accepted by a Finite Automaton M=(Q, Σ, δ.q0,F) if δ (q0,x)=p, for some p in F.FA accepts a string x if the sequence of transitions corresponding to the symbols of x leads from the start state to accepting state.

The language accepted by M is L(M) is the set {x | _(q0,x) is in F}. A language is regular if it is accepted by some finite automaton.

Define: (i) Finite Automaton(FA) (ii)Transition diagram

FA consists of a finite set of states and a set of transitions from state to state that occur on input symbols chosen from an alphabet _. Finite Automaton is denoted by a 5- tuple(Q,Σ, δ,q0,F), where Q is the finite set of states , _ is a finite input alphabet, q0 in Q is the initial state, F is the set of final states and _ is the transition mapping function Q * _ to Q.

Transition diagram is a directed graph in which the vertices of the graph correspond to the states of FA. If there is a transition from state q to state p on input a, then there is an arc labeled ‘ a ‘ from q to p in the transition diagram.

. What are the applications of automata theory?

_ In compiler construction.

_ In switching theory and design of digital circuits.

_ To verify the correctness of a program.

_ Design and analysis of complex software and hardware systems.

_ To design finite state machines such as Moore and mealy machines.

What is Moore machine and Mealy machine?

A special case of FA is Moore machine in which the output depends on the state of the machine. An automaton in whch the output depends on the transition and current input is called Mealy machine.

What are the components of Finite automaton model?

The components of FA model are Input tape, Read control and finite control.

(a)The input tape is divided into number of cells. Each cell can hold one i/p symbol

. (b)The read head reads one symbol at a time and moves ahead.

( c)Finite control acts like a CPU. Depending on the current state and input symbol read from the input tape it changes state.

Differentiate NFA and DFA

NFA or Non Deterministic Finite Automaton is the one in which there exists many paths for a specific input from current state to next state. NFA can be used in theory of computation because they are more flexible and easier to use than DFA .

Deterministic Finite Automaton is a FA in which there is only one path for a specific input from current state to next state. There is a unique transition on each input symbol.(Write examples with diagrams).

What is _-closure of a state q0?

_-closure(q0 ) denotes a set of all vertices p such that there is a path from q0 to p labeled _. Example :closure(q0)={q0,q1}

.Give the examples/applications designed as finite state system.

Text editors and lexical analyzers are designed as finite state systems. A lexical analyzer scans the symbols of a program to locate strings corresponding to identifiers, constants etc, and it has to remember limited amount of information .

Define automaton.

Automaton is a abstact computing device. It is a mathematical model of a system,with discrete inputs,outputs,states and set of tranitions from state to state that occurs on input symbols from alphabet Σ.

what is the principle of mathematical induction.

Let P(n) be a ststement about a non negative integer n. Then the principle of mathematical induction is that P(n) follows from

P(1) and

P(n-1) implies P(n) for all n>1.

Condition(i) is called the basis step and condition (ii) is called the inductive step. P(n-1) is called the induction hypothesis.

Transition Diagram associated with DFA is a directed graph whose vertices corresponds to states of DFA, The edges are the transitions from one state to another.

What are the properties of Transition Function(δ)

δ(q.ε )=q

For all strings w and input symbol a

Δ(q,aw)= δ(δ(q.a),w)

Δ(q,wa)= δ(δ(q,w).a)

The transition function δ can be extended that operates on states and strings.

Lists the operations on Strings.

Length of a string

Empty string

Concatenation of string

Reverse of a string

Power of an alphabet

Kleene closure

Substring

Palindrome

Lists the operations on Languages.

Product

Reversal

Power

Kleene star

Kleene plus

Union

Intersection

Define Graphs.

A graph denoted by G=(V,E) consists of a finite set of vertices (or) nodes V and a set E, a pair of vertices called edges.

Define Substring.

A string v appears within another string w(w=uv) is called “substring of w.” IF w=uv,then substrings u & v are said to be prefix and suffix of w respectively.

UNIT II

What is a regular expression?

A regular expression is a string that describes the whole set of strings according to certain syntax rules. These expressions are used by many text editors and utilities to search bodies of text for certain patterns etc. Definition is: Let _ be an alphabet. The regular expression over _ and the sets they denote are:

i. _ is a r.e and denotes empty set.

ii. _ is a r.e and denotes the set {_}

iii. For each ‘a’ in _ , a+ is a r.e and denotes the set {a}.

iv. If ‘r’ and ‘s’ are r.e denoting the languages R and S respectively then (r+s),

(rs) and (r*) are r.e that denote the sets RUS, RS and R* respectively.

Differentiate L* and L+

_

L* denotes Kleene closure and is given by L* =U Li i=0

example : 0* ={_ ,0,00,000,…………………………………}

Language includes empty words also.

_

L+ denotes Positive closure and is given by L+= U Li i=1 q0 q1

What is Arden’s Theorem?

Arden’s theorem helps in checking the equivalence of two regular expressions. Let P and Q be the two regular expressions over the input alphabet _. The regular expression R is given as : R=Q+RP Which has a unique solution as R=QP*.

Write a r.e to denote a language L which accepts all the strings which begin or end with either 00 or 11.

The r.e consists of two parts:

L1=(00+11) (any no of 0’s and 1’s) =(00+11)(0+1)*

L2=(any no of 0’s and 1’s)(00+11) =(0+1)*(00+11)

Hence r.e R=L1+L2 =[(00+11)(0+1)*] + [(0+1)* (00+11)]

Construct a r.e for the language over the set _={a,b} in which total number of a’s are divisible by 3

( b* a b* a b* a b*)*

what is: (i) (0+1)* (ii)(01)* (iii)(0+1) (iv)(0+1)+

(0+1)*= { _ , 0 , 1 , 01 , 10 ,001 ,101 ,101001,…………………}

Any combinations of 0’s and 1’s.

(01)*={_ , 01 ,0101 ,010101 ,…………………………………..}

All combinations with the pattern 01.

(0+1)= 0 or 1,No other possibilities.

(0+1)+= {0,1,01,10,1000,0101,………………………………….}

Reg exp denoting a language over _ ={1} having (i) even length of string (ii) odd length of a string

(i) Even length of string R=(11)*

(ii) Odd length of the string R=1(11)*

Reg exp for: (i) All strings over {0,1} with the substring ‘0101’ (ii) All strings beginning with ’11 ‘ and ending with ‘ab’ (iii) Set of all strings over {a,b}with 3 consecutive b’s. (iv) Set of all strings that end with ‘1’and has no substring ‘00’

(i)(0+1)* 0101(0+1)*

(ii)11(1+a+b)* ab

(iii)(a+b)* bbb (a+b)*

(iv)(1+01)* (10+11)* 1

Construct a r.e for the language which accepts all strings with atleast two c’s over the set Σ={c,b}

(b+c)* c (b+c)* c (b+c)*

What are the applications of Regular expressions and Finite automata Lexical analyzers and Text editors are two applications.

Lexical analyzers:

The tokens of the programming language can be expressed using regular expressions.

The lexical analyzer scans the input program and separates the tokens.For eg identifier can be expressed as a regular expression

as: (letter)(letter+digit)*

If anything in the source language matches with this reg exp then it is recognized as an identifier.The letter is{A,B,C,………..Z,a,b,c….z} and digit is {0,1,…9}.Thus reg exp identifies token in a language.

Text editors:

These are programs used for processing the text. For example UNIX text editors uses the reg exp for substituting the strings such as: S/bbb*/b/

Gives the substitute a single blank for the first string of two or more blanks in a given line. In UNIX text editors any reg exp is converted to an NFA with Єtransitions, this NFA can be then simulated directly.

.Reg exp for the language that accepts all strings in which ‘a’ appears tripled overthe set Σ ={a}

reg exp=(aaa)*

.What are the applications of pumping lemma?

Pumping lemma is used to check if a language is regular or not.

Assume that the language(L) is regular.

Select a constant ‘n’.

Select a string(z) in L, such that |z|>n.

Split the word z into u,v and w such that |uv|<=n and |v|>=1.

You achieve a contradiction to pumping lemma that there exists an ‘i’ Such that uvi

w is not in L.Then L is not a regular language.

What is the closure property of regular sets?

The regular sets are closed under union, concatenation and Kleene closure.

r1Ur2= r1 +r2

r1.r2= r1r2

( r )*=r*

The class of regular sets are closed under complementation, substitution, homomorphism and inverse homomorphism.

.Reg exp for the language such that every string will have atleast one ‘a’ followed by atleast one ‘b’.

R=a+b+

Write the exp for the language starting with and has no consecutive b’s .

reg exp=(a+ab)*

Lists on the closure properties of Regular sets.

Union

Concatenation

Closure

Complementation

Intersection

Transpose

Substitutions

Homomorphism

Let R be any set of regular languages. IsUR regular? Prove it.

Yes. Let P,Q be any two regular languages .As per theorem

L( R )=L(P UQ)

=L(P+Q)

Since ‘+’ is a operator for regular expresstions L( R ) is also regular.

A context free grammar (CFG) is denoted as G=(V,T,P,S) where V and T are finite set of variables and terminals respectively. V and T are disjoint. P is a finite set of productions each is of the form A->_ where A is a variable and _ is a string of symbols from (V U T)*.

What is the language generated by CFG or G?

The language generated by G ( L(G) ) is {w | w is in T* and S=>w. That is a G string is in L(G) if:

(1) The string consists solely of terminals.

(2) The string can be derived from S.

.What is : (a) CFL (b) Sentential form

L is a context free language (CFL) if it is L(G) for some CFG G.

A string of terminals and variables α is called a sentential form if: S => α ,where S is the start symbol of the grammar.

What is the language generated by the grammar G=(V,T,P,S) where

P={S->aSb, S->ab}?

S=> aSb=>aaSbb=>…………………………..=>anbn

Thus the language L(G)={ anbn | n>=1}.The language has strings with equal number of a’s and b’s.

What is :(a) derivation (b)derivation/parse tree (c) subtree

(a) Let G=(V,T,P,S) be the context free grammar. If A-> β is a production of P and α and γ are any strings in (VUT)* then α A γ => αβγ

(b) A tree is a parse \ derivation tree for G if:

(i) Every vertex has a label which is a symbol of VU TU{_}.

(ii) The label of the root is S.

(iii) If a vertex is interior and has a label A, then A must be in V.

(iv) If n has a label A and vertices n1,n2,….. nk are the sons of the vertex n in order from left with labels X1,X2,………..Xk respectively then A X1X2…..Xk must be in P.

(v) If vertex n has label _ ,then n is a leaf and is the only son of its father.

(c ) A subtree of a derivation tree is a particular vertex of the tree together with all its descendants ,the edges connecting them and their labels.The label of the root may not be the start symbol of the grammar.

If S->aSb | aAb , A->bAa , A->ba .Find out the CFL

soln. S->aAb=>abab

S->aSb=>a aAb b =>a a ba b b(sub S->aAb)

S->aSb =>a aSb b =>a a aAb b b=>a a a ba b bb

Thus L={anbmambn, where n,m>=1}

What is a ambiguous grammar?

A grammar is said to be ambiguous if it has more than one derivation trees for a sentence or in other words if it has more than one leftmost derivation or more than one rightmost derivation.

The languages accepted by NPDA and DPDA are not equivalent. For example: wwR is accepted by NPDA and not by any DPDA.

State the equivalence of acceptance by final state and empty stack.

If L = L(M2) for some PDA M2 , then L = N(M1) for some PDA M1.

If L = N(M1) for some PDA M1 ,then L = L(M2 ) for some PDA M2

where L(M) = language accepted by PDA by reaching a final state. N(M) = language accepted by PDA by empty stack.

UNIT IV

What is a formal language?

Language is a set of valid strings from some alphabet. The set may be empty,finite or infinite. L(M) is the language defined by machine M and L( G) is the language defined by Context free grammar. The two notations for specifying formal languages are: Grammar or regular expression Generative approach) Automaton(Recognition approach)

.What is Backus-Naur Form(BNF)?

Computer scientists describes the programming languages by a notation called Backus- Naur Form. This is a context free grammar notation with minor changes in format and some shorthand.

A parser for grammar G is a program that takes as input a string w and produces as output either a parse tree for w ,if w is a sentence of G or an error message indicating that w is not a sentence of G.

What are the closure properties of CFL?

CFL are closed under union, concatenation and Kleene closure.

CFL are closed under substitution , homomorphism. CFL are not closed under intersection , complementation. Closure properties of CFL’s are used to prove that certain languages are not context free.

State the pumping lemma for CFLs.

Let L be any CFL. Then there is a constant n, depending only on L, such that if z is in L and |z| >=n, then z=uvwxy such that :

(i) |vx| >=1

(ii) |vwx| <=n and

(iii) for all i>=0 uviwxiy is in L.

What is the main application of pumping lemma in CFLs?

The pumping lemma can be used to prove a variety of languages are not context free . Some examples are:

L1 ={ aibici | i>=1} is not a CFL.

L2= { aibjcidj | i>=1 and J>=1 } is not a CFL.

What is Ogden’s lemma?

Let L be a CFL. Then there is a constant n such that if z is any word in L, and we mark any n or more positions of z “ distinguished” then we can write z=uvwxy suchthat:

(1) v and x together have atleast one distinguished position.

(2) vwx has at most n distinguished positions and

(3) for all i>=0 uviwxiy is in L.

Give an example of Deterministic CFL.

The language L={anbn : n>=0} is a deterministic CFL

What are the properties of CFL?

Let G=(V,T,P,S) be a CFG

The fanout of G , _(G) is largest number of symbols on the RHS of any rule in R.

The height of the parse tree is the length of the longest path from the root to some leaf.

What is a turing machine?

Turing machine is a simple mathematical model of a computer. TM has unlimited and unrestricted memory and is a much more accurate model of a general purpose computer. The turing machine is a FA with a R/W Head. It has an infinite tape divided into cells ,each cell holding one symbol.

What are the special features of TM?

In one move ,TM depending upon the symbol scanned by the tape head and state of the finite control:

Changes state.

Prints a symbol on the tape cell scanned, replacing what was written there.

Moves the R/w head left or right one cell.

Define Turing machine.

A Turing machine is denoted as M=(Q,Σ,Ґ ,δ ,q0, B,F)

Q s a finite set of states.

Σ is set of i/p symbols ,not including B.

Ґ is the finite set of tape symbols.

q0 in Q is called start state.

B in Ґ is blank symbol.

F is the set of final states.

Δ is a mapping from Q X Ґ to Q X Ґ X {L,R}.

Define Instantaneous description of TM.

The ID of a TM M is denoted as α1q α2 . Here q is the current state of M s in Q; α1 α2 is the string in Ґ * that is the contents of the tape up to the rightmost nonblank symbol or the symbol to the left of the head, whichever is the rightmost.

What are the applications of TM?

TM can be used as:

Recognizers of languages.

Computers of functions on non negative integers.

Generating devices.

What is the basic difference between 2-way FA and TM?

Turing machine can change symbols on its tape , whereas the FA cannot change symbols on tape. Also TM has a tape head that moves both left and right side ,whereas the FA doesn’t have such a tape head.

What is (a)total recursive function and (b)partial recursive function

If f(i1,i2,………ik) is defined for all i1,…..ik then we say f is a total recursive function. They are similar to recursive languages as they are computed by TM that always halt.

A function f(i1,…ik) computed by a Turing machine is called a partial recursive function. They are similar to r.e languages as they are computed by TM that may or may not halt on a given input.

The language accepted by M is L(M) , is the set of words in _ * that cause M to enter a final state when placed ,justified at the left on the tape of M, with M at qo and the tape head of M at the leftmost cell. The language accepted by M is: { w | w in _ * and q0w |--- _1 p _2 for some p in F and _1 ,_2 in _ * }.

Give examples of total recursive functions.

All common arithmetic functions on integers such as multiplication , n!, [log2n] and 22n are total recursive functions.

UNIT V

What are(a) recursively enumerable languages (b) recursive sets?

The languages that is accepted by TM is said to be recursively enumerable (r. e ) languages. Enumerable means that the strings in the language can be enumerated by the TM. The class of r. e languages include CFL’s.

The recursive sets include languages accepted by at least one TM that halts on all inputs.

What are the various representation of TM?

We can describe TM using:

Instantaneous description.

Transition table.

Transition diagram.

3.What are the possibilities of a TM when processing an input string?

TM can accept the string by entering accepting state.

It can reject the string by entering non-accepting state.

It can enter an infinite loop so that it never halts.

4.What are the techniques for Turing machine construction?

Storage in finite control.

Multiple tracks.

Checking off symbols.

Shifting over

Subroutines.

What is the storage in FC?

The finite control(FC) stores a limited amount of information. The state of the Finite control represents the state and the second element represent a symbol scanned.

When is checking off symbols used in TM?

Checking off symbols is useful method when a TM recognizes a language with repeated strings and also to compare the length of substrings.

(eg) : { ww | w _ _ * } or {aibi | i>=1}. This is implemented by using an extra track on the tape with symbols Blank or √.

When is shifting over Used ?

A Turing machine can make space on its tape by shifting all nonblank symbols a finite number of cells to the right. The tape head moves to the right , repeatedly storing the symbols in the FC and replacing the symbols read from the cells to the left. The TM can then return to the vacated cells and prints symbols.

What is a multihead TM?

A k-head TM has some k heads. The heads are numbered 1 through k, and move of the TM depends on the state and on the symbol scanned by each head. In one move, the heads may each move independently left or right or remain stationary.

What is a 2-way infinite tape TM?

In 2-way infinite tape TM, the tape is infinite in both directions. The leftmost square is not distinguished. Any computation that can be done by 2-way infinite tape can also be done by standard TM.

How can a TM used as a transducer?

A TM can be used as a transducer. The most obvious way to do this is to treat the entire nonblank portion of the initial tape as input , and to treat the entire blank portion of the tape when the machine halts as output. Or a TM defines a function y=f(x) for strings x ,y _ _* if: q0X | --- qfY, where qf is the final state.

What is a multi-tape Turing machine?

. A multi-tape Turing machine consists of a finite control with k-tape heads and ktapes ; each tape is infinite in both directions. On a single move depending on the state of finite control and symbol scanned by each of tape heads ,the machine can change state print a new symbol on each cells scanned by tape head, move each of its tape head independently one cell to the left or right or remain stationary.

.What is a multidimensional TM?

The device has a finite control , but the tape consists of a k-dimensional array of cells infinite in all 2k directions, for some fixed k. Depending on the state and symbol scanned , the device changes state , prints a new symbol and moves its tapehead in one of the 2k directions, either positively or negatively ,along one of the k-axes.

13. When a recursively enumerable language is said to be recursive ? Is it true that the language accepted by a non-deterministic Turing machine is different from recursively enumerable language?

A language L is recursively enumerable if there is a TM that accepts L and

recursive if there is a TM that recognizes L. Thus r.e language is Turing acceptable and recursive language is Turing decidable languages. No , the language accepted by non-deterministic Turing machine is same as recursively enumerable language.

What is Church’s Hypothesis?

The notion of computable function can be identified with the class of partial recursive functions is known as Church-hypothesis or Church-Turing thesis. The Turing machine is equivalent in computing power to the digital computer.

When we say a problem is decidable? Give an example of undecidable

problem?

A problem whose language is recursive is said to be decidable.

Otherwise the problem is said to be undecidable. Decidable problems have an

algorithm that takes as input an instance of the problem and determines whether

the answer to that instance is “yes” or “no”.

(eg) of undecidable problems are

(1)Halting problem of the TM.

15. Give examples of decidable problems.

1. Given a DFSM M and string w, does M accept w?

2. Given a DFSM M is L(M) = _ ?

3. Given two DFSMs M1 and M2 is L(M1)= L(M2) ?

4. Given a regular expression _ and a string w ,does _ generate w?

5. Given a NFSM M and string w ,does M accept w?

16. Give examples of recursive languages?

i. The language L defined as L= { “M” ,”w” : M is a DFSM that

accepts w} is recursive.

ii. L defined as { “M1” U “M2” : DFSMs M1 and M2 and L(M1)

=L(M2) } is recursive.

17. What are UTMs or Universal Turing machines?

Universal TMs are TMs that can be programmed to solve any problem, that can be solved by any Turing machine. A specific Universal Turing machine U is:

Input to U: The encoding “M “ of a Tm M and encoding “w” of a string w.

Behavior : U halts on input “M” “w” if and only if M halts on input w.

18. What is the crucial assumptions for encoding a TM?

There are no transitions from any of the halt states of any given TM .

Apart from the halt state , a given TM is total.

19. What properties of recursive enumerable seta are not decidable?

Emptiness

Finiteness

Regularity

Context-freedom.

20. Define L .When is a trivial property?

L is defined as the set { <M> | L(M) is in . } is a trivial property if is empty or it consists of all r.e languages.

21.What is a universal language Lu?

The universal language consists of a set of binary strings in the form of

pairs (M,w) where M is TM encoded in binary and w is the binary input string.

Lu = { < M,w> | M accepts w }.

22.What is a Diagonalization language Ld?

The diagonalization language consists of all strings w such that the TM M

whose code is w doesnot accept when w is given as input.

23. What properties of r.e sets are recursively enumerable?

L ≠Φ

L contains at least 10 members.

w is in L for some fixed w.

L ∩ Lu ≠ Φ

24. What properties of r.e sets are not r.e?

L = Φ

L = Σ *.

L is recursive

L is not recursive.

L is singleton.

L is a regular set.

L - Lu ≠ Φ

25. What are the conditions for L to be r.e?

L is recursively enumerable iff satisfies the following properties:

i. If L is in and L is a subset of L_ ,then L_ is in (containment property)

ii. If L is an infinite language in ,then there is a finite subset of L in .

iii. The set of finite languages in is enumaerable.

26. What is canonical ordering?

Let Σ * be an input set. The canonical order for Σ *as follows . List words in

order of size, with words of the same size in numerical order. That is let _ ={

x0,x1,…x t-1 } and xi is the digit i in base t.

(e.g) If _ ={ a,b } the canonical order is Σ * , a ,b , aa, ab ,……..

27. How can a TM acts as a generating device?

In a multi-tape TM ,one tape acts as an output tape, on which a symbol, once written can never be changed and whose tape head never moves left. On that output tape , M writes strings over some alphabet _ , separated by a marker symbol # , G(M) ( where G(M) is the set w in Σ * * such that w is finally printed between a pair of #’s on the output device ).

Consider the ambiguity problem for CFGs. Use the “yes-no” version of AMB. An algorithm for FIND is used to solve AMB. FIND requires producing a word with two or more parses if one exists and answers “no” otherwise. By the reduction of AMB to FIND we conclude there is no algorithm for FIND and hence no algorithm for AMB.

30.State the halting problem of TMs.

The halting problem for TMs is: Given any TM M and an input string w, does M halt on w? This problem is undecidable as there is no algorithm to solve this problem.

31.Define PCP or Post Correspondence Problem.

An instance of PCP consists of two lists , A = w1,w2,….wk and B = x1,…..xk of strings over some alphabet _ .This instance of PCP has a solution if there is any sequence of integers i1,i2,..im with m >=1 such that wi1, wi2,…wim = xi1,xi2 ,…xim The sequence i1 ,i2 ,…im is a solution to this instance of PCP.

32.Define MPCP or Modified PCP.

The MPCP is : Given lists A and B of K strings from _ * ,say A = w1 ,w2, …wk and B= x1, x2,…..xk does there exists a sequence of integers i1,i2,…ir such that w1wi1wi2…..wir = x1xi1xi2…xir?