Results 1 -
7 of
7
1 WRITING AND COMPILING CODE INTO BIOCHEMISTRY ∗
"... This paper presents a methodology for translating iterative arithmetic computation, specified as high-level programming constructs, into biochemical reactions. From an input/output specification, we generate biochemical reactions that produce output quantities of proteins as a function of input quan ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
This paper presents a methodology for translating iterative arithmetic computation, specified as high-level programming constructs, into biochemical reactions. From an input/output specification, we generate biochemical reactions that produce output quantities of proteins as a function of input quantities performing operations such as addition, subtraction, and scalar multiplication. Iterative constructs such as “while ” loops and “for ” loops are implemented by transferring quantities between protein types, based on a clocking mechanism. Synthesis first is performed at a conceptual level, in terms of abstract biochemical reactions – a task analogous to high-level program compilation. Then the results are mapped onto specific biochemical reactions selected from libraries – a task analogous to machine language compilation. We demonstrate our approach through the compilation of a variety of standard iterative functions: multiplication, exponentiation, discrete logarithms, raising to a power, and linear transforms on time series. The designs are validated through transient stochastic simulation of the chemical kinetics. We are exploring DNA-based computation via strand displacement as a possible experimental chassis. 1.
The Computational Complexity of Uniformity and Semi-uniformity in Membrane Systems
"... Summary. We investigate computing models that are presented as families of finite computing devices with a uniformity condition on the entire family. Examples include circuits, membrane systems, DNA computers, cellular automata, tile assembly systems, and so on. However, in this list there are actua ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Summary. We investigate computing models that are presented as families of finite computing devices with a uniformity condition on the entire family. Examples include circuits, membrane systems, DNA computers, cellular automata, tile assembly systems, and so on. However, in this list there are actually two distinct kinds of uniformity conditions. The first is the most common and well-understood, where each input length is mapped to a single computing device that computes on the finite set of inputs of that length. The second, called semi-uniformity, is where each input is mapped to a computing device for that input. The former notion is well-known and used in circuit complexity, while the latter notion is frequently found in literature on nature-inspired computing models, from the past 20 years or so. Are these two notions distinct or not? For many models it has been found that these notion are in fact the same, in the sense that the choice of uniformity or semi-uniformity leads to characterisations of the same complexity classes. Here, we buck this trend and show that these notions are actually distinct: we give classes of uniform membrane systems that are strictly weaker than their semi-uniform counterparts. This solves a known open problem in the theory of membrane systems. 1
Uniformity conditions in natural computing
"... Abstract. We investigate computing models that are presented as families of finite computing devices with a uniformity condition on the entire family. Examples include circuits, membrane systems, DNA computers, cellular automata, tile assembly systems, and so on. However, in this list there are actu ..."
Abstract
- Add to MetaCart
Abstract. We investigate computing models that are presented as families of finite computing devices with a uniformity condition on the entire family. Examples include circuits, membrane systems, DNA computers, cellular automata, tile assembly systems, and so on. However, in this list there are actually two distinct kinds of uniformity condition. The first is the most common and well-understood, where each input length is mapped to a single computing device that computes on the finite set of inputs of that length. The second, called semi-uniformity, is where each input is mapped to a computing device for that input. The former notion is well-known and used in circuit complexity, while the latter notion is frequently found in literature on nature-inspired computation from the past 20 years or so. Are these two notions distinct or not? For many models it has been found that these notions are in fact the same, in the sense that the choice of uniformity or semi-uniformity leads to characterisations of the same complexity classes. Here, we buck this trend and show that these notions are actually distinct: we give classes of uniform membrane systems that are strictly weaker than their semi-uniform counterparts. This solves a known open problem in the theory of membrane systems. 1
Pacific Symposium on Biocomputing 15:456-464(2010) 1 WRITING AND COMPILING CODE INTO BIOCHEMISTRY ∗
"... This paper presents a methodology for translating iterative arithmetic computation, specified as high-level programming constructs, into biochemical reactions. From an input/output specification, we generate biochemical reactions that produce output quantities of proteins as a function of input quan ..."
Abstract
- Add to MetaCart
This paper presents a methodology for translating iterative arithmetic computation, specified as high-level programming constructs, into biochemical reactions. From an input/output specification, we generate biochemical reactions that produce output quantities of proteins as a function of input quantities performing operations such as addition, subtraction, and scalar multiplication. Iterative constructs such as “while ” loops and “for ” loops are implemented by transferring quantities between protein types, based on a clocking mechanism. Synthesis first is performed at a conceptual level, in terms of abstract biochemical reactions – a task analogous to high-level program compilation. Then the results are mapped onto specific biochemical reactions selected from libraries – a task analogous to machine language compilation. We demonstrate our approach through the compilation of a variety of standard iterative functions: multiplication, exponentiation, discrete logarithms, raising to a power, and linear transforms on time series. The designs are validated through transient stochastic simulation of the chemical kinetics. We are exploring DNA-based computation via strand displacement as a possible experimental chassis. 1.
Compiling and Verifying DNA-Based Chemical Reaction Network Implementations
, 2011
"... I am deeply indebted to my advisor Erik Winfree. It is only through his patience and guidance that this thesis could be finished. He always opened new doors for me when I would spend days stuck at a dead end. The insights that he offered me at such times, I believe, is what distinguishes a true scie ..."
Abstract
- Add to MetaCart
I am deeply indebted to my advisor Erik Winfree. It is only through his patience and guidance that this thesis could be finished. He always opened new doors for me when I would spend days stuck at a dead end. The insights that he offered me at such times, I believe, is what distinguishes a true scientist from a mere problem solver. Recognizing the difference was an indispensable lesson, for it has led me to strive to become both a good problem solver and scientist myself. Erik also played a large part in my decision to pursue an academic career. I would also like to thank David Soloveichik not only for his achievements in CRN implementations, which served as a major motivation for my research project, but also for all the invaluable discussions. I thank Brian Wolfe for the development of the reaction enumerator, without which my verifier could not exist. I also express my appreciation to Joseph Schaeffer, Damien Woods, and David Doty for affording me with priceless comments and discussions, and to all Winfree lab members for providing an ideal learning environment. I wish to extend my thanks to NSF, Caltech’s SURF program, and the Caltech Computer Science department, whose generous support made my research possible. As always, I am grateful for my mother, my father, and my sister for being my greatest support system.
The Synthesis and Analysis of Stochastic Switching Circuits
"... Stochastic switching circuits are relay circuits that consist of stochastic switches called pswitches. The study of stochastic switching circuits has widespread applications in many fields of computer science, neuroscience, and biochemistry. In this paper, we discuss several properties of stochastic ..."
Abstract
- Add to MetaCart
Stochastic switching circuits are relay circuits that consist of stochastic switches called pswitches. The study of stochastic switching circuits has widespread applications in many fields of computer science, neuroscience, and biochemistry. In this paper, we discuss several properties of stochastic switching circuits, including robustness, expressibility, and probability approximation. First, we study the effect caused by introducing an error of size ϵ to each pswitch in a stochastic circuit. We analyze two constructions–simple seriesparallel and general series-parallel circuits–and prove that simple series-parallel circuits are robust to small error perturbations, while general series-parallel circuits are not. Specifically, the total error introduced by perturbations of size less than ϵ is bounded by a constant multiple of ϵ in a simple seriesparallel circuit, independent of the size of the circuit. Next, we study the expressibility of stochastic switching circuits: Given an integer q and a pswitch set S = { 1 2,}, can we synthesize any q q rational probability with denominator qn (for arbitrary n) with a simple series-parallel stochastic switching circuit? We generalize previous results and prove that when q is a multiple of 2 or 3, the answer is yes. We also show that when q is a prime number larger than 3, the answer is no. Probability approximation is studied for a general case of an arbitrary q−1
To my maternal grandmother Zhenquan Hao. iv Acknowledgments
, 2013
"... I am deeply grateful to my advisor Professor Jehoshua (Shuki) Bruck. Since September 11, 2008, when I walked into Shuki’s office for the first time, he has deeply influenced me in different aspects of my life, not only about his great guidance in research, but also his kindness, his encouragement, a ..."
Abstract
- Add to MetaCart
I am deeply grateful to my advisor Professor Jehoshua (Shuki) Bruck. Since September 11, 2008, when I walked into Shuki’s office for the first time, he has deeply influenced me in different aspects of my life, not only about his great guidance in research, but also his kindness, his encouragement, and his genuine concern for students. Shuki has introduced me to a variety of areas, taught me how to create important questions and how to appreciate the beauty and simplicity in real research. He has also devoted a great deal of time and energy to my personal growth. I feel extremely fortunate of being one of his students, as an old Chinese saying says: “The world has Bole (Bole was a legendary figure in the seventh century B.C. China, who was an authority on horses) then to have the splendid steed. The splendid steed is common, but Bole is not common.”

