Mathematical thinking problem-solving and proofs - D'Angelo, John P.; West, Douglas B. (Prentice Hall, 1997)