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