# Problem
In lecture, we saw the following context-free grammar (CFG), for simple arithmetic expressions:
```
expr : expr add_op term
| term
term : term mult_op factor
| factor
factor : id
| number
| '-' factor
| '(' expr ')'
add_op : '+'
| '-'
mult_op : '*'
| '/'
```
Modify the grammar to allow a binary infix exponentiation operator. As in mathematics, it should have higher precedence than the other operators, and be right associative. For example, `2**2**3` means $2^{2^3}$ and evaluates to $2^8=256$, not $4^3=64$.
## (a)
Adapt the CFG, for exponentiation.
## (b)
Draw a parse tree for `2**(1+1)**4`, using your new CFG.
# Process
...
# Answer
...