817 research outputs found

    Monoidal computer III: A coalgebraic view of computability and complexity

    Full text link
    Monoidal computer is a categorical model of intensional computation, where many different programs correspond to the same input-output behavior. The upshot of yet another model of computation is that a categorical formalism should provide a much needed high level language for theory of computation, flexible enough to allow abstracting away the low level implementation details when they are irrelevant, or taking them into account when they are genuinely needed. A salient feature of the approach through monoidal categories is the formal graphical language of string diagrams, which supports visual reasoning about programs and computations. In the present paper, we provide a coalgebraic characterization of monoidal computer. It turns out that the availability of interpreters and specializers, that make a monoidal category into a monoidal computer, is equivalent with the existence of a *universal state space*, that carries a weakly final state machine for any pair of input and output types. Being able to program state machines in monoidal computers allows us to represent Turing machines, to capture their execution, count their steps, as well as, e.g., the memory cells that they use. The coalgebraic view of monoidal computer thus provides a convenient diagrammatic language for studying computability and complexity.Comment: 34 pages, 24 figures; in this version: added the Appendi

    Legal socialization effects on democratization

    Get PDF
    As is the case with all our joint publications, this article represents a genuine research collaboration between the authors, with equal contributions. Therefore, neither is first or second author. This article uses data from a collaborative project that grew out of the Law and Society Associations Working Group on Orientations toward Law and Normative Ordering‘. Ellen S. Cohn, lames L. Gibson, Susan O. White, Joseph Sanders, Joan McCord, and Felice Levine were responsible for the development and implementation of the research design. Funding for the project was provided by the (US) National Science Foundation (SE 13237 and SIR 11403). Our European collaborators include Chantal Kourilsky-Augeven (France), Grazyna Skapska, Iwona Jakubowska-Branicka, and Maria Barucka-Arctowa (Poland), Andras Sajo (Hungary), Rosemary Barberet (Spain), and Stefka Naoumova (Bulgaria). Pam Moore, Kris Guffey, Marika Litras, Julie Nadeau, John Kraft, and Kimberly Smirles provided valuable research assistance

    Representation and duality of the untyped lambda-calculus in nominal lattice and topological semantics, with a proof of topological completeness

    Get PDF
    We give a semantics for the lambda-calculus based on a topological duality theorem in nominal sets. A novel interpretation of lambda is given in terms of adjoints, and lambda-terms are interpreted absolutely as sets (no valuation is necessary)

    Categories of Timed Stochastic Relations

    Get PDF
    AbstractStochastic behavior—the probabilistic evolution of a system in time—is essential to modeling the complexity of real-world systems. It enables realistic performance modeling, quality-of-service guarantees, and especially simulations for biological systems. Languages like the stochastic pi calculus have emerged as effective tools to describe and reason about systems exhibiting stochastic behavior. These languages essentially denote continuous-time stochastic processes, obtained through an operational semantics in a probabilistic transition system. In this paper we seek a more descriptive foundation for the semantics of stochastic behavior using categories and monads. We model a first-order imperative language with stochastic delay by identifying probabilistic choice and delay as separate effects, modeling each with a monad, and combining the monads to build a model for the stochastic language

    The Semantics of Non-Declaratives

    Get PDF

    From Proof Nets to the Free *-Autonomous Category

    Get PDF
    In the first part of this paper we present a theory of proof nets for full multiplicative linear logic, including the two units. It naturally extends the well-known theory of unit-free multiplicative proof nets. A linking is no longer a set of axiom links but a tree in which the axiom links are subtrees. These trees will be identified according to an equivalence relation based on a simple form of graph rewriting. We show the standard results of sequentialization and strong normalization of cut elimination. In the second part of the paper we show that the identifications enforced on proofs are such that the class of two-conclusion proof nets defines the free *-autonomous category.Comment: LaTeX, 44 pages, final version for LMCS; v2: updated bibliograph

    Sepia: a Framework for Natural Language Semantics

    Get PDF
    Source code and technical descriptionTo help explore linguistic semantics in the context of computational natural language understanding, Sepia provides a realization the central theoretical idea of categorial grammar: linking words and phrases to compositional lambda semantics. The Sepia framework provides a language in which to express complex transformations from text to data structures, and tools surrounding that language for parsing and machine learning. Lambda semantics are expressed as arbitrary Scheme programs, unlimited in the semantic representations they may build, and the rules for transformation are expressed in Combinatory Categorial Grammar, though the details of grammar formalism may be easily changed. This report explains the major design decisions, and is meant to teach the reader how to understand Sepia semantics and how to create lexical items for a new language understanding task

    TreatJS: Higher-Order Contracts for JavaScript

    Get PDF
    TreatJS is a language embedded, higher-order contract system for JavaScript which enforces contracts by run-time monitoring. Beyond providing the standard abstractions for building higher-order contracts (base, function, and object contracts), TreatJS's novel contributions are its guarantee of non-interfering contract execution, its systematic approach to blame assignment, its support for contracts in the style of union and intersection types, and its notion of a parameterized contract scope, which is the building block for composable run-time generated contracts that generalize dependent function contracts. TreatJS is implemented as a library so that all aspects of a contract can be specified using the full JavaScript language. The library relies on JavaScript proxies to guarantee full interposition for contracts. It further exploits JavaScript's reflective features to run contracts in a sandbox environment, which guarantees that the execution of contract code does not modify the application state. No source code transformation or change in the JavaScript run-time system is required. The impact of contracts on execution speed is evaluated using the Google Octane benchmark.Comment: Technical Repor
    • …
    corecore