ID: cs/0405075

Reduction Strategies in Lambda Term Normalization and their Effects on Heap Usage

May 22, 2004

View on ArXiv

Similar papers 5

Repetitive Reduction Patterns in Lambda Calculus with letrec (Work in Progress)

February 14, 2011

83% Match
Jan Utrecht University, The Netherlands Rochel, Clemens Utrecht University, The Netherlands Grabmayer
Programming Languages

For the lambda-calculus with letrec we develop an optimisation, which is based on the contraction of a certain class of 'future' (also: virtual) redexes. In the implementation of functional programming languages it is common practice to perform beta-reductions at compile time whenever possible in order to produce code that requires fewer reductions at run time. This is, however, in principle limited to redexes and created redexes that are 'visible' (in the sense that they c...

Find SimilarView on arXiv

Definitions by rewriting in the Calculus of Constructions

October 12, 2006

83% Match
Frédéric INRIA Lorraine - LORIA, LIX Blanqui
Logic in Computer Science

This paper presents general syntactic conditions ensuring the strong normalization and the logical consistency of the Calculus of Algebraic Constructions, an extension of the Calculus of Constructions with functions and predicates defined by higher-order rewrite rules. On the one hand, the Calculus of Constructions is a powerful type system in which one can formalize the propositions and natural deduction proofs of higher-order logic. On the other hand, rewriting is a simple ...

Find SimilarView on arXiv

L-types for resource awareness: an implicit name approach

December 21, 2021

83% Match
Silvia LIP Ghilezan, Jelena LIP Ivetić, ... , Lescanne Pierre LIP
Logic in Computer Science
Logic

Since the early work of Church on $\lambda$I-calculus and Gentzen on structural rules, the control of variable use has gained an important role in computation and logic emerging different resource aware calculi and substructural logics with applications to programming language and compiler design. This paper presents the first formalization of variable control in calculi with implicit names based on de Bruijn indices. We design and implement three calculi: first, a restricted...

Find SimilarView on arXiv

Analysing Parallel Complexity of Term Rewriting

August 1, 2022

83% Match
Thaïs Baudon, Carsten Fuhs, Laure Gonnord
Logic in Computer Science
Programming Languages

We revisit parallel-innermost term rewriting as a model of parallel computation on inductive data structures and provide a corresponding notion of runtime complexity parametric in the size of the start term. We propose automatic techniques to derive both upper and lower bounds on parallel complexity of rewriting that enable a direct reuse of existing techniques for sequential complexity. The applicability and the precision of the method are demonstrated by the relatively ligh...

Find SimilarView on arXiv

Complexity Analysis for Call-by-Value Higher-Order Rewriting

July 25, 2023

83% Match
Cynthia Kop, Deivid Vale
Logic in Computer Science

In this short paper, we consider a form of higher-order rewriting with a call-by-value evaluation strategy so as to model call-by-value programs. We briefly present a cost-size semantics to call-by-value rewriting: a class of algebraic interpretations that map terms to tuples that bound both the reductions' cost and the size of normal forms.

Find SimilarView on arXiv

Nagoya Termination Tool

April 26, 2014

83% Match
Akihisa Yamada, Keiichirou Kusakari, Toshiki Sakabe
Logic in Computer Science

This paper describes the implementation and techniques of the Nagoya Termination Tool, a termination prover for term rewrite systems. The main features of the tool are: the first implementation of the weighted path order which subsumes most of the existing reduction pairs, and the efficiency due to the strong cooperation with external SMT solvers. We present some new ideas that contribute to the efficiency and power of the tool.

Find SimilarView on arXiv

Analyzing Innermost Runtime Complexity Through Tuple Interpretations

March 23, 2023

83% Match
Liye Radboud University Guo, Deivid Radboud University Vale
Logic in Computer Science
Computational Complexity

Time complexity in rewriting is naturally understood as the number of steps needed to reduce terms to normal forms. Establishing complexity bounds to this measure is a well-known problem in the rewriting community. A vast majority of techniques to find such bounds consist of modifying termination proofs in order to recover complexity information. This has been done for instance with semantic interpretations, recursive path orders, and dependency pairs. In this paper, we follo...

Find SimilarView on arXiv

Faithful (meta-)encodings of programmable strategies into term rewriting systems

May 24, 2017

83% Match
Horatiu Cirstea, Serguei Lenglet, Pierre-Etienne Moreau
Programming Languages

Rewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and rewriting strategies are used to con- trol their application. The operational semantics of these strategies are generally accepted and approaches for analyzing the termination of specific strategies have been studied. We propose in this paper a generic encoding of cl...

Find SimilarView on arXiv

A Formalized Extension of the Substitution Lemma in Coq

September 25, 2023

83% Match
Maria J. D. UnB Lima, Moura Flávio L. C. UnB de
Logic in Computer Science

The substitution lemma is a renowned theorem within the realm of lambda-calculus theory and concerns the interactional behaviour of the metasubstitution operation. In this work, we augment the lambda-calculus's grammar with an uninterpreted explicit substitution operator, which allows the use of our framework for different calculi with explicit substitutions. Our primary contribution lies in verifying that, despite these modifications, the substitution lemma continues to rema...

Find SimilarView on arXiv

Proceedings 6th International Workshop on Computing with Terms and Graphs

February 11, 2011

83% Match
Rachid Echahed
Logic in Computer Science
Programming Languages
Software Engineering

This volume contains the proceedings of the Sixth International Workshop on Computing with Terms and Graphs (TERMGRAPH 2011). The workshop took place in Saarbruecken, Germany, on April 2nd, 2011, as part of the fourteenth edition of the European Joint Conferences on Theory and Practice of Software (ETAPS 2011). Research in term and graph rewriting ranges from theoretical questions to practical issues. Computing with graphs handles the sharing of common subexpressions in a nat...

Find SimilarView on arXiv