Mathematical thinking Problem-solving and proofs - D'Angelo lhJohn P.