100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.6 TrustPilot
logo-home
Exam (elaborations)

COS3701 Assignment 2 (COMPLETE ANSWERS) 2025

Rating
-
Sold
-
Pages
17
Grade
A+
Uploaded on
15-07-2025
Written in
2024/2025

100% TRUSTED WORKINGS, EXPLANATIONS & SOLUTIONS

Institution
Module










Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Institution
Module

Document information

Uploaded on
July 15, 2025
Number of pages
17
Written in
2024/2025
Type
Exam (elaborations)
Contains
Questions & answers

Subjects

Content preview

COS3701
Assignment 2
(COMPLETE
ANSWERS) 2025
FOR MORE ASSISTANCE CONTACT:




100% TRUSTED WORKINGS, EXPLANATIONS
& SOLUTIONS

,COS3701 Assignment 2 (COMPLETE
ANSWERS) 2025
Question 1 10 Find CFGs for all words that do not have
the substring aba over the alphabet Σ = {a b}.
To construct a Context-Free Grammar (CFG) for all words over the alphabet Σ
= {a, b} that do not contain the substring "aba", we need to carefully design
rules that generate all such strings while preventing the forbidden pattern from
forming.


✅ Step-by-step approach:

We’ll define a CFG that:
 Generates all strings over {a, b}
 Avoids generating any string with "aba" as a substring


🎯 Key Idea
Keep track of the last few letters of the string being built, to avoid creating "aba".


📘 CFG Variables:

Let’s define the non-terminals as follows:
 S: Start symbol — generates all strings that avoid "aba"
 A: Last symbol was "a"
 AA: Last two symbols were "aa"
 B: Last symbol was "b"


🧩 Productions (CFG Rules)
We define the grammar as:
S → aA | bS | ε
A → aAA | bS (a followed by a = "aa" OR a followed by b is safe unless "ab" is

, followed by "a")
AA → aAA | bS (still safe until we get "aba")
Now let’s analyze the safety:
We must avoid the substring "aba".
So we disallow:
 From A, producing bA (i.e., forming "ab"), followed by a, which would
create "aba".
 Therefore, after "ab" we must not allow a.
So we’ll need to track when we just saw "ab" and prevent a next.


📘 Final CFG (safe version with tracking):

Let’s define new non-terminals:
 S: Start symbol.
 A: Previous symbol was a.
 AB: Previous two symbols were ab.
Now define productions:
S → aA | bS | ε
A → aA | bAB
AB → bS ; disallow `AB → a...` to avoid "aba"


✅ Explanation
 S → aA starts with a, moves to A
 A → bAB builds "ab" and moves to AB
 AB → bS continues only if next is b, so no AB → a..., avoiding "aba"
 All other transitions are safe and preserve valid strings.


🎓 Example strings generated:
 ε (empty string) ✅
 a✅

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
examexpert01 Chamberlain College Nursing
Follow You need to be logged in order to follow users or courses
Sold
195
Member since
2 year
Number of followers
111
Documents
937
Last sold
2 months ago

3.3

21 reviews

5
9
4
0
3
6
2
1
1
5

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their exams and reviewed by others who've used these revision notes.

Didn't get what you expected? Choose another document

No problem! You can straightaway pick a different document that better suits what you're after.

Pay as you like, start learning straight away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and smashed it. It really can be that simple.”

Alisha Student

Frequently asked questions