Report on an Implementation of a Semi-inverter

Semi-inversion is a generalisation of inversion: A semi-inverse of a program takes some of the inputs and outputs of the original program and returns the remaining inputs and outputs. We report on an implementation of a semi-inversion method. We will show some examples of semi-inversions made by the implementation and discuss limitations and possible extensions.

[1]  John Hughes,et al.  Towards Binding-Time Improvement for Free , 1990, Functional Programming.

[2]  David Gries,et al.  The Science of Programming , 1981, Text and Monographs in Computer Science.

[3]  Edsger W. Dijkstra,et al.  Program Inversion , 1978, Program Construction.

[4]  Robert Glück,et al.  Derivation of Deterministic Inverse Programs Based on LR Parsing , 2004, FLOPS.

[5]  Bruno R. Preiss,et al.  Data flow on a queue machine , 1985, ISCA 1985.

[6]  Robert W. Floyd,et al.  Nondeterministic Algorithms , 1967, JACM.

[7]  Simon L. Peyton Jones,et al.  Functional Programming, Glasgow 1990 , 1991, Workshops in Computing.

[8]  Harald Ganzinger,et al.  Programs as Data Objects , 1986, Lecture Notes in Computer Science.

[9]  Robert Glück Jones optimality, binding-time improvements, and the strength of program specializers , 2002, ASIA-PEPM '02.

[10]  Michael Leuschel Proceedings of the 2003 ACM SIGPLAN Workshop on Partial Evaluation and Semantics-based Program Manipulation, 2003, San Diego, California, USA, June 7, 2003 , 2003, PEPM.

[11]  Shin-Cheng Mu,et al.  An Injective Language for Reversible Computation , 2004, MPC.

[12]  Anders Bondorf,et al.  Improving binding times without explicit CPS-conversion , 1992, LFP '92.

[13]  Wei-Ngan Chin,et al.  Proceedings of the ASIAN symposium on Partial evaluation and semantics-based program manipulation , 2002 .

[14]  Wei-Ngan Chin,et al.  Towards a Modular Program Derivation via Fusion and Tupling , 2002, GPCE.

[15]  Jens P. Secher Driving in the Jungle , 2001, PADO.

[16]  R. G. Stone,et al.  Program Construction , 1979, Lecture Notes in Computer Science.

[17]  Robert Glück,et al.  Transforming interpreters into inverse interpreters by partial evaluation , 2003, PPoPP 2003.

[18]  Torben Æ. Mogensen Semi-inversion of guarded equations , 2005, GPCE'05.