Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Automata and Compiler
(1) [25 marks] Let N be the last two digits of your student number. Design a finite automaton that accepts the language of strings that end with the last four bits of the binary expansion of N. (1.1) Make a regular expression ? of this language. For example the set of strings that end with 101 is expressed by a regular expression (0+1)*101. (1.2) Make an NFA that accepts this expression ?. You should remove any ?-moves that can be done trivially by inspection. (1.3) Make a subset automaton that accepts the language. (1.4) Perform state minimization on the above automaton.
(2) [25 marks] A CFG is given by S ? aSbS, S ? bSaS, S ? c
(2.1) Draw a syntax chart for this grammar. [5]
(2.2) Write a Python program for the recursive descent parser Trace the parser using two strings of at least 10 symbols, one for an accepted case and one for an unaccepted case. Do the trace using the style in the notes. [20]
(3) [25 marks] A sample program for computing the greatest common divisor by recursive call and its object program are given below. Some sample comments are given.
const a=75, b=55;
var x, y;
procedure gcd;
var w;
begin
if y>0 then begin
w:=y;
y:=x ? (x/y)*y;
x:=w;
call gcd;
end;
x:=a; y:=b;
write(x);
end.
0 jmp 0 21 Jump to 21, start of main
1 jmp 0 2
2 inc 0 4
3 lod 1 4
4 lit 0 0 Load literal 0
5 opr 0 12 Test if y>0
6 jpc 0 20 Jump to 20 if false
7 lod 1 4 Load y
8 sto 0 3 Store in w
9 lod 1 3
10 lod 1 3
11 lod 1 4
12 opr 0 5
13 lod 1 4
14 opr 0 4
15 opr 0 3
16 sto 1 4
17 lod 0 3
18 sto 1 3
19 cal 1 2
20 opr 0 0
21 inc 0 5
22 lit 0 75
23 sto 0 3
24 lit 0 55
25 sto 0 4
26 cal 0 2
27 lod 0 3
28 wrt 0 0 Write stack top
29 opr 0 0
Our primary concern is to obtain a clear characterization of which languages are recognizable by strictly local automata and which aren't. The view of SL2 automata as generators le
A common approach in solving problems is to transform them to different problems, solve the new ones, and derive the solutions for the original problems from those for the new ones
One of the first issues to resolve, when exploring any mechanism for defining languages is the question of how to go about constructing instances of the mechanism which define part
When we say "solved algorithmically" we are not asking about a speci?c programming language, in fact one of the theorems in computability is that essentially all reasonable program
examples of decidable problems
Both L 1 and L 2 are SL 2 . (You should verify this by thinking about what the automata look like.) We claim that L 1 ∪ L 2 ∈ SL 2 . To see this, suppose, by way of con
Consider a water bottle vending machine as a finite–state automaton. This machine is designed to accept coins of Rs. 2 and 5 only. It dispenses a single water bottle as soon as the
Applying the pumping lemma is not fundamentally di?erent than applying (general) su?x substitution closure or the non-counting property. The pumping lemma is a little more complica
Claim Under the assumptions above, if there is an algorithm for checking a problem then there is an algorithm for solving the problem. Before going on, you should think a bit about
Let ? ={0,1} design a Turing machine that accepts L={0^m 1^m 2^m } show using Id that a string from the language is accepted & if not rejected .
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd