Results 1 
7 of
7
Cut Rules and Explicit Substitutions
, 2000
"... this paper deals exclusively with intuitionistic logic (in fact, only the implicative fragment), we require succedents to be a single consequent formula. Natural deduction systems, which we choose to call Nsystems, are symbolic logics generally given via introduction and elimination rules for the l ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
this paper deals exclusively with intuitionistic logic (in fact, only the implicative fragment), we require succedents to be a single consequent formula. Natural deduction systems, which we choose to call Nsystems, are symbolic logics generally given via introduction and elimination rules for the logical connectives which operate on the right, i.e., they manipulate the succedent formula. Examples are Gentzen's NJ and NK (Gentzen 1935). Logical deduction systems are given via leftintroduction and rightintroduction rules for the logical connectives. Although others have called these systems "sequent calculi", we call them Lsystems to avoid confusion with other systems given in sequent style. Examples are Gentzen's LK and LJ (Gentzen 1935). In this paper we are primarily interested in Lsystems. The advantage of Nsystems is that they seem closer to actual reasoning, while Lsystems on the other hand seem to have an easier proof theory. Lsystems are often extended with a "cut" rule as part of showing that for a given Lsystem and Nsystem, the derivations of each system can be encoded in the other. For example, NK proves the same as LK + cut (Gentzen 1935). Proof Normalization. A system is consistent when it is impossible to prove false, i.e., derive absurdity from zero assumptions. A system is analytic (has the analycity property) when there is an e#ective method to decompose any conclusion sequent into simpler premise sequents from which the conclusion can be obtained by some rule in the system such that the conclusion is derivable i# the premises are derivable (Maenpaa 1993). To achieve the goals of consistency and analycity, it has been customary to consider
A weak calculus with explicit operators for pattern matching and substitution
 In Tison [Tis02
, 2002
"... Abstract. In this paper we propose a Weak Lambda Calculus called λPw having explicit operators for Pattern Matching and Substitution. This formalism is able to specify functions defined by cases via pattern matching constructors as done by most modern functional programming languages such as OCAML. ..."
Abstract

Cited by 5 (0 self)
 Add to MetaCart
Abstract. In this paper we propose a Weak Lambda Calculus called λPw having explicit operators for Pattern Matching and Substitution. This formalism is able to specify functions defined by cases via pattern matching constructors as done by most modern functional programming languages such as OCAML. We show the main property enjoyed by λPw, namely subject reduction, confluence and strong normalization. 1
Resource operators for λcalculus
 INFORM. AND COMPUT
, 2007
"... We present a simple term calculus with an explicit control of erasure and duplication of substitutions, enjoying a sound and complete correspondence with the intuitionistic fragment of Linear Logic’s proofnets. We show the operational behaviour of the calculus and some of its fundamental properties ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
We present a simple term calculus with an explicit control of erasure and duplication of substitutions, enjoying a sound and complete correspondence with the intuitionistic fragment of Linear Logic’s proofnets. We show the operational behaviour of the calculus and some of its fundamental properties such as confluence, preservation of strong normalisation, strong normalisation of simplytyped terms, step by step simulation of βreduction and full composition.
CLL: A concurrent language built from logical principles
, 2005
"... We present CLL, a concurrent programming language that symmetrically integrates functional and concurrent logic programming. First, a core functional language is obtained from a proofterm assignment to a variant of intuitionistic linear logic, called FOMLL, via the CurryHoward isomorphism. Next, w ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
We present CLL, a concurrent programming language that symmetrically integrates functional and concurrent logic programming. First, a core functional language is obtained from a proofterm assignment to a variant of intuitionistic linear logic, called FOMLL, via the CurryHoward isomorphism. Next, we introduce a Chemical Abstract Machine (CHAM) whose molecules are typed terms of this functional language. Rewrite rules for this CHAM are derived by augmenting proofsearch rules for FOMLL with proofterms. We show that this CHAM is a powerful concurrent language and that the linear connectives ⊗, ∃, ⊕, ⊸ and & correspond to processcalculi connectives for parallel composition, name restriction, internal choice, input prefixing and external choice respectively. We also demonstrate that communication and synchronization between CHAM terms can be performed through proofsearch on the types of terms. Finally, we embed this CHAM as a construct in our functional language to allow interleaving functional and concurrent computation in CLL.
Lambda Calculus and Related Systems
"... In this paper, we show how pattern matching can be seen to arise from a proof term assignment for the focused sequent calculus. This use of the CurryHoward correspondence allows us to give a novel coverage checking algorithm, and makes it possible to give a rigorous correctness proof for the classi ..."
Abstract
 Add to MetaCart
In this paper, we show how pattern matching can be seen to arise from a proof term assignment for the focused sequent calculus. This use of the CurryHoward correspondence allows us to give a novel coverage checking algorithm, and makes it possible to give a rigorous correctness proof for the classical pattern compilation strategy of building decision trees via matrices of patterns. Categories and Subject Descriptors F.4.1 [Mathematical Logic]:
Superdeduction in λµ˜µ
, 2010
"... Abstract. Superdeduction is a method specially designed to ease the use of firstorder theories in predicate logic. The theory is used to enrich the deduction system with new deduction rules in a systematic, correct and complete way. A proofterm language and a cutelimination reduction already exis ..."
Abstract
 Add to MetaCart
Abstract. Superdeduction is a method specially designed to ease the use of firstorder theories in predicate logic. The theory is used to enrich the deduction system with new deduction rules in a systematic, correct and complete way. A proofterm language and a cutelimination reduction already exist for superdeduction, both based on Christian Urban’s work on classical sequent calculus. However Christian Urban’s calculus is not directly related to the CurryHoward correspondence contrarily to the λµ˜µcalculus which relates straightaway to the λcalculus. This short paper is my first step towards a further exploration of the computational content of superdeduction proofs, for I extend the λµ˜µcalculus in order to obtain a proofterm langage together with a cutelimination reduction for superdeduction. I also prove strong normalisation for this extension of the λµ˜µcalculus.
Patterns as first class citizens
, 2008
"... Abstract. The pure pattern calculus generalises the pure lambdacalculus by basing computation on patternmatching instead of betareduction. The simplicity and power of the calculus derive from allowing any term to be a pattern. As well as supporting a uniform approach to functions, it supports a u ..."
Abstract
 Add to MetaCart
Abstract. The pure pattern calculus generalises the pure lambdacalculus by basing computation on patternmatching instead of betareduction. The simplicity and power of the calculus derive from allowing any term to be a pattern. As well as supporting a uniform approach to functions, it supports a uniform approach to data structures which underpins two new forms of polymorphism. Path polymorphism supports searches or queries along all paths through an arbitrary data structure. Pattern polymorphism supports the dynamic creation and evaluation of patterns, so that queries can be customised in reaction to new information about the structures to be encountered. In combination, these features provide a natural account of tasks such as programming with XML paths. As the variables used in matching can now be eliminated by reduction it is necessary to separate them from the binding variables used to control scope. Then standard techniques suffice to ensure that reduction progresses and to establish confluence of reduction. 1