Possible Duplicate:
How does one actually show from associativity that one can drop parentheses?
In some ways this question seems obvious, but it is rarely covered. The normal definition given for a binary operation $\ast$ on a set $S$ is that, for all $a,b,c \in S$: $$((a \ast b) \ast c)=(a \ast (b \ast c)) \tag{Assoc}$$
It is normal then to go straight from here to assuming that given any string of members of $S$, we can bracket them however we like. For example, if we have the string $(a,b,c,d,e,f)$, where $a,b,c,d,e,f \in S$, then: $$\Bigl((a \ast b) \ast \bigl(c \ast ((d \ast e) \ast f)\bigr)\Bigr)=\Bigl(a \ast \Bigl(\bigl((b \ast c) \ast d\bigr) \ast (e \ast f)\Bigr)\Bigr).$$
We can prove this particular identity by repeated use of (Assoc): $$\begin{align*} ((a \ast b) \ast (c \ast ((d \ast e) \ast f))) &= (a \ast (b \ast (c \ast ((d \ast e) \ast f))))\\ &=(a \ast (b \ast (c \ast (d \ast (e \ast f)))))\\ &=(a \ast ((b \ast c) \ast (d \ast (e \ast f))))\\ &=(a \ast (((b \ast c) \ast d) \ast (e \ast f))). \end{align*}$$
However, I am looking for a neat, formal proof for the general case. This will involve coming up with some way of coding a 'bracketing'. One thought I had was to write the string of things we are multiplying together as the ordered $n$-tuple $(a_1,a_2,a_3,\ldots ,a_n)$ and then considering the $(n-1)$-tuple of pairs of adjacent elements $(j_1,j_2,\ldots,j_{n-1})$ where $j_i=(a_i,a_{i+1})$. Then we can order the $j_i$ to define a bracketing - for example, if we have $(a_1,a_2,a_3,a_4)$, the order $(j_2,j_3,j_1)$ corresponds to the bracketing $(a_1 \ast ((a_2 \ast a_3) \ast a_4))$ where we first bracket together around the second $\ast$, then around the third and then around the first. The bracketing need not be unique to the ording of the $j_i$ - $(j_3,j_1,j_2)$ and $(j_1,j_3,j_2)$ both correspond to the bracketing $((a_1 \ast a_2) \ast (a_3 \ast a_4))$, but we have a surjective mapping from the set of orders of the $j_i$ to the set of bracketings. The statement (Ass) above then corresponds to the statement that the product represented by $(\ldots,j_i,j_{i+1},\ldots)$ is the same as the product represented by $(\ldots,j_{i+1},j_i,\ldots)$. We can write this as $(\ldots,j_i,j_{i+1},\ldots) \backsimeq (\ldots,j_{i+1},j_i,\ldots)$. If we can show that this implies that any ordering $(j_{i_1},j_{i_2},\ldots,j_{i_n}) \backsimeq (j_1,j_2,\ldots,j_n)$ then we win.
Has anybody got any ideas?