Logic programming formal methods and practical aplications - Beierle, Christoph; Plumer, Lutz (Elsevier, 1995)