Deductive & Declarative Programming (Cambridge Tracts in Theoretical Computer Science, Band 28)