The many approaches which have been proposed in the literature for proving the correctness of unfold/fold program transformations, consist in associating suitable well-founded orderings with the proof trees of the atoms belonging to the least Herbrand models of the programs. In practice, these orderings are given by 'clause measures', that is, measures associated with the clauses of the programs to be transformed. In the unfold/fold transformation systems proposed so far, clause measures are fixed in advance, independently of the transformations to be proved correct. In this paper we propose a method for the automatic generation of the clause measures which, instead, takes into account the particular program transformation at hand. During the transformation process we construct a system of linear equations and inequations whose unknowns are the clause measures to be found, and the correctness of the transformation is guaranteed by the satisfiability of that system. Through some examples we show that our method is able to establish in a fully automatic way the correctness of program transformations which, by using other methods, are proved correct at the expense of fixing sophisticated clause measures.

Pettorossi, A., Proietti, M., Senni, V. (2007). Automatic correctness proofs for logic program transformations. In Logic Programming (pp.364-379). Berlin : Springer-Verlag.

Automatic correctness proofs for logic program transformations

PETTOROSSI, ALBERTO;SENNI, VALERIO
2007-01-01

Abstract

The many approaches which have been proposed in the literature for proving the correctness of unfold/fold program transformations, consist in associating suitable well-founded orderings with the proof trees of the atoms belonging to the least Herbrand models of the programs. In practice, these orderings are given by 'clause measures', that is, measures associated with the clauses of the programs to be transformed. In the unfold/fold transformation systems proposed so far, clause measures are fixed in advance, independently of the transformations to be proved correct. In this paper we propose a method for the automatic generation of the clause measures which, instead, takes into account the particular program transformation at hand. During the transformation process we construct a system of linear equations and inequations whose unknowns are the clause measures to be found, and the correctness of the transformation is guaranteed by the satisfiability of that system. Through some examples we show that our method is able to establish in a fully automatic way the correctness of program transformations which, by using other methods, are proved correct at the expense of fixing sophisticated clause measures.
23rd International Conference on Logic Programming (ICLP)
Oporto, PORTUGAL
2007
Rilevanza internazionale
contributo
2007
Settore ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
English
Computer networks; Computer programming; Difference equations; Fuzzy logic; Linear equations; Logic programming; Mathematical transformations; Numerical methods; automatic generation; Automatic way; Correctness proofs; Heidelberg (CO); international conferences; Logic programs; Program transformations; Program Transformations; Satisfiability (QSAT); Springer (CO); System of linear equations; Transformation processes; Transformation systems; Well-founded orderings; Automatic programming
Intervento a convegno
Pettorossi, A., Proietti, M., Senni, V. (2007). Automatic correctness proofs for logic program transformations. In Logic Programming (pp.364-379). Berlin : Springer-Verlag.
Pettorossi, A; Proietti, M; Senni, V
File in questo prodotto:
File Dimensione Formato  
Pettorossi-Proietti-Senni_ICLP07_revised.pdf

accesso aperto

Dimensione 219.66 kB
Formato Adobe PDF
219.66 kB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2108/40167
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact