Synopses & Reviews
This volume contains the papers from the Third International Workshop on Logic Program Synthesis and Transformation (LOPSTR 93), held in Louvain-la-Neuve, Belgium, from 7-9 July 1993. Logic program synthesis and transformation play a vital role in the automation of the software production process, and the LOPSTR workshops are currently the only international meetings devoted to these important areas of research. LOPSTR 93 provided an opportunity for the presentation of new research (including work in progress), and also for the discussion of new trends in logic program development and other related areas. Many of the techniques described promise to revolutionise the software industry once they become standard practice. Logic Program Synthesis and Transformation provides a comprehensive overview of the latest advances in automatic program development. It will be of interest to researchers and postgraduate students alike.
Synopsis
This volume contains extended versions of papers presented at the Third International Workshop on Logic Program Synthesis and Transformation (LOPSTR 93) held in Louvain-la-Neuve in July 1993. Much of the success of the workshop is due to Yves Deville who served as Organizer and Chair. Many people believe that machine support for the development and evolution of software will play a critical role in future software engineering environments. Machine support requires the formalization of the artifacts and processes that arise during the software lifecycle. Logic languages are unique in providing a uniform declarative notation for precisely describing application domains, software requirements, and for prescribing behavior via logic programs. Program synthesis and transfonnation techniques formalize the process of developing correct and efficient programs from requirement specifications. The natural intersection of these two fields of research has been the focus of the LOPSTR workshops. The papers in this volume address many aspects of software develop- ment including: deductive synthesis, inductive synthesis, transforma- tions for optimizing programs and exploiting parallelism, program analysis techniques (particularly via abstract interpretation), meta- programming languages and tool support, and various extensions to Prolog-like languages, admitting non-Horn clauses, functions, and constraints. Despite the progress represented in this volume, the transition from laboratory to practice is fraught with difficulties.