Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Rasmus Lerchedahl Petersen is active.

Publication


Featured researches published by Rasmus Lerchedahl Petersen.


asian symposium on programming languages and systems | 2012

A Generic Cyclic Theorem Prover

James Brotherston; Nikos Gorogiannis; Rasmus Lerchedahl Petersen

We describe the design and implementation of an automated theorem prover realising a fully general notion of cyclic proof. Our tool, called \(\textsc{Cyclist}\), is able to construct proofs obeying a very general cycle scheme in which leaves may be linked to any other matching node in the proof, and to verify the general, global infinitary condition on such proof objects ensuring their soundness. \(\textsc{Cyclist}\) is based on a new, generic theory of cyclic proofs that can be instantiated to a wide variety of logics. We have developed three such concrete instantiations, based on: (a) first-order logic with inductive definitions; (b) entailments of pure separation logic; and (c) Hoare-style termination proofs for pointer programs. Experiments run on these instantiations indicate that \(\textsc{Cyclist}\) offers significant potential as a future platform for inductive theorem proving.


ACS Synthetic Biology | 2014

Computational design of nucleic acid feedback control circuits.

Boyan Yordanov; Jongmin Kim; Rasmus Lerchedahl Petersen; Angelina Shudy; Vishwesh V. Kulkarni; Andrew Phillips

The design of synthetic circuits for controlling molecular-scale processes is an important goal of synthetic biology, with potential applications in future in vitro and in vivo biotechnology. In this paper, we present a computational approach for designing feedback control circuits constructed from nucleic acids. Our approach relies on an existing methodology for expressing signal processing and control circuits as biomolecular reactions. We first extend the methodology so that circuits can be expressed using just two classes of reactions: catalysis and annihilation. We then propose implementations of these reactions in three distinct classes of nucleic acid circuits, which rely on DNA strand displacement, DNA enzyme and RNA enzyme mechanisms, respectively. We use these implementations to design a Proportional Integral controller, capable of regulating the output of a system according to a given reference signal, and discuss the trade-offs between the different approaches. As a proof of principle, we implement our methodology as an extension to a DNA strand displacement software tool, thus allowing a broad range of nucleic acid circuits to be designed and analyzed within a common modeling framework.


conference on automated deduction | 2011

Automated cyclic entailment proofs in separation logic

James Brotherston; Dino Distefano; Rasmus Lerchedahl Petersen

We present a general automated proof procedure, based upon cyclic proof, for inductive entailments in separation logic. Our procedure has been implemented via a deep embedding of cyclic proofs in the HOL Light theorem prover. Experiments show that our mechanism is able to prove a number of non-trivial entailments involving inductive predicates.


computer aided verification | 2011

Program analysis for overlaid data structures

Oukseh Lee; Hongseok Yang; Rasmus Lerchedahl Petersen

We call a data structure overlaid, if a node in the structure includes links for multiple data structures and these links are intended to be used at the same time. In this paper, we present a static program analysis for overlaid data structures. Our analysis implements two main ideas. The first is to run multiple sub-analyses that track information about non-overlaid data structures, such as lists. Each sub-analysis infers shape properties of only one component of an overlaid data structure, but the results of these sub-analyses are later combined to derive the desired safety properties about the whole overlaid data structure. The second idea is to control the communication among the sub-analyses using ghost states and ghost instructions. The purpose of this control is to achieve a high level of efficiency by allowing only necessary information to be transferred among sub-analyses and at as few program points as possible. Our analysis has been successfully applied to prove the memory safety of the Linux deadline IO scheduler and AFS server.


international conference on concurrency theory | 2011

On locality and the exchange law for concurrent processes

C. A. R. Hoare; Akbar Hussain; Bernhard Möller; Peter W. O'Hearn; Rasmus Lerchedahl Petersen; Georg Struth

This paper studies algebraic models for concurrency, in light of recent work on Concurrent Kleene Algebra and Separation Logic. It establishes a strong connection between the Concurrency and Frame Rules of Separation Logic and a variant of the exchange law of Category Theory. We investigate two standard models: one uses sets of traces, and the other is state-based, using assertions and weakest preconditions. We relate the latter to standard models of the heap as a partial function. We exploit the power of algebra to unify models and classify their variations.


international workshop on dna-based computers | 2014

Abstract Modelling of Tethered DNA Circuits

Matthew R. Lakin; Rasmus Lerchedahl Petersen; Kathryn E. Gray; Andrew Phillips

Sequence-specific DNA interactions are a powerful means of programming nanoscale locomotion. These systems typically use a DNA track that is tethered to a surface, and molecular interactions enable a signal or cargo to traverse this track. Such low copy number systems are highly amenable to mechanized analyses such as probabilistic model checking, which requires a formal encoding. In this paper we present the first general encoding of tethered DNA species into a formal language, which allows the interactions between tethered species to be derived automatically using standard reaction rules. We apply this encoding to a previously published tethered DNA circuit architecture based on hairpin assembly reactions. This work enables automated analysis of large-scale tethered DNA circuits and, potentially, synthesis of optimized track layouts to implement specific logic functions.


tools and algorithms for construction and analysis of systems | 2013

Runtime verification based on register automata

Radu Grigore; Dino Distefano; Rasmus Lerchedahl Petersen; Nikos Tzevelekos

We propose TOPL automata as a new method for runtime verification of systems with unbounded resource generation. Paradigmatic such systems are object-oriented programs which can dynamically generate an unbounded number of fresh object identities during their execution. Our formalism is based on register automata, a particularly successful approach in automata over infinite alphabets which administers a finite-state machine with boundedly many input-storing registers. We show that TOPL automata are equally expressive to register automata and yet suitable to express properties of programs. Compared to other runtime verification methods, our technique can handle a class of properties beyond the reach of current tools. We show in particular that properties which require value updates are not expressible with current techniques yet are naturally captured by TOPL machines. On the practical side, we present a tool for runtime verification of Java programs via TOPL properties, where the trade-off between the coverage and the overhead of the monitoring system is tunable by means of a number of parameters. We validate our technique by checking properties involving multiple objects and chaining of values on large open source projects.


Nature Chemistry | 2017

Predicting DNA hybridization kinetics from sequence

Jinny X. Zhang; John Z. Fang; Wei Duan; Lucia R. Wu; Angela W. Zhang; Neil Dalchau; Boyan Yordanov; Rasmus Lerchedahl Petersen; Andrew Phillips; David Yu Zhang

Hybridization is a key molecular process in biology and biotechnology, but to date there is no predictive model for accurately determining hybridization rate constants based on sequence information. Here we report a weighted neighbor voting (WNV) prediction algorithm, in which the hybridization rate constant of an unknown sequence is predicted based on similarity reactions with known rate constants. To construct this algorithm we first performed 210 fluorescence kinetics experiments to observe the hybridization kinetics of 100 different DNA target and probe pairs (36nt subsequences of the CYCS and VEGF genes) at temperatures ranging from 28°C to 55°C. Automated feature selection and weighting optimization resulted in a final 6-feature WNV model, which can predict hybridization rate constants of new sequences to within a factor of 3 with ≈91% accuracy, based on leave-one-out cross-validation. Accurate prediction of hybridization kinetics allows design of efficient probe sequences for genomics research.


international conference on dna computing | 2015

Synthesizing and Tuning Chemical Reaction Networks with Specified Behaviours

Neil Dalchau; Niall Murphy; Rasmus Lerchedahl Petersen; Boyan Yordanov

We consider how to generate chemical reaction networks (CRNs) from functional specifications. We propose a two-stage approach that combines synthesis by satisfiability modulo theories and Markov chain Monte Carlo based optimisation. First, we identify candidate CRNs that have the possibility to produce correct computations for a given finite set of inputs. We then optimise the reaction rates of each CRN using a combination of stochastic search techniques applied to the chemical master equation, simultaneously improving the of correct behaviour and ruling out spurious solutions. In addition, we use techniques from continuous time Markov chain theory to study the expected termination time for each CRN. We illustrate our approach by identifying CRNs for majority decision-making and division computation, which includes the identification of both known and unknown networks.


Theoretical Computer Science | 2016

A strand graph semantics for DNA-based computation

Rasmus Lerchedahl Petersen; Matthew R. Lakin; Andrew Phillips

DNA nanotechnology is a promising approach for engineering computation at the nanoscale, with potential applications in biofabrication and intelligent nanomedicine. DNA strand displacement is a general strategy for implementing a broad range of nanoscale computations, including any computation that can be expressed as a chemical reaction network. Modelling and analysis of DNA strand displacement systems is an important part of the design process, prior to experimental realisation. As experimental techniques improve, it is important for modelling languages to keep pace with the complexity of structures that can be realised experimentally. In this paper we present a process calculus for modelling DNA strand displacement computations involving rich secondary structures, including DNA branches and loops. We prove that our calculus is also sufficiently expressive to model previous work on non-branching structures, and propose a mapping from our calculus to a canonical strand graph representation, in which vertices represent DNA strands, ordered sites represent domains, and edges between sites represent bonds between domains. We define interactions between strands by means of strand graph rewriting, and prove the correspondence between the process calculus and strand graph behaviours. Finally, we propose a mapping from strand graphs to an efficient implementation, which we use to perform modelling and simulation of DNA strand displacement systems with rich secondary structure.

Collaboration


Dive into the Rasmus Lerchedahl Petersen's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Akbar Hussain

Queen Mary University of London

View shared research outputs
Top Co-Authors

Avatar

Dino Distefano

Queen Mary University of London

View shared research outputs
Researchain Logo
Decentralizing Knowledge