Problem
1. How does the recursive-descent parser find an error in a regular expression such as (A+B)*BC+ which is incomplete?
2. Give the parse tree for the regular expression ((A+B)+(C+D)*)*.
3. Extend the arithmetic expression grammar to include exponentiation, division, and modulus operators.