Overview of Critical Thinking in Problem Solving