The program inverter LRinv and its structure

  • Authors:
  • Masahiko Kawabe;Robert Glück

  • Affiliations:
  • Graduate School of Science and Engineering, Waseda University, Tokyo, Japan;Dept. of Computer Science, University of Copenhagen, DIKU, Copenhagen, Denmark

  • Venue:
  • PADL'05 Proceedings of the 7th international conference on Practical Aspects of Declarative Languages
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Program inversion is a fundamental concept in programtransformation. We describe the principles behind an automatic program inverter, which we developed for a first-order functional language, and show several inverse programs automatically produced by our system. The examples belong to different application areas, including encoding and decoding, printing and parsing, and bidirectional data conversion. The core of the system uses a stack-based language, local inversion, and eliminates nondeterminism by applying methods from parsing theory.