Top Banner
Homework #5 Solutions
8

Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

Dec 19, 2015

Download

Documents

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: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

Homework #5 Solutions

Page 2: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

1. True or False

a) Regular Languages are always Context-Free Languages True False

b) Context Free Languages are always Regular Languages True False

c) The grammar S 0S |0S1S | is ambiguous

d) The language {anbncn} is regular

e) The language {anbncn} is context-free

True False

True False

True False

Page 3: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

2. Minimize the following dfa

(1) Dividing into Final and Non-Final States:

Partition I

Partition 2

Page 4: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

#2 cont.

(2) In Partition 1, all states “do the same thing” on an a. But on a b, states 1 and 6 both go to Partition II. We’ll move them to their own partition:

(3) We cannot partition further:

L(M) = (a*ba*ba*)*

Page 5: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

#3. a) Create a grammar that generates the set of all strings over {0,1}

with an equal number of 0’s and 1’s Also b) construct a parse tree and c) leftmost derivation of 0011. d) Is your grammar ambiguous? Why or why not?

a) S-> 0 S 1, S 1 S 0, S S S, S

b)

c) Yes. There is more than 1 parse tree for as well as for other strings.

S0 S 1 0 0 S 1 1 0 0 1 1

Page 6: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

#4. Find the Start symbol for the Java grammar shown at: http://www.cse.psu.edu/~saraswat/cg428/lecture_notes/LJava2.html

• The start symbol is CompilationUnit. – It doesn’t appear on the left-hand-side.

It is good technique to write a programminglanguage grammar so that the Start symboldoes not occur on the right-hand-side, andall grammars can be changed to anequivalent grammar having this property(how?)

Page 7: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

#5. For the grammar G: S X Z Z X

X x X Z zZ

a) What is L(G)?{ , x, z, xz, xx, zz, zx, xzz, xzx. zzx, xzzx }, a finite language

b) Proof Let X = { , x, z, xz, xx, zz, zx, xzz, xzx. zzx, xzzx }. To show X = L(G) requires 2 proof parts:1. if w X, then w L(G)2. if w L(G), then w X

1. Given: w XProve: w L(G) *

To show w L(G) means we have to show S wSince the language is finite, we can show this for each string: w = SXZZXZZXZXX= Similarly for the other elements of L.

Page 8: Homework #5 Solutions 1. True or False a) Regular Languages are always Context-Free Languages True False b) Context Free Languages are always Regular.

#5 cont2. if w L(G), then w XDerivations of strings of length 0 in L(G):SXZZXZZXZXX= and is in X

Derivations of strings of length 1 in L(G):SXZZXxZZXxZXxXx=x (can be derived another way

also)And x is in XSXZZXZZXzZXzXz=z (can be derived another way alsoAnd z is in X No other derivations result in strings of length 1

Similarly for derivations of strings of length 3 and 4