Knowledge Representation, Reasoning and Declarative Problem Solving