Program Debugging and Validation Using Semantic Approximations and Partial Specifications

  • Authors:
  • Manuel V. Hermenegildo;German Puebla;Francisco Bueno;Pedro López-García

  • Affiliations:
  • -;-;-;-

  • Venue:
  • ICALP '02 Proceedings of the 29th International Colloquium on Automata, Languages and Programming
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

The technique of Abstract Interpretation [11] has allowed the development of sophisticated program analyses which are provably correct and practical. The semantic approximations produced by such analyses have been traditionally applied to optimization during program compilation. However, recently, novel and promising applications ofseman tic approximations have been proposed in the more general context ofprogram validation and debugging [3,9,7].We study the case of(Constrain t) Logic Programs (CLP), motivated by the comparatively large body ofappro ximation domains, inference techniques, and tools for abstract interpretation-based semantic analysis which have been developed to a powerful and mature level for this programming paradigm (see, e.g., [23,8,18,6,12] and their references). These systems can approximate at compiletime a wide range ofprop erties, from directional types to determinacy or termination, always safely, and with a significant degree of precision. Thus, our approach is to take advantage ofthese advances in program analysis tools within the context ofprogram validation and debugging, rather than using traditional proof-based methods (e.g., [1,2,13,17,28]), developing new tools and procedures, such as specific concrete [4,15,16] or abstract [9,10] diagnosers and declarative debuggers, or limiting error detection to run-time checking [28].