The Forward Algorithm is an iterative algorithm used to compute the filtering distribution: p(Xt | e1:t). Note that we are computing an entire distribution.
FORWARD-ALGORITHM(X, e, t, bn) F = p(X0) // The prior distribution for time=1...t G = {} // Will hold the updated distribution // Remember, we need to compute the distribution over Xt for p in domain of Xt sum = 0 for q in domain of Xt-1 sum += p(Xt = p | Xt-1 = q) * F(q) end G(p) = p(et | Xt = p) * sum end F = G // Update the distribution end return F end