0% found this document useful (0 votes)
138 views

Problem 1: CS 103 Homework 6 Solutions Spring 2013-14

This document contains solutions to homework problems for a CS103 class on regular languages and finite automata. It includes regular expressions and explanations for strings that do and do not match certain languages. It also uses the Myhill-Nerode theorem to prove some languages are not regular. Finally, it provides the steps to convert a non-deterministic finite automaton to a deterministic finite automaton using subset construction, and then minimize the resulting deterministic finite automaton.

Uploaded by

Amar Agnihotri
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
138 views

Problem 1: CS 103 Homework 6 Solutions Spring 2013-14

This document contains solutions to homework problems for a CS103 class on regular languages and finite automata. It includes regular expressions and explanations for strings that do and do not match certain languages. It also uses the Myhill-Nerode theorem to prove some languages are not regular. Finally, it provides the steps to convert a non-deterministic finite automaton to a deterministic finite automaton using subset construction, and then minimize the resulting deterministic finite automaton.

Uploaded by

Amar Agnihotri
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

CS 103 Homework 6 Solutions Spring 2013-14

Problem 1
For this question, Σ = {a, b}.

a. Let Let L = {w|w ∈ Σ∗ , w does not end in aba}.

– Write a regular expression for L. (Submit this online : HW6 1a)


– Give a short (1-2 sentences) justification for the logic behind the regular expression.
b. Let L = {w|w ∈ Σ∗ , the third symbol of w is a}.
– Write a regular expression for L. (Submit this online : HW6 1b)
– Give a short (1-2 sentences) justification for the logic behind the regular expression.

Solution (16 points)


a. Let Let L = {w|w ∈ Σ∗ , w does not end in aba}.

– ((a|b)* (aaa|aab|abb|baa|bab|bba|bbb))|(a|b|ε)(a|b|ε)
– The first part of this regular expression generates all strings w with |w| ≥ 3 that don’t end in aba.
The second part of the regular expression generates all strings w with |w| < 3, which by definition
don’t end in aba.

Test strings : Positives : abbabababba, ababbababb, ε, a, aa, ab ; Negatives : abbabbaba, aba


b. Let L = {w|w ∈ Σ∗ , the third symbol of w is a}.
– (a|b)(a|b)a(a|b)*
– This regular expression generates strings with either a or b in the first and second positions, a in
the third position, and any number of characters after this a.
Test strings : Positives : abababab, aaa, aba ; Negatives : ε, a, ab, aaba, aa, bb

Problem 2
For this question, Σ = {a, b}.

a. Let L = {w|w ∈ Σ∗ , w does not contain bb as a substring}.

– What is the minimum number of states that a DFA to recognise L must have? Give a represen-
tative string from each equivalence class.
– Write a regular expression for L. (Submit this online : HW6 2a)
– Give a short (1-2 sentences) justification for the logic behind the regular expression.

b. Let L = {w|w ∈ Σ∗ , w has an odd number of as and starts and ends with a b}.
– What is the minimum number of states that a DFA to recognise L must have? Give a represen-
tative string from each equivalence class.
– Write a regular expression for L. (Submit this online : HW6 2b)
– Give a short (1-2 sentences) justification for the logic behind the regular expression.
CS 103 Homework 6 Solutions Spring 2013-14

Solution (30 points)


For this question, Σ = {a, b}.

a. Let L = {w|w ∈ Σ∗ , w does not contain bb as a substring}.


– A DFA to recognise L must have at least 3 states. The equivalence classes are [ε] (accepting), [b]
(accepting), [bb] (rejecting).
– (a|ba)* (|b)
– The first part of this regular expression generates all strings in the equivalence class of [ε] with
respect to L. The second part can append a b to any such string, generating a string in the
equivalence class of [b] with respect to L.
Test strings : Positives : aaaa, ε, baaaaaaba ; Negatives : babba, bb
b. Let L = {w|w ∈ Σ∗ , w has an odd number of as and starts and ends with a b}.
– A DFA to recognise L must have at least 5 states. The equivalence classes are [ε] (rejecting), [a]
(rejecting), [b] (rejecting), [ba] (rejecting), [bab] (accepting).
– b(b|ab* a)* abb*
– The bs on either end of the regular expression ensure that the string starts and ends with a
b. There is one compulsory a in every string, and additional as are introducted in pairs with
unlimited intervening bs.
Test strings : Positives : babaab, babbbb, bbbaabbbaaabbb ; Negatives : ε, bb

Problem 3
For this question, Σ = {a, b}.
n 2
o
a. Let L = an bn |n ∈ N . Use the Myhill Nerode theorem to prove that L is not regular.

b. Let L = {w|w ∈ Σ∗ , w = wR } 1 . Use the Myhill Nerode theorem to prove that L is not regular.

Solution (20 points)


For this question, Σ = {a, b}.
n 2
o
a. Using the Myhill-Nerode theorem, we prove that the language L = an bn |n ∈ N is not regular.
Consider the set of strings S = {ai |i ∈ N, i ≥ 0}. This is an infinite set of strings. Let wi = ai and
2
wj = aj be two arbitrary strings in S such that i 6= j. Append the string x = bi to each of wi and
2 2
wj . Since i 6= j, wi x = ai bi ∈ L, but wj x = aj bi 6∈ L.
Since the strings were chosen arbitrarily, any two strings in the infinite set S are distinguishable with
respect to L. By the Myhill-Nerode theorem, L is not regular.
b. Using the Myhill-Nerode theorem, we prove that the language L = {w|w ∈ Σ∗ , w = wR } is not regular.
Consider the set of strings S = {ai b|i ∈ N, i ≥ 0}. This is an infinite set of strings. Let wi = ai b and
wj = aj b be two arbitrary strings in S such that i 6= j. Append the string x = ai to each of wi and
wj . wi x = ai bai = (wi x)R , so wi x ∈ L, but wj x = aj bai 6= ai baj = (wi x)R , so wj x 6∈ L.
Since the strings were chosen arbitrarily, any two strings in the infinite set S are distinguishable with
respect to L. By the Myhill-Nerode theorem, L is not regular.
1 wR is w in reverse.
CS 103 Homework 6 Solutions Spring 2013-14

Problem 4
Let L = {w ∈ {0, 1, 2}∗ |w contains the same number of copies of the substrings 01 and 10 }. Is L regular?
If so, give a regular expression for L (Submit this online : HW6 4opt - optional, of course). If not, use the
Myhill Nerode theorem to prove that L is not regular.

Solution (14 points)


Using the Myhill-Nerode theorem, we prove that the language
L = {w ∈ {0, 1, 2}∗ |w contains the same number of copies of the substrings 01 and 10 } is not regular.
Consider the set of strings S = {(012)i |i ∈ N, i ≥ 0}. This is an infinite set of strings. Let wi = (012)i and
wj = (012)j be two arbitrary strings in S such that i 6= j. The string 01 appears i and j times respectively
in wi and wj .
Append the string x = (102)i , which contains i copies of the string 10, to each of wi and wj . wi x =
(012)i (102)i ∈ L, but wj x = (012)j (102)i 6∈ L.
Since the strings were chosen arbitrarily, any two strings in the infinite set S are distinguishable with
respect to L. By the Myhill-Nerode theorem, L is not regular.

Problem 5
a. – Convert the following NFA to a DFA using the subset construction. (Submit the resulting DFA
online : HW6 5a)
– List the subsets of {A, B, C, D} that correspond to states in the constructed DFA.

A a B


b b

a
D C

b. Minimise the resulting DFA. (Submit the minimised DFA online : HW6 5b)

Solution (20 points)


a. The subsets are {A}, {B}, {C}, {B, D}, and {}.
CS 103 Homework 6 Solutions Spring 2013-14

A a B

b b a, b
a
b

B, D C
b
a

Test strings : Accept a, b, aba, bba ; Reject ab, abb, ε


b.

A B, D
a, b

a, b a b
a

b
C

Test strings : Accept a, b, aba, bba ; Reject ab, abb, ε

You might also like