Discrete Markov Chains