# Gaussian mixture model parameter updates derivation?

I've been following a helpful tutorial and I'm trying to understand the parameter updates. For example, the mu_k parameter update is below. I'm unsure why the sum(Bk) does not cancel out as it's in both the numerator and denominator of the mu and sigma parameter update formulas.

These updates look fairly similar to MLE for a single gaussian distribution. The difference is the SUM(Bk) terms are replaced by 1/N in gaussian MLE. So I think I'm close to understanding what's going on here, but I'm currently "stuck" on the following questions:

A) what are the derivations for these parameter updates?

B) Why don't SUM(Bk) terms cancel?

Edit: I should have added - I'm not sure if these parameter updates are accurate. In the code attached in the above link, convergence on correct parameters does occur, which leads me to believe that the formulas are correct.