Towards a Dereversibilizer: Fewer Asserts, Statically

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Reversible programming is an unconventional paradigm that offers new ways to construct software. When programs have inherent inverse counterparts, such as compression/decompression, the invertibility of reversible implementations enables a “write once, verify once” approach. The nature of today’s computers is, however, irreversible. This work-in-progress contribution explores the dereversibilization of reversible source programs into irreversible target programs. As a first step into this space, we explore the use of state-of-the-art Satisfiability-Modulo-Theories (SMT) solvers to statically remove redundant assertions. We divide the problem space into two parts: High-level dereversibilization of Janus-like source programs and classical compilation to machine code. In this contribution, we focus on the semantics-preserving removal of assertions from reversible control-flow statements. Our prototype reduces the size of the assembly code and marks the first step towards automatic dereversibilization and new opportunities of using reversible programs.

Original languageEnglish
Title of host publicationReversible Computation - 15th International Conference, RC 2023, Proceedings
EditorsMartin Kutrib, Uwe Meyer
PublisherSpringer
Publication date2023
Pages106-114
ISBN (Print)9783031380990
DOIs
Publication statusPublished - 2023
Event15th International Conference on Reversible Computation, RC 2023 - Giessen, Germany
Duration: 18 Jul 202319 Jul 2023

Conference

Conference15th International Conference on Reversible Computation, RC 2023
LandGermany
ByGiessen
Periode18/07/202319/07/2023
SeriesLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13960 LNCS
ISSN0302-9743

Bibliographical note

Publisher Copyright:
© 2023, The Author(s), under exclusive license to Springer Nature Switzerland AG.

    Research areas

  • Compilation, Program Transformation, Reversible Languages, Satisfiability-Modulo-Theories (SMT) Solver, Static Analysis

ID: 368342060