How to prove it a structured approach - Velleman, Daniel J. (Cambridge University Press, 2006)