The ℵ Calculus

11/30/2020
by   William Earley, et al.
0

Motivated by a need for a model of reversible computation appropriate for a Brownian molecular architecture, the ℵ calculus is introduced. This novel model is declarative, concurrent, and term-based–encapsulating all information about the program data and state within a single structure in order to obviate the need for a von Neumann-style discrete computational 'machine', a challenge in a molecular environment. The name is inspired by the Greek for 'not forgotten', due to the emphasis on (reversibly) learning and un-learning knowledge of different variables. To demonstrate its utility for this purpose, as well as its elegance as a programming language, a number of examples are presented; two of these examples, addition/subtraction and squaring/square-rooting, are furnished with designs for abstract molecular implementations. A natural by-product of these examples and accompanying syntactic sugar is the design of a fully-fledged programming language, alethe, which is also presented along with an interpreter. Efficiently simulating ℵ on a deterministic computer necessitates some static analysis of programs within the alethe interpreter in order to render the declarative programs sequential. Finally, work towards a type system appropriate for such a reversible, declarative model of computation is presented.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/09/2017

From Reversible Programs to Univalent Universes and Back

We establish a close connection between a reversible programming languag...
research
06/13/2022

The ℵ-Calculus: A declarative model of reversible programming

A novel model of reversible computing, the ℵ-calculus, is introduced. It...
research
12/13/2022

A programming language characterizing quantum polynomial time

We introduce a first-order quantum programming language, named FOQ, whos...
research
10/08/2017

Reversible Computation in Term Rewriting

Essentially, in a reversible programming language, for each forward comp...
research
05/12/2021

Reversify any sequential algorithm

To reversify an arbitrary sequential algorithm A, we gently instrument A...
research
09/06/2022

Jeopardy: An Invertible Functional Programming Language

Algorithms are ways of mapping problems to solutions. An algorithm is in...
research
11/08/2018

Embracing the Laws of Physics: Three Reversible Models of Computation

Our main models of computation (the Turing Machine and the RAM) make fun...

Please sign up or login with your details

Forgot password? Click here to reset