TY - CHAP TI - The Transformational Approach to Program Development ID - eprints1364 AV - none N2 - We present an overview of the program transformation techniques which have been proposed over the past twenty-five years in the context of logic programming. We consider the approach based on rules and strategies. First, we present the transformation rules and we address the issue of their correctness. Then, we present the transformation strategies and, through some examples, we illustrate their use for improving program efficiency via the elimination of unnecessary variables, the reduction of nondeterminism, and the use of program specialization. We also describe the use of the transformation methodology for the synthesis of logic programs from first-order specifications. Finally, we illustrate some transformational techniques for verifying first-order properties of logic programs and their application to model checking for finite and infinite state concurrent systems. UR - http://dx.doi.org/10.1007/978-3-642-14309-0_6 EP - 135 PB - Springer SN - 978-3-642-14308-3 A1 - Pettorossi, Alberto A1 - Proietti, Maurizio A1 - Senni, Valerio T2 - A 25-Year Perspective on Logic Programming: Achievements of the Italian Association for Logic Programming, GULP SP - 112 Y1 - 2010/// T3 - Lecture Notes in Computer Science ER -