A Tool for Program Transformation

The MAP transformation system is a tool for the interactive transformation of logic programs using the unfold/fold methodology. The core of the system, i.e. the transformation engine, is written in SICStus Prolog and the Graphic User Interface is written in Tcl/Tk.


1.      The MAP group

2.      Getting MAP

3.      Case Studies

4.      References


The MAP group

People who contributed to this project: Ornella Aioni, Emanuele De Angelis, Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti, Sophie Renault, Valerio Senni.


Getting MAP

1.      MAP system with a command-line interface [Ren97]. download
This version also provides
- a theorem prover and a program synthesizer based on the unfold/fold transformations [CL00,Kowalski02,LOPSTR02, ICLP06] and

- a model checker for infinite state systems [FPP07].

2.      MAP system with Tcl/Tk GUI [RPP98,PPR99].   download system  - download installation guide

3.      A version of the MAP system with Tcl/Tk GUI for Constraint Logic Programs. download

Case Studies

1.      Verification of infinite state systems


[Ren97] Renault, S.: A System for Transforming Logic Programs, RR-97.04, Department of Computer Science, University of Rome - Tor Vergata, 1997.

[RPP98] Renault, S., Pettorossi, A., Proietti, M.: Design, Implementation, and Use of the MAP Transformation System. R. 491, IASI-CNR, Roma, Italy, December 1998.

[PPR99] Alberto Pettorossi, Maurizio Proietti, and Sophie Renault: MAP: a Tool for Program Derivation based on Transformation Rules and Strategies. ERCIM News No.36 - January 1999.