The class of pseudod-ifferential operators form an associative algebra of Fourier integral operators. Moreover, given symbols $a,b,c\in C^\infty$ (each associated to some pseudo differential operator), for the composition of symbols (#) there holds:
$$\text{op}(a)\circ \text{op}(b) = \text{op}(a\# b),$$
so, obviously, $\#$ should be an associative operation as well.
The latter is equivalent to prove for
$$(a \# b)(x,y)=\sum_{|\alpha|\geq 0} \frac 1 {\alpha!} \partial_y^\alpha a(x,y) D_x^\alpha b(x,y)\quad (1)$$
there holds $(a\#b)\# c = a\#(b\# c)$, where $D=-i\partial$.
To check this, I first defined $\circ_N$ which considers in $(1)$ only the multi-indexes up to length $N$, i.e.
$$(a \circ_N b)(x,y)=\sum_{|\alpha|\leq N} \frac 1 {\alpha!} \partial_y^\alpha a(x,y) D_x^\alpha b(x,y).$$
Now, using the general Leibniz product rule I get
$$LS := (a\circ_N b) \circ_N c = \sum_{|\alpha|\leq N} \frac 1 {\alpha!} \partial_\xi^\alpha (\sum_{|\beta|\leq N}) \partial_\xi^\beta a D_x^\beta b) D_x^\alpha c = \sum_{|\alpha|\leq N,\ |\beta|\leq N,\ \alpha_1+\alpha_2=\alpha} \frac{1} {\beta!\alpha_1!\alpha_2!} (\partial_\xi^{\alpha_1+\beta} a) (\partial_\xi^{\alpha_2}D_x^\beta b) (D_x^\alpha c).$$
Similarly, we see
$$RS := a \circ_N (b\circ_N c) = \sum_{|\alpha|\leq N,\ |\beta|\leq N,\ \alpha_1+\alpha_2=\alpha} \frac{1} {\beta!\alpha_1!\alpha_2!} (\partial_\xi^\alpha a) (\partial_\xi^{\beta}D_x^{\alpha_2} b) (D_x^{\alpha_1+\beta} c).$$
But unfortunately it is $LS\neq RS$; the larger $N$, the more different terms arise on each side and they will never cancel.
What's my mistake?