Factor Graph is a type of probabilistic graphical model. It also used to represent factorization of a probability distribution function, enabling efficient computations, such as the computation of marginal distributions through the sum-product algorithm. Factor Graphs are compatible both with “behavioral” and “probabilistic” modeling styles. One of the important success stories of factor graphs and the sum-product algorithm is the decoding of capacity-approaching error-correcting codes, such as LDPC and turbo codes.