English
Related papers

Related papers: Towards Reversible Computation in Erlang

200 papers

Distributed actor languages are an effective means of constructing scalable reliable systems, and the Erlang programming language has a well-established and influential model. While Erlang model conceptually provides reliable scalability,…

Quantum computer requires quantum arithmetic. The sophisticated design of a reversible arithmetic logic unit (reversible ALU) for quantum arithmetic has been investigated in this letter. We provide explicit construction of reversible ALU…

Hardware Architecture · Computer Science 2011-07-21 Rigui zhou , Yang shi , Manqun Zhang

Reversible algorithms are algorithms in which each step represents a partial injective function; they are useful for performance optimization in reversible systems. In this study, using Janus, a reversible imperative high-level programming…

Data Structures and Algorithms · Computer Science 2019-10-24 Hiroki Masuda , Tetsuo Yokoyama

Deterministic 2-head finite automata which are machines that process an input word from both ends are analyzed for their ability to perform reversible computations. This implies that the automata are backward deterministic, enabling unique…

Formal Languages and Automata Theory · Computer Science 2025-07-22 Benedek Nagy , Walaa Yasin

In system operations it is commonly assumed that arbitrary changes to a system can be reversed or `rolled back', when errors of judgement and procedure occur. We point out that this view is flawed and provide an alternative approach to…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-04-27 Mark Burgess , Alva Couch

Backtracking (i.e., reverse execution) helps the user of a debugger to naturally think backwards along the execution path of a program, and thinking backwards makes it easy to locate the origin of a bug. So far backtracking has been…

Programming Languages · Computer Science 2013-09-23 Jooyong Yi

In this paper the reversibility of executable Interval Temporal Logic (ITL) specifications is investigated. ITL allows for the reasoning about systems in terms of behaviours which are represented as non-empty sequences of states. It allows…

Formal Languages and Automata Theory · Computer Science 2021-07-12 Antonio Cau , Stefan Kuhn , James Hoey

Backward error analysis offers a method for assessing the quality of numerical programs in the presence of floating-point rounding errors. However, techniques from the numerical analysis literature for quantifying backward error require…

Programming Languages · Computer Science 2025-10-27 Ariel E. Kellison , Laura Zielinski , David Bindel , Justin Hsu

Term rewriting systems have a simple syntax and semantics and facilitate proofs of correctness. However, they are not as popular in industry or academia as imperative languages. We define a term rewriting based abstract programming language…

Programming Languages · Computer Science 2020-07-08 David Plaisted , Lee Barnett

We survey results of a quarter century of work on computation by reversible general-purpose computers (in this setting Turing machines), and general reversible simulation of irreversible computations, with respect to energy-, time- and…

Computational Complexity · Computer Science 2007-05-23 Paul Vitanyi

This paper presents a lightweight formalism (a trace) to model message-passing concurrent executions where some common common problems can be identified, like lost or delayed messages, some forms of deadlock, etc. In particular, we consider…

Programming Languages · Computer Science 2022-02-23 Juan José González-Abril , Germán Vidal

Erlang's dynamic typing discipline can lead to runtime errors that persist even after process restarts. Some of these runtime errors could be prevented through static type checking. While Erlang provides a type specification language, the…

Programming Languages · Computer Science 2026-03-24 Albert Schimpf , Stefan Wehr , Annette Bieniusa

Reversible computation is key in developing new, energy-efficient paradigms, but also in providing forward-only concepts with broader definitions and finer frames of study.Among other fields, the algebraic specification and representation…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-10-26 Clément Aubert

We introduce the language QML, a functional language for quantum computations on finite types. Its design is guided by its categorical semantics: QML programs are interpreted by morphisms in the category FQC of finite quantum computations,…

Quantum Physics · Physics 2008-05-06 Thorsten Altenkirch , Jonathan Grattage

The field of molecular programming allows for the programming of the structure and behavior of matter at the molecular level, even to the point of encoding arbitrary computation. However, current approaches tend to be wasteful in terms of…

Emerging Technologies · Computer Science 2023-05-15 Hannah Earley

Time reversal of waves has been successfully used in communications, sensing and imaging for decades. The application in underwater acoustic communications is of our special interest, as it puts together a reversible process (allowing a…

Cellular Automata and Lattice Gases · Physics 2018-06-13 Harun Siljak

Structured reversible flowchart languages is a class of imperative reversible programming languages allowing for a simple diagrammatic representation of control flow built from a limited set of control flow structures. This class includes…

Programming Languages · Computer Science 2023-06-22 Robert Glück , Robin Kaarsgaard

The idea of using unfolding as a way of computing a program semantics has been applied successfully to logic programs and has shown itself a powerful tool that provides concrete, implementable results, as its outcome is actually source…

Programming Languages · Computer Science 2017-08-29 José María Rey-Poza , Julio Mariño-Carballo

Reversible systems feature both forward computations and backward computations, where the latter undo the effects of the former in a causally consistent manner. The compositionality properties and equational characterizations of strong and…

Logic in Computer Science · Computer Science 2023-10-03 Marco Bernardo , Andrea Esposito

Today, many different probabilistic programming languages exist and even more inference mechanisms for these languages. Still, most logic programming based languages use backward reasoning based on SLD resolution for inference. While these…

Logic in Computer Science · Computer Science 2011-07-27 Bernd Gutmann , Ingo Thon , Angelika Kimmig , Maurice Bruynooghe , Luc De Raedt