Skip to Main Content (Press Enter)

Logo CNR
  • ×
  • Home
  • People
  • Outputs
  • Organizations
  • Expertise & Skills

UNI-FIND
Logo CNR

|

UNI-FIND

cnr.it
  • ×
  • Home
  • People
  • Outputs
  • Organizations
  • Expertise & Skills
  1. Outputs

Verification of Imperative Programs by Transforming Constraint Logic Programs

Conference Paper
Publication Date:
2013
abstract:
We present a method for verifying partial correctness prop-erties of imperative programs that manipulate integers and arrays byusing techniques based on the transformation of constraint logic pro-grams (CLP). We use CLP as a metalanguage for representing imper-ative programs, their executions, and their properties. First, we encodethe correctness of an imperative program, sayprog, as the negation ofa predicateincorrectdefined by a CLP programT. By construction,incorrectholds in the least model ofTif and only if the execution ofprogfrom an initial configuration eventually halts in an error configura-tion. Then, we apply to programTa sequence of transformations thatpreserve its least model semantics. These transformations are based onwell-known transformationrules, such asunfoldingandfolding, guidedby suitable transformationstrategies, such asspecializationandgener-alization. The objective of the transformations is to derive a new CLPprogramTransfTwhere the predicateincorrectis defined either by (i)the fact 'incorrect.' (and in this caseprogisnotcorrect), or by (ii)the empty set of clauses (and in this caseprogis correct). In the casewhere we derive a CLP program such that neither (i) nor (ii) holds, weiterate the transformation. Since the problem is undecidable, this pro-cess may not terminate. We show through examples that our methodcan be applied in a rather systematic way, and is amenable to automa-tion by transferring to the field of program verification many techniquesdeveloped in the field of program transformation.
Iris type:
04.01 Contributo in Atti di convegno
Keywords:
Program Verification
List of contributors:
Pettorossi, Alberto; Fioravanti, Fabio; DE ANGELIS, Emanuele; Proietti, Maurizio
Authors of the University:
DE ANGELIS EMANUELE
PROIETTI MAURIZIO
Handle:
https://iris.cnr.it/handle/20.500.14243/211573
Published in:
CEUR WORKSHOP PROCEEDINGS
Series
  • Use of cookies

Powered by VIVO | Designed by Cineca | 26.5.0.0 | Sorgente dati: PREPROD (Ribaltamento disabilitato)