I am currently working on a project that involves parsing arithmetic expressions using a context-free grammar (CFG). I have the following CFG for generating arithmetic expressions:
E -> E + T
E -> T
T -> T * F
T -> F
F -> ( E )
F -> id
My task is to perform a bottom-up parsing tree for a specific input string: "id * ( id + id )".
I'm a bit confused about how to go about it. Can someone provide a step-by-step explanation or code example on how to construct the bottom-up parsing tree for this input string using the given CFG? Your help would be greatly appreciated!