eprintid: 1379 rev_number: 9 eprint_status: archive userid: 40 dir: disk0/00/00/13/79 datestamp: 2012-09-25 12:27:54 lastmod: 2013-03-07 12:56:25 status_changed: 2012-09-25 12:27:54 type: book_section metadata_visibility: show creators_name: Pettorossi, Alberto creators_name: Proietti, Maurizio creators_name: Senni, Valerio creators_id: creators_id: creators_id: valerio.senni@imtlucca.it title: Automatic Correctness Proofs for Logic Program Transformations ispublished: pub subjects: QA75 divisions: CSA full_text_status: none note: Proceedings of the 23rd International Conference, ICLP 2007, Porto, Portugal, September 8-13, 2007. Also presented at the 2007 Italian Conference on Computational Logic (CILC 2007), 21-22 June, 2007, Messina, Italy. 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. date: 2007 date_type: published series: Lecture Notes in Computer Science number: 4670 publisher: Springer pagerange: 364-379 id_number: doi:10.1007/978-3-540-74610-2_25 refereed: TRUE isbn: 978-3-540-74608-9 book_title: Logic Programming official_url: http://dx.doi.org/10.1007/978-3-540-74610-2_25 related_url_url: http://map.uniroma2.it/papers/Pettorossi-Proietti-Senni_ICLP07_revised.pdf related_url_type: author citation: Pettorossi, Alberto and Proietti, Maurizio and Senni, Valerio Automatic Correctness Proofs for Logic Program Transformations. In: Logic Programming. Lecture Notes in Computer Science (4670). Springer, pp. 364-379. ISBN 978-3-540-74608-9 (2007)