I'm curious why the implementation computes the update step using this approach:
|
Sigma_cond = prior_cov - K @ S @ K.T |
Is there an advantage in numerical stability or some other advantage in doing so? Would it not be more efficient to compute $C = \Sigma H^T$ as such?
C = prior_cov @ emission_matrix.T
S = emission_cov + emission_matrix @ C
K = psd_solve(S, C.T).T
Sigma_cond = prior_cov - K @ C.T