Micro-PROLOG : programming in logic. - Clark, K. L.