TY - GEN
T1 - Writing and compiling code into biochemistry
AU - Shea, Adam
AU - Fett, Brian
AU - Riedel, Marc D.
AU - Parhi, Keshab
PY - 2010/12/1
Y1 - 2010/12/1
N2 - 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.
AB - 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.
UR - http://www.scopus.com/inward/record.url?scp=84873029888&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84873029888&partnerID=8YFLogxK
M3 - Conference contribution
C2 - 19908397
AN - SCOPUS:84873029888
SN - 9814295299
SN - 9789814295291
T3 - Pacific Symposium on Biocomputing 2010, PSB 2010
SP - 456
EP - 464
BT - Pacific Symposium on Biocomputing 2010, PSB 2010
T2 - 15th Pacific Symposium on Biocomputing, PSB 2010
Y2 - 4 January 2010 through 8 January 2010
ER -