I think the proof is OK.
I wanted to make a remark about the lack of a quantifier over A in the definition of union, but then I saw that it is a LaTeX error. Since you put existential quantifier in the beginning, I would do the same with the universal quantifier. I would also add an extra equality for clarity, and similarly for intersection.
Hint: use \mid instead of | in the set-builder notation. It creates correct spaces around it.