1,055 research outputs found

    An Algebraic Framework for Compositional Program Analysis

    Full text link
    The purpose of a program analysis is to compute an abstract meaning for a program which approximates its dynamic behaviour. A compositional program analysis accomplishes this task with a divide-and-conquer strategy: the meaning of a program is computed by dividing it into sub-programs, computing their meaning, and then combining the results. Compositional program analyses are desirable because they can yield scalable (and easily parallelizable) program analyses. This paper presents algebraic framework for designing, implementing, and proving the correctness of compositional program analyses. A program analysis in our framework defined by an algebraic structure equipped with sequencing, choice, and iteration operations. From the analysis design perspective, a particularly interesting consequence of this is that the meaning of a loop is computed by applying the iteration operator to the loop body. This style of compositional loop analysis can yield interesting ways of computing loop invariants that cannot be defined iteratively. We identify a class of algorithms, the so-called path-expression algorithms [Tarjan1981,Scholz2007], which can be used to efficiently implement analyses in our framework. Lastly, we develop a theory for proving the correctness of an analysis by establishing an approximation relationship between an algebra defining a concrete semantics and an algebra defining an analysis.Comment: 15 page

    Verification and falsification of programs with loops using predicate abstraction

    Get PDF
    Predicate abstraction is a major abstraction technique for the verification of software. Data is abstracted by means of Boolean variables, which keep track of predicates over the data. In many cases, predicate abstraction suffers from the need for at least one predicate for each iteration of a loop construct in the program. We propose to extract looping counterexamples from the abstract model, and to parametrise the simulation instance in the number of loop iterations. We present a novel technique that speeds up the detection of long counterexamples as well as the verification of programs with loop

    Doctor of Philosophy

    Get PDF
    dissertationOver the past few decades, synthetic biology has generated great interest to biologists and engineers alike. Synthetic biology combines the research of biology with the engineering principles of standards, abstraction, and automated construction with the ultimate goal of being able to design and build useful biological systems. To realize this goal, researchers are actively working on better ways to model and analyze synthetic genetic circuits, groupings of genes that influence the expression of each other through the use of proteins. When designing and analyzing genetic circuits, researchers are often interested in building circuits that exhibit a particular behavior. Usually, this involves simulating their models to produce some time series data and analyzing this data to discern whether or not the circuit behaves appropriately. This method becomes less attractive as circuits grow in complexity because it becomes very time consuming to generate a sufficient amount of runs for analysis. In addition, trying to select representative runs out of a large data set is tedious and error-prone thereby motivating methods of automating this analysis. This has led to the need for design space exploration techniques that allow synthetic biologists to easily explore the effect of varying parameters and efficiently consider alternative designs of their systems. This dissertation attempts to address this need by proposing new analysis and verification techniques for synthetic genetic circuits. In particular, it applies formal methods such as model checking techniques to models of genetic circuits in order to ensure that they behave correctly and are as robust as possible for a variety of different inputs and/or parameter settings. However, model checking stochastic systems is not as simple as model checking deterministic systems where it is always known what the next state of the system will be at any given step. Stochastic systems can exhibit a variety of different behaviors that are chosen randomly with different probabilities at each time step. Therefore, model checking a stochastic system involves calculating the probability that the system will exhibit a desired behavior. Although it is often more difficult to work with the probabilities that stochastic systems introduce, stochastic systems and the models that represent them are becoming commonplace in many disciplines including electronic circuit design where as parts are being made smaller and smaller, they are becoming less reliable. In addition to stochastic model checking, this dissertation proposes a new incremental stochastic simulation algorithm (iSSA) based on Gillespie's stochastic simulation algorithm (SSA) that is capable of presenting a researcher with a simulation trace of the typical behavior of the system. Before the development of this algorithm, discerning this information was extremely error-prone as it involved performing many simulations and attempting to wade through the massive amounts of data. This algorithm greatly aids researchers in designing genetic circuits as it efficiently shows the researcher the most likely behavior of the circuit. Both the iSSA and stochastic model checking can be used in concert to give a researcher the likelihood that the system will exhibit its most typical behavior. Once the typical behavior is known, properties for nontypical behaviors can be constructed and their likelihoods can also be computed. This methodology is applied to several genetic circuits leading to new understanding of the effects of various parameters on the behavior of these circuits

    Stochastic Modeling and Control of Biological Systems: The Lactose Regulation System of Escherichia Coli

    Get PDF
    In this paper, we present a comprehensive framework for stochastic modeling, model abstraction, and controller design for a biological system. The first half of the paper concerns modeling and model abstraction of the system. Most models in systems biology are deterministic models with ordinary differential equations in the concentration variables. We present a stochastic hybrid model of the lactose regulation system of E. coli bacteria that capture important phenomena which cannot be described by continuous deterministic models.We then show that the resulting stochastic hybrid model can be abstracted into a much simpler model, a two-state continuous-time Markov chain. The second half of the paper discusses controller design for a specific architecture. The architecture consists of measurement of a global quantity in a colony of bacteria as an output feedback and manipulation of global environmental variables as control actuation. We show that controller design can be performed on the abstracted (Markov chain) model and implementation on the real model yields the desired result

    Ranking function synthesis for bit-vector relations

    Get PDF
    Abstract. Ranking function synthesis is a key aspect to the success of modern termination provers for imperative programs. While it is wellknown how to generate linear ranking functions for relations over (mathematical) integers or rationals, efficient synthesis of ranking functions for machine-level integers (bit-vectors) is an open problem. This is particularly relevant for the verification of low-level code. We propose several novel algorithms to generate ranking functions for relations over machine integers: a complete method based on a reduction to Presburger arithmetic, and a template-matching approach for predefined classes of ranking functions based on reduction to SAT-and QBF-solving. The utility of our algorithms is demonstrated on examples drawn from Windows device drivers

    Advances in Rule-based Modeling: Compartments, Energy, and Hybrid Simulation, with Application to Sepsis and Cell Signaling

    Get PDF
    Biological systems are commonly modeled as reaction networks, which describe the system at the resolution of biochemical species. Cellular systems, however, are governed by events at a finer scale: local interactions among macromolecular domains. The multi-domain structure of macromolecules, combined with the local nature of interactions, can lead to a combinatorial explosion that pushes reaction network methods to their limits. As an alternative, rule-based models (RBMs) describe the domain-based structure and local interactions found in biological systems. Molecular complexes are represented by graphs: functional domains as vertices, macromolecules as groupings of vertices, and molecular bonding as edges. Reaction rules, which describe classes of reactions, govern local modifications to molecular graphs, such as binding, post-translational modification, and degradation. RBMs can be transformed to equivalent reaction networks and simulated by differential or stochastic methods, or simulated directly with a network-free approach that avoids the problem of combinatorial complexity. Although RBMs and network-free methods resolve many problems in systems modeling, challenges remain. I address three challenges here: (i) managing model complexity due to cooperative interactions, (ii) representing biochemical systems in the compartmental setting of cells and organisms, and (iii) reducing the memory burden of large-scale network-free simulations. First, I present a general theory of energy-based modeling within the BioNetGen framework. Free energy is computed under a pattern-based formalism, and contextual variations within reaction classes are enumerated automatically. Next, I extend the BioNetGen language to permit description of compartmentalized biochemical systems, with treatment of volumes, surfaces and transport. Finally, a hybrid particle/population method is developed to reduce memory requirements of network-free simulations. All methods are implemented and available as part of BioNetGen. The remainder of this work presents an application to sepsis and inflammation. A multi-organ model of peritoneal infection and systemic inflammation is constructed and calibrated to experiment. Extra-corporeal blood purification, a potential treatment for sepsis, is explored in silico. Model simulations demonstrate that removal of blood cytokines and chemokines is a sufficient mechanism for improved survival in sepsis. However, differences between model predictions and the latest experimental data suggest directions for further exploration

    Quantitative Analysis of Robustness in Systems Biology:Combining Global and Local Approaches

    Get PDF
    To characterize the behavior and robustness of cellular circuits is a major challenge for Systems Biology. Many of the published methods that address this question quantify the local robustness of the models. In this thesis, I tried to underpin the inappropriateness of such local measures and proposed an alternative solution: a glocal measure for robustness that combines both global and local aspects. It comprises a broad exploration of the parameter space and a further refinement based on different local measures. The method is general and such glocal analysis could be applied to many problems. Along with the theoretical and formal aspects of this new analysis method, I developed sampling algorithms that efficiently investigate the generally high-dimensional parameter space of models. To show the usefulness of my method, I applied it on different models of cyclic systems such as the circadian clock and the mitotic cycle. I first considered two models of the cyanobacterial circadian clock and compared their robustness properties. Also in the context of circadian rhythms, I studied the effect of additional feedback loops on the robustness properties in relation with entrainment. Models of the mitotic cycle are also used to assess the effect of an additional positive feedback loop on circuit robustness to parameter changes and molecular noise. Finally, I established some principles for the design of a synthetic circuit based on robustness. The thesis carries on with a discussion that emphasizes the advantages of the glocal method for robustness analysis: in all works, correlations between parameter values and local robustness can be found. Such results facilitate our understanding of the biochemical systems and can be a guide for new experiments to discriminate models or give directions for altering the robustness of the systems. I conclude by discussing potential applications for my method and possible improvements
    • 

    corecore