GamaSlicer: an online laboratory for program verification and analysis

  • Authors:
  • Daniela da Cruz;Pedro Rangel Henriques;Jorge Sousa Pinto

  • Affiliations:
  • Universidade do Minho, Braga, Portugal;Universidade do Minho, Braga, Portugal;Universidade do Minho, Braga, Portugal

  • Venue:
  • Proceedings of the Tenth Workshop on Language Descriptions, Tools and Applications
  • Year:
  • 2010
  • Contract-based slicing

    ISoLA'10 Proceedings of the 4th international conference on Leveraging applications of formal methods, verification, and validation - Volume Part I

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we present the GamaSlicer tool, which is primarily a semantics-based program slicer that also offers formal verification (generation of verification conditions) and program visualization functionality. The tool allows users to obtain slices using a number of different families of slicing algorithms (precondition-based, postcondition-based, and specification-based), from a correct software component annotated with pre and postconditions (contracts written in JML-annotated Java). Each family in turn contains algorithms of different precision (with more precise algorithms being asymptotically slower). A novelty of our work at the theoretical level is the inclusion of a new, much more effective algorithm for specification-based slicing, and in fact other current work at this level is being progressively incorporated in the tool. The tool also generates (in a step-by-step fashion) a set of verification conditions (as formulas written in the SMT-lib language, which enables the use of different automatic SMT provers). This allows to establish the initial correctness of the code with respect to their contracts.