Noticed the changed placement of the alignment charecter in relation to the equals signs and the consequent use of extra braces as ={}& to ensure correct spacing. I have also defined your missing commands with \DeclareMathOperator. I chose to load mathtools instead of amsmath, but that is just personal preference; it loads amsmath anyway.

Personally, I would write &= as I write always. And then use \! before the \begin{aligned}.... Shorter in my opinion (may be not truly aligned, but it looks well).
–
ManuelDec 3 '12 at 18:20

@Manuel That is what I usually do too, but in this case the misalignment seemed too much. I'll really have to understand one day what is going there.
–
Andrew SwannDec 3 '12 at 18:40

I have just ignored the usage of [t] in my trying. By the way, I think {}& just give the right (balance) spacing of =, is it right?
–
user19832Dec 17 '12 at 8:06

@user19832 The [t] or [b] option is very useful for fixing the vertical alignment. The documentation for the mathtools package uses ={}& almost everywhere in alignments. To my eyes (which often deceive me) it gives very tiny extra space in comparison with &=, but I haven't made any concrete measurements.
–
Andrew SwannDec 17 '12 at 9:48