68 research outputs found

    Is game semantics necessary?

    Full text link
    We discuss the extent to which game semantics is implicit in the formalism of linear logic and in the intuitions underlying linear logic

    Paul Lorenzen -- Mathematician and Logician

    Get PDF
    This open access book examines the many contributions of Paul Lorenzen, an outstanding philosopher from the latter half of the 20th century. It features papers focused on integrating Lorenzen's original approach into the history of logic and mathematics. The papers also explore how practitioners can implement Lorenzen’s systematical ideas in today’s debates on proof-theoretic semantics, databank management, and stochastics. Coverage details key contributions of Lorenzen to constructive mathematics, Lorenzen’s work on lattice-groups and divisibility theory, and modern set theory and Lorenzen’s critique of actual infinity. The contributors also look at the main problem of Grundlagenforschung and Lorenzen’s consistency proof and Hilbert’s larger program. In addition, the papers offer a constructive examination of a Russell-style Ramified Type Theory and a way out of the circularity puzzle within the operative justification of logic and mathematics. Paul Lorenzen's name is associated with the Erlangen School of Methodical Constructivism, of which the approach in linguistic philosophy and philosophy of science determined philosophical discussions especially in Germany in the 1960s and 1970s. This volume features 10 papers from a meeting that took place at the University of Konstanz

    Client-Server Sessions in Linear Logic

    Get PDF
    We introduce coexponentials, a new set of modalities for Classical Linear Logic. As duals to exponentials, the coexponentials codify a distributed form of the structural rules of weakening and contraction. This makes them a suitable logical device for encapsulating the pattern of a server receiving requests from an arbitrary number of clients on a single channel. Guided by this intuition we formulate a system of session types based on Classical Linear Logic with coexponentials, which is suited to modelling client-server interactions. We also present a session-typed functional programming language for server-client programming, which we translate to our system of coexponentials

    Session types in practical programming

    Full text link
    Programs are more distributed and concurrent today than ever before, and structural communications are at the core. Constructing and debugging such programs are hard due to the lack of formal speciïŹcations and veriïŹcations of concurrency. Recent advances in type systems allow us to specify the structures of communications as session types, thus enabling static type checking of the usages of communication channels against protocols. The soundness of session type systems implies communication ïŹdelity and absence of deadlock. This work proposes to formalize multiparty dependent session types as an expressive and practical type discipline for enforcing communication protocols. The type system is formulated in the setting of multi-threaded λ-calculus with inspirations from multirole logic. It is sound, and it provides linearity and coherence guarantees entirely statically. The type system supports recursion and polymorphism. The formulation is particularly suitable for practical implementation, and this work provides such a runtime implementation

    Extracting proofs from documents

    Get PDF
    Often, theorem checkers like PVS are used to check an existing proof, which is part of some document. Since there is a large difference between the notations used in the documents and the notations used in the theorem checkers, it is usually a laborious task to convert an existing proof into a format which can be checked by a machine. In the system that we propose, the author is assisted in the process of converting an existing proof into the PVS language and having it checked by PVS. 1 Introduction The now-classic ALGOL 60 report [5] recognized three different levels of language: a reference language, a publication language and several hardware representations, whereby the publication language was intended to admit variations on the reference language and was to be used for stating and communicating processes. The importance of publication language ---often referred to nowadays as "pseudo-code"--- is difficult to exaggerate since a publication language is the most effective way..
    • 

    corecore