Discrete probability theory