In the $\lambda$-calculus expression:
$$ (\lambda x.\lambda y.xy)(f(f(a))) $$
Can the subexpression $(f(f(a))$ be split into two terms, $M$ and $N$? (Maybe, via $\alpha$-conversion?) If so, what could those two terms be? $f$ and $fa$? $ff$ and $a$?
Suppose it is possible. Then we'd have $(\lambda xy.xy)(MN)$. Are the following steps valid?:
\begin{align} (\lambda xy.xy)(MN) \\ (\lambda xy.xy)MN \\ ((\lambda xy.xy)[x:=M])N \\ (\lambda y.My)N \\ (\lambda y.My)[y:=N] \\ MN \end{align}
Is the second step above valid? I.e. is it valid to go from $(\lambda xy.xy)(MN)$ to $(\lambda xy.xy)MN$?