definite clause grammars for language analysis - a survey of the formalism and a comparison with augmented transition networks .
Logic for problem solving