Hi Joseph,
I guess I'm a bit confused. In your first diagram, how can you infer that the upper 2 and 3 means 2^3 and not 2*3, 2+3, etc?
Also how does your idea scale with arbitrary functions? For example can you make a diagram for y = sin(2x)?
p.s. Have you seen the function TreeForm
?
TreeForm[y == m x + b]
