The following posts contain some materials from the algorithm series (6.006, 6.046 and 6.851) of MIT and from X_400614 of VU Amsterdam.