## Pattern Matching as Cut Elimination (1999)

Venue: | In Logic in Computer Science |

Citations: | 9 - 2 self |

### BibTeX

@INPROCEEDINGS{Cerrito99patternmatching,

author = {Serenella Cerrito and Delia Kesner},

title = {Pattern Matching as Cut Elimination},

booktitle = {In Logic in Computer Science},

year = {1999},

pages = {98--108},

publisher = {IEEE Computer Society Press}

}

### Years of Citing Articles

### OpenURL

### Abstract

We present typed pattern calculus with explicit pattern matching and explicit substitutions, where both the typing rules and the reduction rules are modeled on the same logical proof system, namely Gentzen sequent calculus for minimal logic. Our calculus is inspired by the Curry-Howard Isomorphism, in the sense that types, both for patterns and terms, correspond to propositions, terms correspond to proofs, and term reduction corresponds to sequent proof normalization performed by cut elimination. The calculus enjoys subject reduction, confluence, preservation of strong normalization w.r.t a system with meta-level substitutions, and strong normalization for well-typed terms, and, as a consequence, can be seen as an implementation calculus for functional formalisms using meta-level operations for pattern matching and substitutions.

### Citations

1562 | The Definition of Standard ML
- Miller, Tofte, et al.
- 1990
(Show Context)
Citation Context ...oof editors). Definitions by cases via pattern matching are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope [BMS80], SML =-=[MTH90]-=-, Miranda [Tur85], Caml-Light [ea93] and Haskell [HPJe92], and proof editors such as Coq [Coq], PVS [PVS], HOL [HOL], LEGO [LEG] and ALF [ALF]. To illustrate the difference between pattern matching fu... |

751 | Rewrite systems
- Dershowitz, Jouannaud
- 1992
(Show Context)
Citation Context ...theorem for closed TPCES terms. Finally, in Section 7, we conclude and we compare our approach with other works. Throughout the paper we will use standard notations from rewriting that we borrow from =-=[DJ90]-=-. 2 The Calculus TPCES 2.1 Raw Syntax The set of types is defined by the following grammar: A ::= ' j A \Theta A j A+A j A ! A where ' ranges over base types, and the symbols \Theta, + and ! define, r... |

391 | Explicit substitutions
- Abadi, Cardelli, et al.
- 1991
(Show Context)
Citation Context ...ms not having explicit substitutions). The study of this property in the framework of calculi with explicit substitutions has received much attention since Mellies [Mel95] has shown thatsoe -calculus =-=[ACCL91]-=- does not preserve strong normalization of simply typed -calculus. Note that in general the TPCES normal form of a term may contain the let constructor: the term let x be hy; vi in z contains a let co... |

281 | Computational interpretations of linear logic
- Abramsky
- 1993
(Show Context)
Citation Context ...ng normalization and "cut elimination" for closed terms. Our calculus is a major step forward with respect to the other proposals that have been made these last years in a similar direction.=-= Abramsky [Abr93]-=- gives a term assignment for the intuitionistic sequent proofs, but the terms are the same as those that arise from the term assignment to natural deduction proofs. His interpretation of the sequent p... |

267 |
Semantics of Programming Languages: Structures and Techniques. Foundations of Computing
- Gunter
- 1992
(Show Context)
Citation Context ...) Let M and N be two simply typed terms. If M \Gamma! fi N , then M \Gamma! + TPCES N . Proof. By induction on the structure of M . 4.2 Adding Recursive Types to TPCES We use the standard fold/unfold =-=[Gun92]-=- technique to encode recursion. In order to define recursive types, we add a type constant 1 and type variables with X ranging over all the types. We then add to types, patterns and terms A ::= \Delta... |

265 | Orderings for term rewriting systems - DERSHOWITZ - 1982 |

225 | Report on programming language Haskel a non-strict, purely functional language version 1.2
- Hudak, Jones, et al.
- 1992
(Show Context)
Citation Context ...rn matching are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope [9], SML [33], Miranda [37], Caml-Light [17] and Haskell =-=[24]-=-, and proof editors such as Coq [11], PVS [36], HOL [23], LEGO [31] and ALF [3]. To illustrate the difference between pattern matching function definitions and ordinary definitions we give here two di... |

198 |
The Lambda Calculus: its Syntax and Semantics (revised ed
- Barendregt
- 1984
(Show Context)
Citation Context ... M = let M 1 be y in M 2 and M 2 fy / M 1 g = M 0 . We have Mfx / Ng = let M 1 fx / Ng be y in M 2 fx / Ng \Gamma! TPC M 2 fx / Ngfy /M 1 fx / Ngg this last term being equal by the substitution lemma =-=[Bar84]-=- to M 2 fy /M 1 gfx / Ng = M 0 fx / Ng. Lemma 5.3 (Reduction is stable under Substitution (ii)) If N \Gamma! TPC N 0 , then Mfx / N g\Gamma! TPC Mfx / N 0 g, and if x 2 FV (M), then Mfx / N g\Gamma! +... |

185 | A modal analysis of staged computation
- Davies, Pfenning
(Show Context)
Citation Context ...s TPCES provides a computational interpretation of minimal logic sequent calculus, and there is a deep connection between S4 modal logic and LISP's eval and quote primitives in functional programming =-=[13, 19]-=-, it would be interesting to study whether our formalism might be extended to that logic. Finally, some technical aspects of the formulation of TPCES might benefit of some future simplifications. For ... |

160 |
A non-strict functional language with polymorphic types
- Miranda
- 1985
(Show Context)
Citation Context ...initions by cases via pattern matching are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope [BMS80], SML [MTH90], Miranda =-=[Tur85]-=-, Caml-Light [ea93] and Haskell [HPJe92], and proof editors such as Coq [Coq], PVS [PVS], HOL [HOL], LEGO [LEG] and ALF [ALF]. To illustrate the difference between pattern matching function definition... |

123 |
Lambda-calcul types et modèles
- Krivine
- 1990
(Show Context)
Citation Context ...orem 5.7 (Confluence of TPC) \Gamma! TPC is confluent on raw terms. 5.3 Strong Normalization for TPC In this section we show strong normalization for TPC adapting a proof technique based on stability =-=[Kri90]-=- to the case of pattern matching. The TPC-calculus has some rules to express internal pattern matching which can be seen as higher order rewriting rules, so we borrow from [JO97] a trick used to show ... |

98 | λυ, a calculus of explicit substitutions which preserves strong normalisation - Benaissa, Briaud, et al. - 1996 |

66 | Pure pattern calculus
- Jay, Kesner
- 2006
(Show Context)
Citation Context ...bstitution constructor, together with the sequent structural rules left contraction and left weakening to model the layered and wildcard patterns present in languages as ML or Haskell. In contrast to =-=[KPT96]-=-, which presents a calculus inspired from Gentzen sequent calculus that models programs with meta-level pattern-matching, we keep both pattern matching and substitutions as internal or explicit operat... |

63 |
editors. Report on the Programming Language Haskell 98. A non-strict Purely Functional Language
- Jones, Hughes
- 1999
(Show Context)
Citation Context ...are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope [BMS80], SML [MTH90], Miranda [Tur85], Caml-Light [ea93] and Haskell =-=[HPJe92]-=-, and proof editors such as Coq [Coq], PVS [PVS], HOL [HOL], LEGO [LEG] and ALF [ALF]. To illustrate the difference between pattern matching function definitions and ordinary definitions we give here ... |

61 |
an experimental applicative language
- Hope
- 1980
(Show Context)
Citation Context ...ges (resp. proof editors). Definitions by cases via pattern matching are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope =-=[BMS80]-=-, SML [MTH90], Miranda [Tur85], Caml-Light [ea93] and Haskell [HPJe92], and proof editors such as Coq [Coq], PVS [PVS], HOL [HOL], LEGO [LEG] and ALF [ALF]. To illustrate the difference between patter... |

61 | Constructive logics. part i: A tutorial on proof systems and typed λ-calculi
- Gallier
- 1993
(Show Context)
Citation Context ... same as those that arise from the term assignment to natural deduction proofs. His interpretation of the sequent proof rules gives an alternative, but equivalent, set of type-checking rules. Gallier =-=[Gal93]-=- gives a novel term assignment to sequent proofs and describes the cut-elimination rules on it, but his syntax does not allow to build nested patterns. He just suggests some reduction rules by interpr... |

44 | Abstract Data Type Systems
- Jouannaud, Okada
- 1997
(Show Context)
Citation Context ...e based on stability [Kri90] to the case of pattern matching. The TPC-calculus has some rules to express internal pattern matching which can be seen as higher order rewriting rules, so we borrow from =-=[JO97]-=- a trick used to show strong normalization of -calculus mixed with a special kind of higher order rewriting rules. We may omit types from terms to make easier the notation but no formal erasure takes ... |

44 |
Typed -calculi with explicit substitution may not terminate
- Mellies
- 1995
(Show Context)
Citation Context ...property on all pure terms (i.e. terms not having explicit substitutions). The study of this property in the framework of calculi with explicit substitutions has received much attention since Mellies =-=[Mel95]-=- has shown thatsoe -calculus [ACCL91] does not preserve strong normalization of simply typed -calculus. Note that in general the TPCES normal form of a term may contain the let constructor: the term l... |

41 | Preservation of Termination for Explicit Substitution - Bloo - 1997 |

33 |
A λ-calculus structure isomorphic to sequent calculus structure,Computer science logic
- Herbelin
- 1997
(Show Context)
Citation Context ...sequent left rules to build nested patterns but only some reduction rules are suggested in the spirit of cut elimination, while the explicit substitution paradigm is not incorporated at all. Herbelin =-=[Her94]-=- proposes a calculus which is also inspired by the Curry Howard isomorphism. His calculus does not have abstraction on patterns but only on variables, and reductions of terms correspond exactly to cut... |

30 | Explicit substitution: on the edge of strong normalization - Bloo, Geuvers - 1999 |

22 | Strong Normalization of Explicit Substitutions via Cut Elimination in Proof Nets
- Cosmo, Kesner
- 1997
(Show Context)
Citation Context ...it substitutions more apparent by abstracting out the details of renaming and updating. Another interpretation of explicit substitutions in terms of cut elimination is given by Di Cosmo and Kesner in =-=[DCK97]-=-. There, it is shown the existing correspondence between normalization in calculi with explicit substitution and cut elimination in linear logic, via proof nets. Another correspondence between a calcu... |

20 | Confluence and preservation of strong normalisation in an explicit substitution calculus, Rapport de Recherche No 2762
- Muñoz
(Show Context)
Citation Context ...mination rules. However, fi-reduction cannot be simulated by this calculus because substitutions cannot traverse redexes. This is in the same spirit of thes�� -calculus with explicit substitutions=-= in [Mun96]-=-. Another calculus in the spirit of the Curry Howard isomorphism is presented in [Wal93]. There, Wadler gives a computational interpretation of the same logical fragment that we study in this paper, v... |

16 | Combinatory reduction systems with explicit substitution
- Rose
- 1995
(Show Context)
Citation Context ...meaning of a given logical cut elimination process. Finally, it is worth noticing that the TPCES -calculus is not a particular case of the higher order calculi with explicit substitutions proposed in =-=[BR96]-=-, which do not allow to make abstractions on patterns, neither to have different forms of explicit substitutions. A subject of future investigation might be the study of the operational semantics of T... |

15 | Cut Rules and Explicit Substitutions
- Vestergaard, Wells
- 2001
(Show Context)
Citation Context ...ical fragment that we study in this paper, via a formalism that only allows abstractions on non-nested patterns. Fundamental properties such as confluence and strong normalization are not studied. In =-=[Ves98]-=-, Vestergaard studies the correspondence between -calculi with explicit substitutions (without patterns) in de Bruijn notation and intuitionistic logic in Gentzen style. He has to deal with many notio... |

12 | Confluence of extensional and non-extensional λ-calculi with explicit substitutions - Kesner - 2000 |

8 | On computational interpretations of the modal logic S4 I. Cut elimination, Interner Bericht 1996-35
- Goubault-Larrecq
- 1996
(Show Context)
Citation Context ...s TPCES provides a computational interpretation of minimal logic sequent calculus, and there is a deep connection between S4 modal logic and LISP's eval and quote primitives in functional programming =-=[GL96]-=-, it would be interesting to study whether our formalism might be extended to that logic. Finally, some technical aspects of the formulation of TPCES might benefit of some future simplifications. For ... |

2 |
et al. The Caml Light system, release 0.6. Software and documentation distributed by anonymous FTP on ftp.inria.fr
- Leroy
- 1993
(Show Context)
Citation Context ...a pattern matching are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope [BMS80], SML [MTH90], Miranda [Tur85], Caml-Light =-=[ea93]-=- and Haskell [HPJe92], and proof editors such as Coq [Coq], PVS [PVS], HOL [HOL], LEGO [LEG] and ALF [ALF]. To illustrate the difference between pattern matching function definitions and ordinary defi... |

2 |
R esultats de confluence pour les r egles fortes de la logique combinatoire cat egorique et liens avec les lambda-calculs. These de doctorat, Universite de Paris VII
- Hardin
- 1987
(Show Context)
Citation Context ... TPC-strong normalization, strong normalization of TPCES for well-typed terms and cut elimination for closed well-typed terms. The proof technique used to show confluence is the interpretation method =-=[Har87]-=-, which maps reduction sequences of a rewriting relation to sequences of another relation for which we already know confluence. In our case, TPCES -reduction is simulated by TPC-reduction, so that con... |

2 | Functional programming and linear logic
- Lafont
- 1989
(Show Context)
Citation Context ...s on it, but his syntax does not allow to build nested patterns. He just suggests some reduction rules by interpreting cut elimination in his calculus, but no full reduction system is studied. Lafont =-=[30]-=- proposes a computational interpretation of the sequent proofs for intuitionistic propositional logic under the name of clausal calculus. He also uses sequent left rules to build nested patterns but o... |

1 |
Extension au second ordre du -calcul typ e avec motifs. Memoire de DEA, Universite de Paris XI
- Courtieu
- 1996
(Show Context)
Citation Context ...n matching and substitutions allow to specify finer control over reduction. Also, we think that the calculus can be extended with polymorphic types, patterns and terms as it is done, for instance, in =-=[Cou96]-=- w.r.t. the calculus of [KPT96]. Since the calculus TPCES provides a computational interpretation of minimal logic sequent calculus, and there is a deep connection between S4 modal logic and LISP's ev... |

1 | Attempts for generalizing the RPO - Kamin, Levy - 1980 |

1 |
Functional programmingand linear logic
- Lafont
- 1989
(Show Context)
Citation Context ...s on it, but his syntax does not allow to build nested patterns. He just suggests some reduction rules by interpreting cut elimination in his calculus, but no full reduction system is studied. Lafont =-=[Laf89]-=- proposes a computational interpretation of the sequent proofs for intuitionistic propositional logic under the name of clausal calculus. He also uses sequent left rules to build nested patterns but o... |

1 |
Une deduction naturelle explicite
- Pagano
- 1998
(Show Context)
Citation Context ...itution and cut elimination in linear logic, via proof nets. Another correspondence between a calculus with explicit substitution and intuitionistic logic in natural deduction style is established in =-=[Pag98]-=-. These two last approaches study the logical meaning of a given reduction system with explicit substitutions rather than the computational meaning of a given logical cut elimination process. Finally,... |

1 |
A curry-howard isomorphism for sequent calculus
- Walder
- 1993
(Show Context)
Citation Context ...itutions cannot traverse redexes. This is in the same spirit of thes�� -calculus with explicit substitutions in [Mun96]. Another calculus in the spirit of the Curry Howard isomorphism is presented=-= in [Wal93]-=-. There, Wadler gives a computational interpretation of the same logical fragment that we study in this paper, via a formalism that only allows abstractions on non-nested patterns. Fundamental propert... |

1 |
et al. The Caml Light system, release 0.6. Available on ftp.inria.fr
- X
- 1993
(Show Context)
Citation Context ...y cases via pattern matching are much simpler to write and to understand and this is the reason why they became so popular in functional languages such as Hope [9], SML [33], Miranda [37], Caml-Light =-=[17]-=- and Haskell [24], and proof editors such as Coq [11], PVS [36], HOL [23], LEGO [31] and ALF [3]. To illustrate the difference between pattern matching function definitions and ordinary definitions we... |