On Specification Frameworks and Deductive Synthesis of Logic Programs