14 research outputs found

    Sequentializing cellular automata

    Get PDF
    We study the problem of sequentializing a cellular automaton without introducing any intermediate states, and only performing reversible permutations on the tape. We give a decidable characterization of cellular automata which can be written as a single sweep of a bijective rule from left to right over an infinite tape. Such cellular automata are necessarily left-closing, and they move at least as much information to the left as they move information to the right.</p

    Network Constructors: A Model for Programmable Matter

    Get PDF

    Terminating Distributed Construction of Shapes and Patterns in a Fair Solution of Automata

    Get PDF
    In this work, we consider a solution of automata (or nodes) that move passively in a well-mixed solution without being capable of controlling their movement. Nodes can cooperate by interacting in pairs and every such interaction may result in an update of their local states. Additionally, the nodes may also choose to connect to each other in order to start forming some required structure. Such nodes can be thought of as small programmable pieces of matter, like tiny nanorobots or programmable molecules. The model that we introduce here is a more applied version of network constructors, imposing physical (or geometric) constraints on the connections that the nodes are allowed to form. Each node can connect to other nodes only via a very limited number of local ports. Connections are always made at unit distance and are perpendicular to connections of neighboring ports, which makes the model capable of forming 2D or 3D shapes. We provide direct constructors for some basic shape construction problems, like spanning line, spanning square, and self-replication. We then develop new techniques for determining the computational and constructive capabilities of our model. One of the main novelties of our approach is that of exploiting the assumptions that the system is well-mixed and has a unique leader, in order to give terminating protocols that are correct with high probability. This allows us to develop terminating subroutines that can be sequentially composed to form larger modular protocols. One of our main results is a terminating protocol counting the size n of the system with high probability. We then use this protocol as a subroutine in order to develop our universal constructors, establishing that it is possible for the nodes to become self-organized with high probability into arbitrarily complex shapes while still detecting termination of the construction

    Reversible Computation: Extending Horizons of Computing

    Get PDF
    This open access State-of-the-Art Survey presents the main recent scientific outcomes in the area of reversible computation, focusing on those that have emerged during COST Action IC1405 "Reversible Computation - Extending Horizons of Computing", a European research network that operated from May 2015 to April 2019. Reversible computation is a new paradigm that extends the traditional forwards-only mode of computation with the ability to execute in reverse, so that computation can run backwards as easily and naturally as forwards. It aims to deliver novel computing devices and software, and to enhance existing systems by equipping them with reversibility. There are many potential applications of reversible computation, including languages and software tools for reliable and recovery-oriented distributed systems and revolutionary reversible logic gates and circuits, but they can only be realized and have lasting effect if conceptual and firm theoretical foundations are established first

    The FunLoft Language

    Get PDF
    Description of the FunLoft language for safe reactive programming (using the version v0.2 of the compiler)Description du langage FunLoft permettant une programmation réactive sûre (utilisant la version v0.2 du compilateur
    corecore