18 research outputs found

    Automated verification of shape and size properties via separation logic.

    Get PDF
    Despite their popularity and importance, pointer-based programs remain a major challenge for program verification. In this paper, we propose an automated verification system that is concise, precise and expressive for ensuring the safety of pointer-based programs. Our approach uses user-definable shape predicates to allow programmers to describe a wide range of data structures with their associated size properties. To support automatic verification, we design a new entailment checking procedure that can handle well-founded inductive predicates using unfold/fold reasoning. We have proven the soundness and termination of our verification system, and have built a prototype system

    Molecular interactions at the surface of extracellular vesicles

    Get PDF
    Extracellular vesicles such as exosomes, microvesicles, apoptotic bodies, and large oncosomes have been shown to participate in a wide variety of biological processes and are currently under intense investigation in many different fields of biomedicine. One of the key features of extracellular vesicles is that they have relatively large surface compared to their volume. Some extracellular vesicle surface molecules are shared with those of the plasma membrane of the releasing cell, while other molecules are characteristic for extracellular vesicular surfaces. Besides proteins, lipids, glycans, and nucleic acids are also players of extracellular vesicle surface interactions. Being secreted and present in high number in biological samples, collectively extracellular vesicles represent a uniquely large interactive surface area which can establish contacts both with cells and with molecules in the extracellular microenvironment. Here, we provide a brief overview of known components of the extracellular vesicle surface interactome and highlight some already established roles of the extracellular vesicle surface interactions in different biological processes in health and disease

    Symbolic execution with separation logic

    No full text
    Abstract. We describe a sound method for automatically proving Hoare triples for loop-free code in Separation Logic, for certain preconditions and postconditions (symbolic heaps). The method uses a form of symbolic execution, a decidable proof theory for symbolic heaps, and extraction of frame axioms from incomplete proofs. This is a precursor to the use of the logic in automatic specification checking, program analysis, and model checking.

    Automatic verification of pointer programs using grammar-based shape analysis

    No full text
    Abstract. We present a program analysis that can automatically discover the shape of complex pointer data structures. The discovered invariants are, then, used to verify the absence of safety errors in the program, or to check whether the program preserves the data consistency. Our analysis extends the shape analysis of Sagiv et al. with grammar annotations, which can precisely express the shape of complex data structures. We demonstrate the usefulness of our analysis with binomial heap construction and the Schorr-Waite tree traversal. For a binomial heap construction algorithm, our analysis returns a grammar that precisely describes the shape of a binomial heap; for the Schorr-Waite tree traversal, our analysis shows that at the end of the execution, the result is a tree and there are no memory leaks.

    Logics and bisimulation games for concurrency, causality and conflict

    No full text
    Based on a simple axiomatization of concurrent behaviour we define two ways of observing parallel computations and show that in each case they are dual to conflict and causality, respectively. We give a logical characterization to those dualities and show that natural fixpoint modal logics can be extracted from such a characterization. We also study the equivalences induced by such logics and prove that they are decidable and can be related with well-known bisimulations for interleaving and noninterleaving concurrency. Moreover, by giving a game-theoretical characterization to the equivalence induced by the main logic, which is called Separation Fixpoint Logic (SFL), we show that the equivalence SFL induces is strictly stronger than a history-preserving bisimulation (hpb) and strictly weaker than a hereditary history-preserving bisimulation (hhpb). Our study considers branching-time models of concurrency based on transition systems and petri net structures

    Logics and bisimulation games for concurrency, causality and conflict

    No full text
    Based on a simple axiomatization of concurrent behaviour we define two ways of observing parallel computations and show that in each case they are dual to conflict and causality, respectively. We give a logical characterization to those dualities and show that natural fixpoint modal logics can be extracted from such a characterization. We also study the equivalences induced by such logics and prove that they are decidable and can be related with well-known bisimulations for interleaving and noninterleaving concurrency. Moreover, by giving a game-theoretical characterization to the equivalence induced by the main logic, which is called Separation Fixpoint Logic (SFL), we show that the equivalence SFL induces is strictly stronger than a history-preserving bisimulation (hpb) and strictly weaker than a hereditary history-preserving bisimulation (hhpb). Our study considers branching-time models of concurrency based on transition systems and petri net structures
    corecore