Backward Analysis of Logic Programs
Backward analysis propagates information in the reverse direction of program execution and is useful in deriving conditions under which the execution of the program meets certain demands. Though backward analysis has been a subject of intense research in other paradigms of programming, it has been rarely applied in logic programming. There has been no thorough study into backward analysis of logic programs. The proposed co-operative research project aims to research into theoretical and practical issues in backward logic program analysis by developing (1) a framework for designing, implementing and evaluating backward logic program analyses and (2) some specific backward analyses that provide useful information in program debugging, compilation and specialization.
The PI and Dr Andy King with the University of Kent at Canterbury of the United Kingdom have collaborated on research into backward analysis of logic programs. The collaboration has resulted in two backward analyses for logic programs that derive groundness (respectively type) conditions which if satisfied by the initial call, come with the guarantee that the program can never generate any instantiation (respectively type) errors. These results have generated much interest in the logic programming community. The proposed co-operative research project will strengthen the collaboration between the PI and Dr King and allow them to maintain competitiveness in this new direction of research they have jointly opened up.
Supported by National Science Foundationa
Disclaimer: Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (NSF).