Introduction to proof and problem solving