Do problem 3.6, parts a-d only, on page 147. Your descriptions should be simple, which may require you to do more than just a literal one-to-one translation of the regular expression notation into English.
Write a regular expression for the language consisting of all strings over the alphabet {a, b, c} in which no a is immediately followed by a b.
Eliminate left recursion from the following grammar:
E -> E+T | E-T | T T -> T*F | T/F | F F -> (E) | id | F!
For the following grammar (in which epsilon represents the empty string)
S -> (T) | epsilon T -> [S] | a
([([])])
.