Compiler HWK#2 Due date: 2:20pm, April 6, 2006 1. Remove left recursion from the grammar below: E -> E + T E -> T T -> T * P | T / P | P P -> id | ( P ) 2. Remove left factors from the grammar below: S -> if E then S end if ; S -> if E then S else S end if ; 3. Consider the grammar in 1, compute FIRST(alpha) for each alpha that is either a nonterminal or a string on the right hand side of a production. Note: Write down the intermediate results, not just the answers.