3,453 research outputs found

    Foundations of Session Types and Behavioural Contracts

    Get PDF
    International audienceBehavioural type systems, usually associated to concurrent or distributed computations, encompass concepts such as interfaces, communication protocols, and contracts, in addition to the traditional input/output operations. The behavioural type of a software component specifies its expected patterns of interaction using expressive type languages, so that types can be used to determine automatically whether the component interacts correctly with other components. Two related important notions of behavioural types are those of session types and behavioural contracts. This paper surveys the main accomplishments of the last twenty years within these two approaches

    Using Pi-Calculus Names as Locks

    Full text link
    Locks are a classic data structure for concurrent programming. We introduce a type system to ensure that names of the asynchronous pi-calculus are used as locks. Our calculus also features a construct to deallocate a lock once we know that it will never be acquired again. Typability guarantees two properties: deadlock-freedom, that is, no acquire operation on a lock waits forever; and leak-freedom, that is, all locks are eventually deallocated. We leverage the simplicity of our typing discipline to study the induced typed behavioural equivalence. After defining barbed equivalence, we introduce a sound labelled bisimulation, which makes it possible to establish equivalence between programs that manipulate and deallocate locks.Comment: In Proceedings EXPRESS/SOS2023, arXiv:2309.0578

    Linearity, Persistence and Testing Semantics in the Asynchronous Pi-Calculus

    Get PDF
    International audienceIn [CSVV06] the authors studied the expressiveness of persistence in the asynchronous pi calculus (Api) wrt weak barbed congruence. The study is incomplete because it ignores the issue of divergence. In this paper we present an expressiveness study of persistence in the asynchronous pi-calculus (Api) wrt DeNicola and Hennesy's testing scenario which is sensitive to divergence. We consider Api and theree sub-languages of it, each capturing one source of persistence: the persistent-input calculus (PIApi), the persistent-output calculus (POApi) and persistent calculus (PApi). In [CSVV06] the authors showed encodings from Api into semipersistent calculi are correct wrt weak barbed congruence. In this paper we prove that, under some general conditions, there cannot be an encoding from Api into a (semi)-persistent calculus preserving the must testing semantics. [CSVV06 ] C. Palamidessi, V. Saraswat, F. Valencia and B. Victor. On the Expressiveness of Linearity vs Persistence in the Asynchronous Pi Calculus. LICS 2006:59-68,2006

    Parent and Student Voices on the First Year of the DC Opportunity Scholarship Program

    Get PDF
    In the 50 years since economist Milton Friedman published “The Role of Government in Education” scholars and policy makers have been debating how parental choice through market mechanisms can and does operate in education. Market “optimists” argue that education is a service that can be produced under a variety of arrangements and that parents are natural education consumers. Market “pessimists” argue that education is a public good that should be produced in government-run schools, and that school choice programs suffer “market failure” because only advantaged families will have the resources and experience to choose effectively

    What is a ‘Good’ Encoding of Guarded Choice?

    Get PDF
    The pi-calculus with synchronous output and mixed-guarded choices is strictly more expressive than the pi-calculus with asynchronous output and no choice. This result was recently proved by Palamidessi and, as a corollary, she showed that there is no fully compositional encoding from the former into the latter that preserves divergence-freedom and symmetries. This paper argues that there are nevertheless `good' encodings between these calculi. In detail, we present a series of encodings for languages with (1) input-guarded choice, (2) both input- and output-guarded choice, and (3) mixed-guarded choice, and investigate them with respect to compositionality and divergence-freedom. The first and second encoding satisfy all of the above criteria, but various `good' candidates for the third encoding - inspired by an existing distributed implementation - invalidate one or the other criterion. While essentially confirming Palamidessi's result, our study suggests that the combination of strong compositionality and divergence-freedom is too strong for more practical purposes

    The ghost of Patrick Geddes:civics as applied sociology

    Get PDF
    In 1904 and 1905 Patrick Geddes (1905, 1906) read his famed, but today little-read, two-part paper, 'Civics: as Applied Sociology', to the first meetings of the British Sociological Society. Geddes is often thought of as a 'pioneer of sociology' (Mairet, 1957;Meller, 1990) and for some (egDevine, 1999: 296) as 'a seminal influence on sociology'. However, little of substance has been written to critically assess Geddes's intellectual legacy as a sociologist. His work is largely forgotten by sociologists in Britain (Abrams, 1968;Halliday, 1968;Evans, 1986). Few have been prepared to follow Geddes's ambition to bridge the chasm between nature and culture, environment and society, geography, biology and sociology. His conception of 'sociology', oriented towards social action from a standpoint explicitly informed by evolutionary theory. A re-appraisal of the contemporary relevance of Geddes's thinking on civics as applied sociology has to venture into the knotted problem of evolutionary sociology. It also requires giving some cogency to Geddes's often fragmentary and inconsistent mode of address. Although part of a post-positivist, 'larger modernism' Geddes remained mired in nineteenth century evolutionary thought and fought shy of dealing with larger issues of social class or the breakthrough work of early twentieth century sociology of Simmel, Weber and Durkheim. His apolitical notion of 'civics' limits its relevance to academic sociology today

    Why Jurisprudence Is Not Legal Philosophy

    Get PDF
    peerreview_statement: The publishing and review policy for this title is described in its Aims & Scope. aims_and_scope_url: http://www.tandfonline.com/action/journalInformation?show=aimsScope&journalCode=rjpn20peerreview_statement: The publishing and review policy for this title is described in its Aims & Scope. aims_and_scope_url: http://www.tandfonline.com/action/journalInformation?show=aimsScope&journalCode=rjpn20peerreview_statement: The publishing and review policy for this title is described in its Aims & Scope. aims_and_scope_url: http://www.tandfonline.com/action/journalInformation?show=aimsScope&journalCode=rjpn20peerreview_statement: The publishing and review policy for this title is described in its Aims & Scope. aims_and_scope_url: http://www.tandfonline.com/action/journalInformation?show=aimsScope&journalCode=rjpn2

    Processes, Systems \& Tests: Defining Contextual Equivalences

    Full text link
    In this position paper, we would like to offer and defend a new template to study equivalences between programs -- in the particular framework of process algebras for concurrent computation.We believe that our layered model of development will clarify the distinction that is too often left implicit between the tasks and duties of the programmer and of the tester. It will also enlighten pre-existing issues that have been running across process algebras as diverse as the calculus of communicating systems, the π\pi-calculus -- also in its distributed version -- or mobile ambients.Our distinction starts by subdividing the notion of process itself in three conceptually separated entities, that we call \emph{Processes}, \emph{Systems} and \emph{Tests}.While the role of what can be observed and the subtleties in the definitions of congruences have been intensively studied, the fact that \emph{not every process can be tested}, and that \emph{the tester should have access to a different set of tools than the programmer} is curiously left out, or at least not often formally discussed.We argue that this blind spot comes from the under-specification of contexts -- environments in which comparisons takes place -- that play multiple distinct roles but supposedly always \enquote{stay the same}.We illustrate our statement with a simple Java example, the \enquote{usual} concurrent languages, but also back it up with λ\lambda-calculus and existing implementations of concurrent languages as well
    • 

    corecore