Text this: A logical approach to discrete math /