Here is a lamba calculus expression:
$(\lambda x.\lambda y.y)(\lambda x.x)((\lambda x.x) (\lambda y.y))$
For simplicity let
$a:=(\lambda x.\lambda y.y)$
$b:=(\lambda x.x)$
$c:=(\lambda x.x)$
$d:=(\lambda y.y)$
Then I can re-write the expressions as evaluating $(a)(b)((c)(d))$, and I wish to compute how many different ways I can evaluate this expression using beta-reduction (which I am then supposed to write out). At first impulse I would think there would be $4!=24$ ways to do this by simply choosing all orderings of $a,b,c,d$ evaluations, but this seems like too many results ( now that I think about it I even see that it could be 5!). Any hints appreciated, there is something I am not understanding about the order of evaluations in Beta Reductions.
I also know that Beta-reductions are left associative, so the initial expression is equivalent to : $((\lambda x.\lambda y.y)(\lambda x.x))((\lambda x.x) (\lambda y.y))$