1 research outputs found

    Devices for safety-critical molecular programmed systems

    Get PDF
    The behavior of matter at the molecular level can be programmed to create nanoscale molecular components that accomplish desired tasks. Many molecular components are developed with intended uses that are safety-critical, such as medical applications. Ensuring the correctness and fault tolerance of such devices is paramount. Techniques to develop robustly correct programs have been widely studied in software systems and many devices have been constructed to aid in the safe operation of systems. We seek to demonstrate the effectiveness of software and safety engineering techniques in the molecular programming domain. In this thesis, we present the design of five new devices to aid in the development of safetycritical molecular programmed systems. We introduce a Runtime Fault Detection device (RFD) to robustly detect faults and initiate recovery actions in response to a failed system. We present the Concentration Monitor, a device that can detect changes, major and minor, in concentrations in real-time and demonstrate its utility. We also describe methods for constructing chemical reaction networks that can robustly simulate any combinational logic gate. Finally, we present two devices to log the state of a molecular program, where the first device logs a state upon receiving a request, and the second device ensures that the current state meets a defined validity property before allowing a log to be taken. All devices have been formally verified using model checking, simulations, or formal proof techniques. The methods used to construct and verify these devices can be adapted to the design of future molecular systems to assist in ensuring their correctness
    corecore