English
Related papers

Related papers: Reversible Computation in Term Rewriting

200 papers

We revisit parallel-innermost term rewriting as a model of parallel computation on inductive data structures and provide a corresponding notion of runtime complexity parametric in the size of the start term. We propose automatic techniques…

Logic in Computer Science · Computer Science 2026-04-08 Thaïs Baudon , Carsten Fuhs , Laure Gonnord

This paper proposes bimorphic recursion, which is restricted polymorphic recursion such that every recursive call in the body of a function definition has the same type. Bimorphic recursion allows us to assign two different types to a…

Logic in Computer Science · Computer Science 2011-06-08 Makoto Tatsuta , Ferruccio Damiani

We propose a choreographic model of reversible computations based on a conservative extension of global graphs and communicating finite-state machines. The main advantage of our approach is that does not require to instrument models in…

Logic in Computer Science · Computer Science 2017-05-29 Claudio Antares Mezzina , Emilio Tuosto

Binary rewriting is a rapidly-maturing technique for modifying software for instrumentation, customization, optimization, and hardening without access to source code. Unfortunately, the practical applications of binary rewriting tools are…

Software Engineering · Computer Science 2022-09-09 Eric Schulte , Michael D. Brown , Vlad Folts

Pull-tabbing is an evaluation approach for functional logic computations, based on a graph transformation recently proposed, which avoids making irrevocable non-deterministic choices that would jeopardize the completeness of computations.…

Programming Languages · Computer Science 2011-08-02 Sergio Antoy

An element $g$ of a group is called reversible if it is conjugate in the group to its inverse. An element is an involution if it is equal to its inverse. This paper is about factoring elements as products of reversibles in the group…

Group Theory · Mathematics 2014-02-11 Dmitri Zaitsev , Anthony G. O'Farrell

We introduce an operational rewriting-based semantics for strictly positive nested higher-order (co)inductive types. The semantics takes into account the "limits" of infinite reduction sequences. This may be seen as a refinement and…

Logic in Computer Science · Computer Science 2023-06-22 Łukasz Czajka

In this work, we study the fully automated inference of expected result values of probabilistic programs in the presence of natural programming constructs such as procedures, local variables and recursion. While crucial, capturing these…

Programming Languages · Computer Science 2023-04-26 Martin Avanzini , Georg Moser , Michael Schaper

Sequential programming and work-flow programming are two useful, but radically different, ways of describing computational processing. Of the two, it is sequential programming that we teach all programmers and support by programming…

Programming Languages · Computer Science 2011-08-24 William Harrison

We introduce the structural resource lambda-calculus, a new formalism in which strongly normalizing terms of the lambda-calculus can naturally be represented, and at the same time any type derivation can be internally rewritten to its…

Logic in Computer Science · Computer Science 2025-03-26 Ugo Dal Lago , Federico Olimpieri

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

Undoing computations of a concurrent system is beneficial in many situations, e.g., in reversible debugging of multi-threaded programs and in recovery from errors due to optimistic execution in parallel discrete event simulation. A number…

Logic in Computer Science · Computer Science 2024-02-13 Ivan Lanese , Iain Phillips , Irek Ulidowski

The downward closure of a word language is the set of all (not necessarily contiguous) subwords of its members. It is well-known that the downward closure of any language is regular. While the downward closure appears to be a powerful…

Formal Languages and Automata Theory · Computer Science 2015-06-02 Georg Zetzsche

This paper is an expository contribution reporting on published work. It focusses on an approach followed in the rewriting community to formalize the concept of strategy. Based on rewriting concepts, several definitions of strategy are…

Logic in Computer Science · Computer Science 2013-03-05 Hélène Kirchner

Many automatic theorem-provers rely on rewriting. Using theorems as rewrite rules helps to simplify the subgoals that arise during a proof. LCF is an interactive theorem-prover intended for reasoning about computation. Its implementation of…

Logic in Computer Science · Computer Science 2016-08-31 Lawrence C. Paulson

If the 20th century was known for the computational revolution, what will the 21st be known for? Perhaps the recent strides in the nascent fields of molecular programming and biological computation will help bring about the 'Coming Era of…

Statistical Mechanics · Physics 2022-03-14 Hannah Amelie Earley

We present and explore a model of stateless and self-stabilizing distributed computation, inspired by real-world applications such as routing on today's Internet. Processors in our model do not have an internal state, but rather interact by…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-12-01 Danny Dolev , Michael Erdmann , Neil Lutz , Michael Schapira , Adva Zair

Models of complex systems are often formalized as sequential software simulators: computationally intensive programs that iteratively build up probable system configurations given parameters and initial conditions. These simulators enable…

Machine Learning · Statistics 2015-06-02 Ardavan Saeedi , Vlad Firoiu , Vikash Mansinghka

Constructive type theory combines logic and programming in one language. This is useful both for reasoning about programs written in type theory, as well as for reasoning about other programming languages inside type theory. It is…

Programming Languages · Computer Science 2024-10-25 Philipp Jan Andries Stassen , Rasmus Ejlers Møgelberg , Maaike Zwart , Alejandro Aguirre , Lars Birkedal

We define a class of computable functions over real numbers using functional schemes similar to the class of primitive and partial recursive functions defined by G\"odel and Kleene. We show that this class of functions can also be…

Logic in Computer Science · Computer Science 2020-10-05 Keng Meng Ng , Nazanin R. Tavana , Yue Yang