115 research outputs found
POPLMark reloaded: Mechanizing proofs by logical relations
We propose a new collection of benchmark problems in mechanizing the metatheory of programming languages, in order to compare and push the state of the art of proof assistants. In particular, we focus on proofs using logical relations (LRs) and propose establishing strong normalization of a simply typed calculus with a proof by Kripke-style LRs as a benchmark. We give a modern view of this well-understood problem by formulating our LR on well-typed terms. Using this case study, we share some of the lessons learned tackling this problem in different dependently typed proof environments. In particular, we consider the mechanization in Beluga, a proof environment that supports higher-order abstract syntax encodings and contrast it to the development and strategies used in general-purpose proof assistants such as Coq and Agda. The goal of this paper is to engage the community in discussions on what support in proof environments is needed to truly bring mechanized metatheory to the masses and engage said community in the crafting of future benchmarks
Games, Mobile Processes, and Functions
Long version of a CSL'22 paperInternational audienceWe establish a tight connection between two models of the λ-calculus, namely Milner's encoding into the π-calculus (precisely, the Internal π-calculus), and operational game semantics (OGS). We first investigate the operational correspondence between the behaviours of the encoding provided by π and OGS. We do so for various LTSs: the standard LTS for π and a new 'concurrent' LTS for OGS; an 'output-prioritised' LTS for π and the standard alternating LTS for OGS. We then show that the equivalences induced on λ-terms by all these LTSs (for π and OGS) coincide. These connections allow us to transfer results and techniques between π and OGS. In particular we import up-to techniques from π onto OGS and we derive congruence and compositionality results for OGS from those of π. The study is illustrated for call-by-value; similar results hold for call-by-name
Explicit Evidence Systems with Common Knowledge
Justification logics are epistemic logics that explicitly include
justifications for the agents' knowledge. We develop a multi-agent
justification logic with evidence terms for individual agents as well as for
common knowledge. We define a Kripke-style semantics that is similar to
Fitting's semantics for the Logic of Proofs LP. We show the soundness,
completeness, and finite model property of our multi-agent justification logic
with respect to this Kripke-style semantics. We demonstrate that our logic is a
conservative extension of Yavorskaya's minimal bimodal explicit evidence logic,
which is a two-agent version of LP. We discuss the relationship of our logic to
the multi-agent modal logic S4 with common knowledge. Finally, we give a brief
analysis of the coordinated attack problem in the newly developed language of
our logic
The Lambek-Grishin calculus is NP-complete
The Lambek-Grishin calculus LG is the symmetric extension of the
non-associative Lambek calculus NL. In this paper we prove that the
derivability problem for LG is NP-complete
J-Calc: a typed lambda calculus for intuitionistic justification logic
In this paper we offer a system J-Calc that can be regarded as a typed λ-calculus for the {→, ⊥} fragment of Intuitionistic Justification Logic. We offer different interpretations of J-Calc, in particular, as a two phase proof system in which we proof check the validity of deductions of a theory T based on deductions from a stronger theory T and computationally as a type system for separate compilations. We establish some first metatheoretic result
J-Calc: a typed lambda calculus for intuitionistic justification logic
In this paper we offer a system J-Calc that can be regarded as a typed λ-calculus for the {→, ⊥} fragment of Intuitionistic Justification Logic. We offer different interpretations of J-Calc, in particular, as a two phase proof system in which we proof check the validity of deductions of a theory T based on deductions from a stronger theory T and computationally as a type system for separate compilations. We establish some first metatheoretic result
Semirings of Evidence
In traditional justification logic, evidence terms have the syntactic form of
polynomials, but they are not equipped with the corresponding algebraic
structure. We present a novel semantic approach to justification logic that
models evidence by a semiring. Hence justification terms can be interpreted as
polynomial functions on that semiring. This provides an adequate semantics for
evidence terms and clarifies the role of variables in justification logic.
Moreover, the algebraic structure makes it possible to compute with evidence.
Depending on the chosen semiring this can be used to model trust,
probabilities, cost, etc. Last but not least the semiring approach seems
promising for obtaining a realization procedure for modal fixed point logics
- …