35 research outputs found

    Session Types as Generic Process Types

    Get PDF
    Behavioural type systems ensure more than the usual safety guarantees of static analysis. They are based on the idea of "types-as-processes", providing dedicated type algebras for particular properties, ranging from protocol compatibility to race-freedom, lock-freedom, or even responsiveness. Two successful, although rather different, approaches, are session types and process types. The former allows to specify and verify (distributed) communication protocols using specific type (proof) systems; the latter allows to infer from a system specification a process abstraction on which it is simpler to verify properties, using a generic type (proof) system. What is the relationship between these approaches? Can the generic one subsume the specific one? At what price? And can the former be used as a compiler for the latter? The work presented herein is a step towards answers to such questions. Concretely, we define a stepwise encoding of a pi-calculus with sessions and session types (the system of Gay and Hole) into a pi-calculus with process types (the Generic Type System of Igarashi and Kobayashi). We encode session type environments, polarities (which distinguish session channels end-points), and labelled sums. We show forward and reverse operational correspondences for the encodings, as well as typing correspondences. To faithfully encode session subtyping in process types subtyping, one needs to add to the target language record constructors and new subtyping rules. In conclusion, the programming convenience of session types as protocol abstractions can be combined with the simplicity and power of the pi-calculus, taking advantage in particular of the framework provided by the Generic Type System.Comment: In Proceedings EXPRESS/SOS 2014, arXiv:1408.127

    Modular session types for objects

    Get PDF
    Session types allow communication protocols to be specified type-theoretically so that protocol implementations can be verified by static type checking. We extend previous work on session types for distributed object-oriented languages in three ways. (1) We attach a session type to a class definition, to specify the possible sequences of method calls. (2) We allow a session type (protocol) implementation to be modularized, i.e. partitioned into separately-callable methods. (3) We treat session-typed communication channels as objects, integrating their session types with the session types of classes. The result is an elegant unification of communication channels and their session types, distributed object-oriented programming, and a form of typestate supporting non-uniform objects, i.e. objects that dynamically change the set of available methods. We define syntax, operational se-mantics, a sound type system, and a sound and complete type checking algorithm for a small distributed class-based object-oriented language with structural subtyping. Static typing guarantees that both sequences of messages on channels, and sequences of method calls on objects, conform to type-theoretic specifications, thus ensuring type-safety. The language includes expected features of session types, such as delegation, and expected features of object-oriented programming, such as encapsulation of local state.Comment: Logical Methods in Computer Science (LMCS), International Federation for Computational Logic, 201

    A Logical Approach To Deciding Semantic Subtyping

    Get PDF
    International audienceWe consider a type algebra equipped with recursive, product, function, intersection, union, and complement types together with type variables and implicit universal quantification over them. We consider the subtyping relation recently defined by Castagna and Xu over such type expressions and show how this relation can be decided in EXPTIME, answering an open question. The novelty, originality and strength of our solution reside in introducing a logical modeling for the semantic subtyping framework. We model semantic subtyping in a tree logic and use a satisfiability-testing algorithm in order to decide subtyping. We report on practical experiments made with a full implementation of the system. This provides a powerful polymorphic type system aiming at maintaining full static type-safety of functional programs that manipulate trees, even with higher-order functions, which is particularly useful in the context of XML

    Efficient Iterative Programs with Distributed Data Collections

    Full text link
    Big data programming frameworks have become increasingly important for the development of applications for which performance and scalability are critical. In those complex frameworks, optimizing code by hand is hard and time-consuming, making automated optimization particularly necessary. In order to automate optimization, a prerequisite is to find suitable abstractions to represent programs; for instance, algebras based on monads or monoids to represent distributed data collections. Currently, however, such algebras do not represent recursive programs in a way which allows for analyzing or rewriting them. In this paper, we extend a monoid algebra with a fixpoint operator for representing recursion as a first class citizen and show how it enables new optimizations. Experiments with the Spark platform illustrate performance gains brought by these systematic optimizations.Comment: 36 page

    Intrinsic subspace convergence in TDD MIMO communication

    Get PDF
    In numerical linear algebra, students encounter early the iterative power method, which finds eigenvectors of a matrix from an arbitrary starting point through repeated normalization and multiplications by the matrix itself. In practice, more sophisticated methods are used nowadays, threatening to make the power method a historical and pedagogic footnote. However, in the context of communication over a time-division duplex (TDD) multipleinput multiple-output (MIMO) channel, the power method takes a special position. It can be viewed as an intrinsic part of the uplink and downlink communication switching, enabling estimation of the eigenmodes of the channel without extra overhead. Generalizing the method to vector subspaces, communication in the subspaces with the best receive and transmit signal-to-noise ratio (SNR) is made possible. In exploring this intrinsic subspace convergence (ISC), we show that several published and new schemes can be cast into a common framework where all members benefit from the ISC.Peer Reviewe

    On the Optimization of Iterative Programming with Distributed Data Collections

    Get PDF
    Big data programming frameworks are becoming increasingly important for the development of applications for which performance and scalability are critical. In those complex frameworks, optimizing code by hand is hard and time-consuming, making automated optimization particularly necessary. In order to automate optimization, a prerequisite is to find suitable abstractions to represent programs; for instance, algebras based on monads or monoids to represent distributed data collections. Currently, however, such algebras do not represent recursive programs in a way which allows for analyzing or rewriting them. In this paper, we extend a monoid algebra with a fixpoint operator for representing recursion as a first class citizen and show how it enables new optimizations. Experiments with the Spark platform illustrate performance gains brought by these systematic optimizations

    On the Optimization of Iterative Programming with Distributed Data Collections

    Get PDF
    Big data programming frameworks are becoming increasingly important for the development of applications for which performance and scalability are critical. In those complex frameworks, optimizing code by hand is hard and time-consuming, making automated optimization particularly necessary. In order to automate optimization, a prerequisite is to find suitable abstractions to represent programs; for instance, algebras based on monads or monoids to represent distributed data collections. Currently, however, such algebras do not represent recursive programs in a way which allows for analyzing or rewriting them. In this paper, we extend a monoid algebra with a fixpoint operator for representing recursion as a first class citizen and show how it enables new optimizations. Experiments with the Spark platform illustrate performance gains brought by these systematic optimizations

    Oncoproteomic Analysis Reveals Co-Upregulation of RELA and STAT5 in Carboplatin Resistant Ovarian Carcinoma

    Get PDF
    Ovarian cancer is one of the most lethal types of female malignancy. Although most patients are initially responsive to platinum-based chemotherapy, almost all develop recurrent chemoresistant tumors and succumb to their diseases. Elucidating the pathogenesis underlying drug resistance is fundamental to the development of new therapeutics, leading to improved clinical outcomes in these patients.We compared the proteomes of paired primary and recurrent post-chemotherapy ovarian high-grade serous carcinomas from nine ovarian cancer patients using CIEF/Nano-RPLC coupled with ESI-Tandem MS. As compared to their primary tumors, more than half of the recurrent tumors expressed higher levels of several proteins including CP, FN1, SYK, CD97, AIF1, WNK1, SERPINA3, APOD, URP2, STAT5B and RELA (NF-kappaB p65), which were also validated by quantitative RT-PCR. Based on shRNA screening for the upregulated genes in in vitro carboplatin-resistant cells, we found that simultaneous knockdown of RELA and STAT5B was most effective in sensitizing tumor cells for carboplatin treatment. Similarly, the NF-kappaB inhibitor, BMS-345541, and the STAT5 inhibitor, Dasatinib, significantly enhanced cell sensitivity to carboplatin. Moreover, both RELA and STAT5 are known to bind to the promoter region of Bcl-X, regulating its promoter activity. In this regard, augmented Bcl-xL expression was detected in carboplatin-resistant cells. Combined ectopic expression of RELA and STAT5B enhanced Bcl-xL promoter activity while treatment with BMS-345541 and Dasatinib decreased it. Chromatin immunoprecipitation of the Bcl-X promoter region using a STAT5 antibody showed induction of RELA and STAT5 DNA-binding segments both in naïve cells treated with a high concentration of carboplatin as well as in carboplatin-resistant cells.Proteomic analysis identified RELA and STAT5 as two major proteins associated with carboplatin resistance in ovarian tumors. Our results further showed that NF-kappaB and STAT5 inhibitor could sensitize carboplatin-resistant cells and suggest that such inhibitors can be used to benefit patients with carboplatin-resistant recurrent ovarian cancer
    corecore