11,769 research outputs found
Rewriting Modulo \beta in the \lambda\Pi-Calculus Modulo
The lambda-Pi-calculus Modulo is a variant of the lambda-calculus with
dependent types where beta-conversion is extended with user-defined rewrite
rules. It is an expressive logical framework and has been used to encode logics
and type systems in a shallow way. Basic properties such as subject reduction
or uniqueness of types do not hold in general in the lambda-Pi-calculus Modulo.
However, they hold if the rewrite system generated by the rewrite rules
together with beta-reduction is confluent. But this is too restrictive. To
handle the case where non confluence comes from the interference between the
beta-reduction and rewrite rules with lambda-abstraction on their left-hand
side, we introduce a notion of rewriting modulo beta for the lambda-Pi-calculus
Modulo. We prove that confluence of rewriting modulo beta is enough to ensure
subject reduction and uniqueness of types. We achieve our goal by encoding the
lambda-Pi-calculus Modulo into Higher-Order Rewrite System (HRS). As a
consequence, we also make the confluence results for HRSs available for the
lambda-Pi-calculus Modulo.Comment: In Proceedings LFMTP 2015, arXiv:1507.0759
Trees from Functions as Processes
Levy-Longo Trees and Bohm Trees are the best known tree structures on the
{\lambda}-calculus. We give general conditions under which an encoding of the
{\lambda}-calculus into the {\pi}-calculus is sound and complete with respect
to such trees. We apply these conditions to various encodings of the
call-by-name {\lambda}-calculus, showing how the two kinds of tree can be
obtained by varying the behavioural equivalence adopted in the {\pi}-calculus
and/or the encoding
Models and termination of proof reduction in the -calculus modulo theory
We define a notion of model for the -calculus modulo theory and
prove a soundness theorem. We then define a notion of super-consistency and
prove that proof reduction terminates in the -calculus modulo any
super-consistent theory. We prove this way the termination of proof reduction
in several theories including Simple type theory and the Calculus of
constructions
Translating HOL to Dedukti
Dedukti is a logical framework based on the lambda-Pi-calculus modulo
rewriting, which extends the lambda-Pi-calculus with rewrite rules. In this
paper, we show how to translate the proofs of a family of HOL proof assistants
to Dedukti. The translation preserves binding, typing, and reduction. We
implemented this translation in an automated tool and used it to successfully
translate the OpenTheory standard library.Comment: In Proceedings PxTP 2015, arXiv:1507.0837
A decompilation of the pi-calculus and its application to termination
We study the correspondence between a concurrent lambda-calculus in
administrative, continuation passing style and a pi-calculus and we derive a
termination result for the latter
Conservativity of embeddings in the lambda Pi calculus modulo rewriting (long version)
The lambda Pi calculus can be extended with rewrite rules to embed any
functional pure type system. In this paper, we show that the embedding is
conservative by proving a relative form of normalization, thus justifying the
use of the lambda Pi calculus modulo rewriting as a logical framework for
logics based on pure type systems. This result was previously only proved under
the condition that the target system is normalizing. Our approach does not
depend on this condition and therefore also works when the source system is not
normalizing.Comment: Long version of TLCA 2015 pape
A Universal Session Type for Untyped Asynchronous Communication
In the simply-typed lambda-calculus we can recover the full range of expressiveness of the untyped lambda-calculus solely by adding a single recursive type U = U -> U. In contrast, in the session-typed pi-calculus, recursion alone is insufficient to recover the untyped pi-calculus, primarily due to linearity: each channel just has two unique endpoints. In this paper, we show that shared channels with a corresponding sharing semantics (based on the language SILL_S developed in prior work) are enough to embed the untyped asynchronous pi-calculus via a universal shared session type U_S. We show that our encoding of the asynchronous pi-calculus satisfies operational correspondence and preserves observable actions (i.e., processes are weakly bisimilar to their encoding). Moreover, we clarify the expressiveness of SILL_S by developing an operationally correct encoding of SILL_S in the asynchronous pi-calculus
Embedding Pure Type Systems in the lambda-Pi-calculus modulo
The lambda-Pi-calculus allows to express proofs of minimal predicate logic.
It can be extended, in a very simple way, by adding computation rules. This
leads to the lambda-Pi-calculus modulo. We show in this paper that this simple
extension is surprisingly expressive and, in particular, that all functional
Pure Type Systems, such as the system F, or the Calculus of Constructions, can
be embedded in it. And, moreover, that this embedding is conservative under
termination hypothesis
- …