Mathematical Thinking: Problem-Solving and Proofs (2nd Edition)