Due: Monday, Oct 3rd by 11:59 PM

Your task

Submit a corrected version of Assignment 2.

This assignment will allow you to earn back up to 50% of the points you lost on assignment 2. I.e., if you got 80/100 on assignment 2, you could get up to 90/100 if your corrected version is completely correct.

Hints

The feedback you received for assignment 2 contained, for each incorrect regular expression, examples of strings that should have been generated, but were not, and/or strings that should not have been generated, but were. Make sure you understand the incorrect behavior of your regular expressions, and think of how you could fix them.

Hint on problem 4: the goal is to not generate a b followed by an a. So, make sure that any repetition constructs cannot generate both substrings that end with b and substrings that start with a. For example, the regular expression

(ac|cb)*

could generate cb followed by ac, resulting in the string cbac, which is not in the language. The challenge is to think of how to generate all legal strings without generating any illegal strings.

Submitting

Submit your answers as a plain text file to Marmoset as assign2.5:

https://cs.ycp.edu:8443/

Do not submit a Word or OpenOffice document.

IMPORTANT: after uploading, you should download a copy of your submission and double-check it to make sure that it contains the correct file(s). You are responsible for making sure your submission is correct. You may receive a grade of 0 for an incorrectly submitted assignment.