research on problem solving in mathematics