Discrete Mathematics For Computing by Rod Haggarty