Towards Higher-level Abstractions for Molecular Programming
Titus H. Klinge (Iowa State University), James I. Lathrop (Iowa State University), Peter-Michael Osera (Grinnell College), Allison Rogers (Grinnell College)
Molecular programming harnesses the power of computation at the nanoscale with potential applications in medicine, synthetic biology, and nanofabrication. One of the most common models of computation in molecular programming is the chemical reaction network (CRN), a system describing how abstract chemicals react in solution. While helpful in mapping computational ideas into chemical processes, CRNs are akin to a low-level assembly language, unsuitable for developing or verifying molecular programs of any significant size or complexity.
We address these concerns by building high-level abstractions for CRN programming with straightforward modular design and verification pathways. In particular, the abstractions we propose are inspired by functional reactive programming. Under this lens, we draw a correspondence between a particular class of CRNs, the input/output (I/O) CRN, and signal functions. This design choice allows us to build up CRN programs modularly in a functional programming style.
We provide a translation from the standard reactive programming constructs to transformations over CRNs and demonstrate the viability of this approach with a Haskell library for constructing CRNs in this style. We then describe how we might verify and synthesize CRN programs, taking advantage of the system’s functional reactive roots.
Sat 9 SepDisplayed time zone: Pacific Time (US & Canada) change
09:00 - 10:30 | |||
09:00 5mDay opening | Welcome and Opening Remarks DeclMed Stephen Ramsey Oregon State University | ||
09:05 25mTalk | Towards Higher-level Abstractions for Molecular Programming DeclMed Peter-Michael Osera Grinnell College | ||
09:30 55mKeynote | Strange loops: journeys in declarative logic programming in genomics and beyond DeclMed Christopher Mungall Lawrence Berkeley National Laboratory Media Attached |