23 research outputs found

    Multiparty Sessions based on Proof Nets

    Full text link
    We interpret Linear Logic Proof Nets in a term language based on Solos calculus. The system includes a synchronisation mechanism, obtained by a conservative extension of the logic, that enables to define non-deterministic behaviours and multiparty sessions.Comment: In Proceedings PLACES 2014, arXiv:1406.331

    Logical Relations for Encryption (Extended Abstract)

    Get PDF
    The theory of relational parametricity and its logical relations proof technique are powerful tools for reasoning about information hiding in the polymorphic 位-calculus. We investigate the application of these tools in the security domain by defining a cryptographic 位-calculus -- an extension of the standard simply typed 位-calculus with primitives for encryption, decryption, and key generation -- and introducing logical relations for this calculus that can be used to prove behavioral equivalences between programs that rely on encryption. We illustrate the framework by encoding some simple security protocols, including the Needham-Schroeder public-key protocol. We give a natural account of the well-known attack on the original protocol and a straightforward proof that the improved variant of the protocol is secure

    What Are Polymorphically-Typed Ambients?

    Full text link
    Abstract: The Ambient Calculus was developed by Cardelli and Gordon as a formal framework to study issues of mobility and migrant code. We consider an Ambient Calculus where ambients transport and exchange programs rather that just inert data. We propose different senses in which such a calculus can be said to be polymorphically typed, and design accordingly a polymorphic type system for it. Our type system assigns types to embedded programs and what we call behaviors to processes; a denotational semantics of behaviors is then proposed, here called trace semantics, underlying much of the remaining analysis. We state and prove a Subject Reduction property for our polymorphically typed calculus. Based on techniques borrowed from finite automata theory, type-checking of fully type-annotated processes is shown to be decidable; the time complexity of our decision procedure is exponential (this is a worst-case in theory, arguably not encountered in practice). Our polymorphically-typed calculus is a conservative extension of the typed Ambient Calculus originally proposed by Cardelli and Gordon

    Principals in Programming Languages: Technical Results

    Full text link
    This is the companion technical report for ``Principals in Programming Languages'' [20]. See that document for a more readable version of these results. In this paper, we describe two variants of the simply typed \lambda-calculus extended with a notion of {\em principal}. The results are languages in which intuitive statements like ``the client must call open\mathtt{open} to obtain a file handle'' can be phrased and proven formally. The first language is a two-agent calculus with references and recursive types, while the second language explores the possibility of multiple agents with varying amounts of type information. We use these calculi to give syntactic proofs of some type abstraction results that traditionally require semantic arguments
    corecore