Knowledge Representation and Logic Programming