68 research outputs found
Is game semantics necessary?
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
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
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
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
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..
- âŠ